共用方式為


CFtpConnection::GetFile

呼叫此成員函式從 FTP 伺服器取得檔案並將它儲存在本機電腦上。

BOOL GetFile(
   LPCTSTR pstrRemoteFile,
   LPCTSTR pstrLocalFile,
   BOOL bFailIfExists = TRUE,
   DWORD dwAttributes = FILE_ATTRIBUTE_NORMAL,
   DWORD dwFlags = FTP_TRANSFER_TYPE_BINARY,
   DWORD_PTR dwContext = 1 
);

參數

  • pstrRemoteFile
    對包含檔案名稱的 NULL 結尾字串的指標從 FTP 伺服器擷取。

  • pstrLocalFile
    對包含檔案名稱的 NULL 結尾字串的指標會在本機系統上。

  • bFailIfExists
    表示檔案名稱是否可能由現有檔案已經使用。 如果本機檔案名稱已經存在,因此,這個參數是 GetFile 失敗。 否則, GetFile 會清除現有的檔案複本。

  • dwAttributes
    表示檔案的屬性。 這可以是下列 FILE_ATTRIBUTE_*旗標的組合。

    • FILE_ATTRIBUTE_ARCHIVE 檔案是儲存檔案。 應用程式會使用這個屬性,標記要備份或移除的檔案。

    • FILE_ATTRIBUTE_COMPRESSED 檔案或目錄路徑和名稱。 對於檔案,壓縮表示所有檔案中的資料壓縮。 對於目錄而言,壓縮為新建立的檔案和子目錄的預設值。

    • FILE_ATTRIBUTE_DIRECTORY 檔案是目錄。

    • FILE_ATTRIBUTE_NORMAL 檔案未設定的其他屬性。 此屬性只有在單獨使用時有效。 其他文件屬性覆寫 FILE_ATTRIBUTE_NORMAL:

    • FILE_ATTRIBUTE_HIDDEN 檔案是隱藏的。 它不會包含在通用的目錄清單。

    • FILE_ATTRIBUTE_READONLY 檔案是唯讀的。 應用程式讀取檔案,但是無法寫入或刪除它。

    • 檔案是作業系統的一部分或由作業系統獨佔使用 FILE_ATTRIBUTE_SYSTEM。

    • FILE_ATTRIBUTE_TEMPORARY 檔案的暫時儲存體使用。 應用程式應該寫入至檔案,除非絕對必要。 大部分檔案的資料會保留在記憶體中,而不會清除至媒體,因為檔案很快就會被刪除。

  • dwFlags
    指定傳輸發生的條件。 這個參數可以是在 Windows SDK的 FtpGetFile 描述的任何 dwFlags 值。

  • dwContext
    資料擷取的內容識別項。 請參閱 備註 有關 dwContext。

傳回值

如果不是零,則成功,則為 0。 如果呼叫失敗, Win32 函式 GetLastError 可以呼叫以判斷錯誤的原因。

備註

GetFile 是要處理所有的負荷與讀取從 FTP 伺服器下載檔案並將它儲存位置的高階常式。 只擷取檔案資料,也需要存取檔案傳輸的關閉控制項的應用程式,應該使用 OpenFileCInternetFile::Read

如果是, dwFlags FILE_TRANSFER_TYPE_ASCII 檔案資料的轉譯也會呈現控制項和格式字元至視窗的對等用法。 預設傳輸是二進位模式,檔案格式下載與其儲存在伺服器上。

pstrRemoteFile 和 pstrLocalFile 可以是不完整的檔名相對於目前的目錄或已完成。 反斜線 (\) 或正斜線 (/) 可以用來做為目錄分隔符號的任何一個名稱。 在使用之前,GetFile 轉譯目錄名稱分隔符號的適當字元它們。

覆寫 dwContext 預設設定內容識別項加入至您所選取的值。 內容識別項相關聯的 CInternetSession 物件建立的 CFtpConnection 物件執行特定作業。 值會識別的作業會傳回至 CInternetSession::OnStatusCallback 提供狀態。 請參閱文件 網際網路第一個步驟:WinInet 有關內容識別項的詳細資訊。

需求

Header: afxinet.h

請參閱

參考

CFtpConnection 類別

階層架構圖

CInternetConnection 類別