FtpGetFileW

FTP サーバーからファイルを取得し、指定したファイル名で保存する。その過程で新しいローカルファイルを作成する。(Unicode)

FtpGetFileW hConnect, lpszRemoteFile, lpszNewFile, fFailIfExists, dwFlagsAndAttributes, dwFlags, dwContext

hConnect : [intptr] FTP セッションへのハンドル。
lpszRemoteFile : [wstr] 取得するファイルの名前を格納した null 終端文字列へのポインタ。
lpszNewFile : [wstr] ローカルシステム上に作成するファイルの名前を格納した null 終端文字列へのポインタ。
fFailIfExists : [int] 指定された名前のローカルファイルが既に存在する場合に関数を続行するかどうかを示す。fFailIfExists が TRUE でローカルファイルが存在する場合、FtpGetFile は失敗する。
dwFlagsAndAttributes : [int] 新しいファイルのファイル属性。本パラメータには CreateFile 関数で使用される FILE_ATTRIBUTE_* フラグの任意の組み合わせを指定できる。
dwFlags : [int] 関数がファイルダウンロードをどう処理するかを制御する。最初のフラグ値の組は、転送が発生する条件を示す。これらの転送種別フラグは、キャッシュを制御する 2 番目のフラグ組と組み合わせて使用できる。
dwContext : [int] 本検索を任意のアプリケーションデータと関連付けるアプリケーション定義の値を格納した変数へのポインタ。本パラメータは、アプリケーションが既に InternetSetStatusCallback を呼び出してステータスコールバック関数を設定している場合にのみ使用される。

(プラグイン / モジュール : wininet.dll)

解説

FTP サーバーからファイルを取得し、指定したファイル名で保存する。その過程で新しいローカルファイルを作成する。(Unicode)

[戻り値]
成功した場合は TRUE を、失敗した場合は FALSE を返す。具体的なエラーメッセージを取得するには GetLastError
を呼び出す。

[備考]
FtpGetFile は、FTP
サーバーからのファイル読み取りとローカルへの保存に伴うすべての管理処理を扱う高レベルなルーチンである。ファイルデータのみを取得する必要があるアプリケーション、またはファイル転送の細かな制御を必要とするアプリケーションは、FtpOpenFile
と InternetReadFile 関数を使用すべきである。dwFlags パラメータに FTP_TRANSFER_TYPE_ASCII
を指定すると、ファイルデータの変換により制御文字や書式文字がローカルの相当する文字に変換される。既定の転送はバイナリモードであり、ファイルはサーバー上に保存されたままの形式でダウンロードされる。lpszRemoteFile
と lpszNewFile の両方には、カレントディレクトリからの部分修飾または完全修飾のファイル名を指定できる。WinINet API
の他のすべての側面と同様に、本関数は DllMain
やグローバルオブジェクトのコンストラクタ・デストラクタの中から安全に呼び出すことはできない。注意: WinINet
はサーバー実装をサポートしていない。さらに、サービスから使用すべきでもない。サーバー実装やサービスでは Microsoft Windows
HTTP Services (WinHTTP) を使用すること。
> [!NOTE] > wininet.h ヘッダーは FtpGetFile をエイリアスとして定義しており、UNICODE
プリプロセッサ定数の定義に基づいて本関数の ANSI 版または Unicode
版を自動的に選択する。エンコーディング中立のエイリアスとエンコーディング中立でないコードを混在させると、コンパイルエラーや実行時エラーの原因となるミスマッチが発生する可能性がある。詳細は
[Conventions for Function
Prototypes](/windows/win32/intl/conventions-for-function-prototypes)
を参照のこと。

情報

プラグイン / モジュールwininet.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の wininet.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_wininet_gen2.hs