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 伺服器下載檔案並將它儲存位置的高階常式。只擷取檔案資料,也需要存取檔案傳輸的關閉控制項的應用程式,應該使用 OpenFile 和 CInternetFile::Read 。
如果是, dwFlags FILE_TRANSFER_TYPE_ASCII 檔案資料的轉譯也會呈現控制項和格式字元至視窗的對等用法。預設傳輸是二進位模式,檔案格式下載與其儲存在伺服器上。
pstrRemoteFile 和 pstrLocalFile 可以是不完整的檔名相對於目前的目錄或已完成。反斜線 (\) 或正斜線 (/) 可以用來做為目錄分隔符號的任何一個名稱。在使用之前,GetFile 轉譯目錄名稱分隔符號的適當字元它們。
覆寫 dwContext 預設設定內容識別項加入至您所選取的值。內容識別項相關聯的 CInternetSession 物件建立的 CFtpConnection 物件執行特定作業。值會識別的作業會傳回至 CInternetSession::OnStatusCallback 提供狀態。請參閱文件 網際網路第一個步驟:WinInet 有關內容識別項的詳細資訊。
需求
Header: afxinet.h