Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Unknown Directive Message (https://www.delphipraxis.net/148403-unknown-directive-message.html)

sirius 2. Mär 2010 10:36

Re: Unknown Directive Message
 
Ähm, und warum sind die ClassNAmes bei registerClass und CreateWindow unterschiedlich? Das geht so natürlich nicht. Du willst/musst doch ein Fenster aus Basis einer registrierten Fensterklasse erstellen.

jokerfacehro 2. Mär 2010 11:26

Re: Unknown Directive Message
 
ich hab jetz en problem mitm speicher beim empfangen der daten


Delphi-Quellcode:
function WndProc(hWnd: HWND; Msg: UINT; wp: WPARAM;
lp: LPARAM): integer; stdcall;
var str,str1:string;
begin
   Result := 0;
  case lp of

    FD_READ:
      begin
      str:='';
      setLength(str,1024);
      //FillChar(str,Length(str),#0);
        recv(FSocket,str[1],1024,0);
        Showmessage(str); //in str steht der empfangene text und ein teil vom showmessage vom syserrormessage
        PostQuitmessage(Msg);
        //-- WMOnAsyncServerData(wp, lp);
      end;
    WM_MY_SOCKET_ERROR:
      begin
        //-- WMOnAsyncServerError(wp, lp);
      end;
    WM_MY_SOCKET_LOGON:
      begin
        //-- WMOnAsyncServerLogon(wp, lp);
      end;
    WM_MY_SOCKET_CLIENT_DISCONNECT:
      begin
        //-- WMOnAsyncServerDisconnect(wp, lp);
      end;
    WM_CLOSE:
      begin
        DestroyWindow(winhwnd);
      end;
    WM_DESTROY:
      begin
      end;
    else
      Result := DefWindowProc(hwnd, Msg, wp, lp);
      end;
end;

anscheinend überschreibt der einfach den speicher.
bei str

wenn z.B. "Vorgang erfolgreich beendet" im syserrormessage stand,
steht beim empfangen der daten in der variable str --> datenng erfolgreich abgeschlossen

sirius 2. Mär 2010 11:50

Re: Unknown Directive Message
 
recv liefert als Rückgabewerte, die Länge des übertragenen Strings. Merk die diese und setze damit die Länge:
Delphi-Quellcode:
str:=''; //brauchst du nicht
setLength(str,1024);
len:=recv(FSocket,str[1],1024,0);
setlength(str,len);
Showmessage(str); //in str steht der empfangene text und ein teil vom showmessage vom syserrormessage


Edit: Hat aber nix mehr mit dem ursprünglichen Thema zu tun.

jokerfacehro 2. Mär 2010 11:55

Re: Unknown Directive Message
 
ok danke dir.

jop bei weiteren fragen mach ich neuen thread auf

danke dir sirius hast mir echt geholfen ^^


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:55 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz