Einzelnen Beitrag anzeigen

AliDi

Registriert seit: 3. Jul 2005
Ort: Köln
23 Beiträge
 
Delphi 2007 Professional
 
#7

Re: C/C++ Quellcode nach Delphi

  Alt 31. Okt 2007, 20:40
Zitat von Apollonius:

Ich glaube, da verwechselst du was, Sir T. Meiner Meinung nach wäre das in C
Code:
*pdwProxyRequests+ = LINEPROXYREQUEST_SETAGENTGROUP;
Die Variante mit dem doppelten Plus würde ich folgendermaßen übersetzen:
Delphi-Quellcode:
pdwProxyRequests^ = LINEPROXYREQUEST_SETAGENTGROUP;
inc(pdwProxyRequests);
Denn: Ein einfaches pdwProxyRequests++ hieße inc(pdwProxyRequests). Eine Zuweisung, auch eine solche einfache, gibt in C etwas zurück, in diesem Fall, da das ++ nachgestellt wird, den ursprünglichen Wert. Dieser wird dereferenziert und ihm etwas zugewiesen. Ich halte dies auch für logisch: Der Zeiger pdwProxyRequests wird hinter die Struktur gesetzt und dorthin dann DWords gesetzt, wie es auch der Kommentar sagt.
Das war der entscheidende Hinweis

so funktionierts jetzt:
Delphi-Quellcode:
 pdwProxyRequests:= PDWORD(Cardinal(pLCP) + sizeof(TLINECALLPARAMS));

 pdwProxyRequests^ := LINEPROXYREQUEST_SETAGENTGROUP;
 inc(pdwProxyRequests);

 pdwProxyRequests^ := LINEPROXYREQUEST_SETAGENTSTATE;
 inc(pdwProxyRequests);

 pdwProxyRequests^ := LINEPROXYREQUEST_SETAGENTACTIVITY;
 inc(pdwProxyRequests);

 pdwProxyRequests^ := LINEPROXYREQUEST_GETAGENTSTATUS;
 inc(pdwProxyRequests);

 pdwProxyRequests^ := LINEPROXYREQUEST_GETAGENTCAPS;
 inc(pdwProxyRequests);

 pdwProxyRequests^ := LINEPROXYREQUEST_GETAGENTACTIVITYLIST;
 inc(pdwProxyRequests);

 pdwProxyRequests^ := LINEPROXYREQUEST_GETAGENTGROUPLIST;

Vielen Dank für die schnelle Hilfe.

Gruß
Alidi
  Mit Zitat antworten Zitat