PDA

Ver la Versión Completa : Funcion FtpCommand de WinInet


seoane
10-06-2007, 02:41:23
Delphi define en la unit Wininet.pas la función FtpCommand así:

function FtpCommand(hConnect: HINTERNET; fExpectResponse: BOOL;
dwFlags: DWORD; lpszCommand: PChar; dwContext: DWORD): BOOL; stdcall;

Mientras que microsoft (http://msdn2.microsoft.com/en-US/library/aa384133.aspx) lo define así:

BOOL FtpCommand(
HINTERNET hConnect,
BOOL fExpectResponse,
DWORD dwFlags,
LPCTSTR lpszCommand,
DWORD_PTR dwContext,
HINTERNET* phFtpCommand
);


Y esta "pequeña" diferencia en los parámetros me ha vuelto loco durante la ultima hora, al provocar fallos en el acceso a la memoria que terminaban por tumbar mi aplicación, pero lo mas gracioso es que el fallo no lo provocaba en el momento de ejecutarla, sino que el daño quedaba ahí, haciendo fallar el programa en otro punto diferente. :mad: Casi me vuelvo loco.

En fin, por si alguien tenia pensado usar la función, le aconsejo que utilice esta otra, antes de volverse loco:

function FtpCommand2(hConnect: HINTERNET; fExpectResponse: BOOL; dwFlags: DWORD;
lpszCommand: PChar; dwContext: DWORD; var phFtpCommand: HINTERNET): BOOL;
stdcall; external 'Wininet.dll' name 'FtpCommandA';

fide
10-06-2007, 04:26:12
Tu siempre tan atento seoane !.