Einzelnen Beitrag anzeigen

Gerd01

Registriert seit: 18. Mär 2005
Ort: NRW
117 Beiträge
 
Delphi XE2 Professional
 
#1

Übernahme mit GlobalGetAtomName

  Alt 30. Jun 2007, 12:30
Wenn mein Programm mit einem bestimmten Parameter gestartet wird übernehme ich die Informationen mit einem Atom zum Beispiel so:

Delphi-Quellcode:
procedure TForm.WMMailtoMessage(var Msg: TMessage);
var
  cBuf: array [0..1000] of char;
begin
  {receiving a message}
  FillChar(cBuf,1000,#0);
  GlobalGetAtomName(Msg.lParam, cBuf, 1000); {get string from atom}
  GlobalDeleteAtom(Msg.lParam); {delete the atom}
  SendMailToExecute(StrPas(cBuf));
  inherited;
end;

Wenn allerdings in dem Msg.lParam ein Leerezeichen vorhanden ist wird nur das in dem TMessage übergeben was vor dem Leerzeichen vorhanden ist. Alles dahinter wird abgeschnitten. Ich habe keinen Einfluß darauf ob ein Leerezeichen übergeben wird oder nicht. Sonst wäre es ja einfach man würde es vor der Übergabe kodieren. Was kann man tun. Gibt es eine andere Möglichkeit?

Für eure Tipps wäre ich dankbar.

Gruß Gerd

[edit=Christian Seehase]Delphi-Tags gesetzt. Bitte künftig selber machen. Danke. Mfg, Christian Seehase[/edit]
  Mit Zitat antworten Zitat