0

Delphi で ftp を使用してファイルを転送しています。

ftp アカウントに正常に接続できますが、ファイルをアップロードしようとすると、FtpOpenFile 関数は、アップロードするファイルのハンドルではなく nil を返します。

hintfile := FtpOpenFile(hintconnect,PChar(tgtfn),GENERIC_WRITE,FTP_TRANSFER_TYPE_BINARY,0);

ftp クライアント アプリケーションとまったく同じ資格情報を使用して ftp サイトにログインすると、問題なくファイルをアップロードできます。

任意の提案をいただければ幸いです。

4

2 に答える 2

1

最後のエラーを取得してみてください。ドキュメントにすべて記載されています。

「成功した場合はハンドルを返し、それ以外の場合は NULL を返します。特定のエラー メッセージを取得するには、GetLastError を呼び出します。」

http://msdn.microsoft.com/en-us/library/aa384166(VS.85).aspx

于 2010-01-17T21:05:56.157 に答える
0

Internetopen 呼び出しに INTERNET_FLAG_PASSIVE を追加してみてください。

http://etutorials.org/Programming/Pocket+pc+network+programming/Chapter+2.+WinInet/File+Transfer+Protocol+FTP/

于 2010-01-18T11:34:23.663 に答える