Autor Beitrag
pascal95y
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.10.11 15:31 
Hallo,

ich möchte gerne einen String zwischen zwei Freepascal-Programmen austauschen.

Dazu richte ich mich an diese Vorlage:
www.delphi-library.d...tauschen_7866,0.html

Leider erscheint die Fehlermeldung.
Zitat:
unit1.pas(20,46) Error: Identifier not found "TWMCopyData"
unit1.pas(28,1) Fatal: There were 1 errors compiling module, stopping

Das bezieht sich auf diese Stelle:
type
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
  { TForm1 }

  TForm1 = class(TForm)
    Image1: TImage;
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
  private
    procedure WMCopyData(var Msg: TWMCopyData); message WM_COPYDATA;  // genau hier !
  public
    { public declarations }
  end;


Es würde mich freuen, wenn mir jemand helfen könnte.

Vielen Dank !

Moderiert von user profile iconNarses: Highlight gegen Quote-Tags getauscht und diverse andere Quote-Tags gelöscht.
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: Mi 19.10.11 15:41 
Messages in uses mit aufnehmen ....
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
  TWMCopyData = packed record
    Msg: Cardinal;
    From: HWND;
    CopyDataStruct: PCopyDataStruct;
    Result: Longint;
  end;

  WM_COPYDATA         = $004A;


Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt

_________________
Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS
pascal95y
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.10.11 17:12 
Hallo, leider funktioniert es noch nicht.

Die vier Fehlermeldungen kommen alle in der Zeile:
"case Msg.CopyDataStruct.dwData of":
unit1.pas(53,27) Error: Illegal qualifier
unit1.pas(53,27) Hint: may be pointer dereference is missing
unit1.pas(53,27) Error: Ordinal expression expected
unit1.pas(53,27) Fatal: Syntax error, "OF" expected but "identifier DWDATA" found

Es scheint so, als ob er nur "Msg.CopyDataStruct" kennt, nicht aber "Msg.CopyDataStruct.dwData"; so interpretiere ich die Fehlermeldungen, da ja auch "OF" erwartet wird, was im case-Befehl kommt (vierte Meldung).
bummi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1248
Erhaltene Danke: 187

XP - Server 2008R2
D2 - Delphi XE
BeitragVerfasst: Mi 19.10.11 17:24 
ich kann zu Freepascal nichts sagen, vielleicht fehlt Dir sowas?

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
type
  { lParam of WM_COPYDATA message points to... }
  PCopyDataStruct = ^TCopyDataStruct;
  {$EXTERNALSYM tagCOPYDATASTRUCT}
  tagCOPYDATASTRUCT = packed record
    dwData: DWORD;
    cbData: DWORD;
    lpData: Pointer;
  end;
  TCopyDataStruct = tagCOPYDATASTRUCT;
  {$EXTERNALSYM COPYDATASTRUCT}
  COPYDATASTRUCT = tagCOPYDATASTRUCT;

_________________
Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS