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