共用方式為


FtpPutFileA 函式 (wininet.h)

將檔案儲存在 FTP 伺服器上。

語法

BOOL FtpPutFileA(
  [in] HINTERNET hConnect,
  [in] LPCSTR    lpszLocalFile,
  [in] LPCSTR    lpszNewRemoteFile,
  [in] DWORD     dwFlags,
  [in] DWORD_PTR dwContext
);

參數

[in] hConnect

FTP 會話的句柄。

[in] lpszLocalFile

Null 終止字串的指標,其中包含要從本機系統傳送的檔名。

[in] lpszNewRemoteFile

Null 終止字串的指標,其中包含遠端系統上要建立之檔名的字串。

[in] dwFlags

發生傳輸的條件。 應用程式應該選取一種傳輸類型,以及控制如何控制檔案快取的任何旗標。

傳輸類型可以是下列任何一個值。

價值 意義
FTP_TRANSFER_TYPE_ASCII
使用 FTP 的 ASCII (類型 A) 傳輸方法來傳輸檔案。 控件和格式化資訊會轉換成本機對等專案。
FTP_TRANSFER_TYPE_BINARY
使用 FTP 的影像 (類型 I) 傳輸方法傳輸檔案。 檔案的傳輸方式與不存在完全一樣,且沒有任何變更。 這是預設傳輸方法。
FTP_TRANSFER_TYPE_UNKNOWN
默認為 FTP_TRANSFER_TYPE_BINARY。
INTERNET_FLAG_TRANSFER_ASCII
將檔案傳輸為 ASCII。
INTERNET_FLAG_TRANSFER_BINARY
將檔案傳輸為二進位檔。
 

下列值可用來控制檔案的快取。 應用程式可以使用下列一或多個值。

價值 意義
INTERNET_FLAG_HYPERLINK
判斷是否要從網路重載專案時,如果沒有任何 Expires 時間和從伺服器傳回的 LastModified 時間,則強制重載。
INTERNET_FLAG_NEED_FILE
如果無法快取檔案,就會建立暫存盤。
INTERNET_FLAG_RELOAD
強制從源伺服器下載要求的檔案、對象或目錄清單,而不是從快取下載。
INTERNET_FLAG_RESYNCHRONIZE
如果資源自上次下載後已修改,就會重載 HTTP 資源。 所有 FTP 資源都會重載。

Windows XP 和 Windows Server 2003 R2 和更早版本:也會重載 Gopher 資源。

[in] dwContext

變數的指標,其中包含與任何應用程式數據建立關聯之應用程式定義的值。 只有當應用程式已經呼叫 InternetSetStatusCallback 來設定狀態回呼時,才會使用此參數。

傳回值

如果成功,則傳回 true true,否則會 傳回 false。 若要取得特定錯誤訊息,請呼叫 GetLastError

言論

FtpPutFile 是一種高階例程,可處理與本機讀取檔案相關的所有簿記和額外負荷,並將其儲存在 FTP 伺服器上。 需要只傳送檔案數據或需要關閉控制檔案傳輸的應用程式,應該使用ftpOpenFile ,以及 InternetWriteFile 函式。

如果 dwFlags 參數指定 FILE_TRANSFER_TYPE_ASCII,則檔案數據的翻譯會將控件和格式化字元轉換成本機對等專案。

lpszNewRemoteFilelpszLocalFile 可以是相對於目前目錄的部分或完整檔名。

如同 WinINet API 的其他所有層面,無法從 DllMain 或全域物件的建構函式和解構函式安全地呼叫此函式。

注意 WinINet 不支援伺服器實作。 此外,不應該從服務使用。 針對伺服器實作或服務,請使用 Microsoft Windows HTTP 服務 (WinHTTP)
 

注意

wininet.h 標頭會根據 UNICODE 預處理器常數的定義,將 FtpPutFile 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 wininet.h
連結庫 Wininet.lib
DLL Wininet.dll

另請參閱

FTP 會話

WinINet 函式