共用方式為


FtpFindFirstFileW 函式 (wininet.h)

搜尋指定 FTP 工作階段的指定目錄。 檔案和目錄項目會傳回至 WIN32_FIND_DATA 結構中的應用程式。

語法

HINTERNET FtpFindFirstFileW(
  [in]  HINTERNET          hConnect,
  [in]  LPCWSTR            lpszSearchFile,
  [out] LPWIN32_FIND_DATAW lpFindFileData,
  [in]  DWORD              dwFlags,
  [in]  DWORD_PTR          dwContext
);

參數

[in] hConnect

InternetConnect傳回之 FTP 會話的句柄。

[in] lpszSearchFile

null終止字串的指標,指定 FTP 伺服器檔案系統的有效目錄路徑或檔名。 字串可以包含通配符,但不允許空格。 如果 lpszSearchFile 的值 NULL,或它是空字串,則函式會在伺服器上的目前目錄中尋找第一個檔案。

[out] lpFindFileData

WIN32_FIND_DATA 結構的指標,該結構會接收找到的檔案或目錄的相關信息。

[in] dwFlags

控制此函式的行為。 此參數可以是下列值的組合。

INTERNET_FLAG_HYPERLINK

INTERNET_FLAG_NEED_FILE

INTERNET_FLAG_NO_CACHE_WRITE

INTERNET_FLAG_RELOAD

INTERNET_FLAG_RESYNCHRONIZE

[in] dwContext

變數的指標,指定將這個搜尋與任何應用程式數據建立關聯的應用程式定義值。 只有當應用程式已經呼叫 InternetSetStatusCallback 來設定狀態回呼函式時,才會使用此參數。

傳回值

如果已成功啟動目錄列舉,或傳回 NULL,則傳回要求的有效句柄。 若要取得特定錯誤訊息,請呼叫 GetLastError。 如果 GetLastError 傳回ERROR_INTERNET_EXTENDED_ERROR,如同函式找不到相符檔案的情況,請呼叫 InternetGetLastResponseInfo 函式來擷取擴充的錯誤文字,如 處理錯誤中所述。

言論

對於 FtpFindFirstFileWIN32_FIND_DATA 結構中傳回的檔案時間位於當地時區,而不是以國際標準時間 (UTC) 格式傳回。

FtpFindFirstFile 類似於 findFirstFile 函式 。 不過請注意,在指定的 FTP 工作階段內,一次只能發生一個 FtpFindFirstFile。 因此,列舉會與 FTP 會話句柄相互關聯。 這是因為 FTP 通訊協定只允許每個工作階段的單一目錄列舉。

呼叫 ftpFindFirstFile ,直到呼叫 InternetCloseHandle之後,應用程式無法在指定的 FTP 會話句柄上再次呼叫 FtpFindFirstFile。 如果在該句柄上呼叫 FtpFindFirstFile,函式會失敗並 ERROR_FTP_TRANSFER_IN_PROGRESS。 呼叫端應用程式使用 HINTERNET 句柄之後,FtpFindFirstFile所傳回,必須使用 InternetCloseHandle 函式關閉。

使用 FtpFindFirstFile開始目錄列舉之後,可以使用 InternetFindNextFile 函式繼續列舉。

因為 FTP 通訊協議沒有提供列舉的標準方法,因此檔案的一些常見資訊,例如檔案建立日期和時間,不一定可用或正確。 發生這種情況時,FtpFindFirstFileInternetFindNextFile 根據可用資訊填入無法使用的資訊,並提供最佳猜測。 例如,建立和上次存取日期通常與檔案的修改日期相同。

應用程式無法在呼叫 ftpOpenFile 和 InternetCloseHandle之間呼叫 FtpFindFirstFile

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

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

注意

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

要求

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

另請參閱

FTP 會話

WinINet 函式