Share via


BG_FILE_INFO 結構 (bits.h)

提供要傳輸之檔案的本機和遠端名稱。

語法

typedef struct _BG_FILE_INFO {
  LPWSTR RemoteName;
  LPWSTR LocalName;
} BG_FILE_INFO;

成員

RemoteName

Null 終止的字串,其中包含伺服器上檔名 (例如,http://< server>/<path>/file.ext) 。 名稱的格式必須符合您使用的傳輸通訊協定。 您無法在路徑或檔案名中使用通配符。 URL 必須只包含合法的 URL 字元;不會執行逸出處理。 URL 限制為 2,200 個字元,不包括 Null 終止符。

URL 的每個區段限制為MAX_PATH字元。

您可以使用SMB來表示要下載或上傳之檔案的遠端名稱;上傳-回復作業沒有SMB支援。 您可以將遠端名稱指定為 UNC 路徑、具有網路驅動器的完整路徑,或使用 「file://」 前置詞。 BITS 1.5 和更早版本: 不支援 RemoteName 的 SMB 通訊協定。

LocalName

Null 終止的字串,其中包含用戶端上的檔名。 檔名必須包含完整路徑 (,例如 d:\myapp\updates\file.ext) 。 您無法在路徑或檔名中使用通配符,而且路徑中的目錄必須存在。 路徑僅限於MAX_PATH,不包括 Null 終止符。

用戶必須具有寫入本機目錄的許可權,才能下載和上傳-回復作業的回復部分。 BITS 不支援NTFS資料流。 例如,\server\share\path\file\file) ,而不是使用會話 (特定的網络驅動器機。 不包含 \? 路徑中的前置詞。

備註

BITS 支援 RemoteName 的 HTTP、HTTPS 和 SMB 通訊協定。 如需 HTTP 需求,請參閱 BITS 下載的 HTTP 需求

BITS 1.5 和更早版本: 不支援 RemoteName 的 SMB 通訊協定。

下列會識別 BITS 是否會傳播檔案的時間戳:

  • 針對 HTTP 下載,BITS 會傳播檔案的修改時間戳,並將檔案的建立時間設定為修改時間。
  • 針對 HTTP 上傳,BITS 不會傳播檔案的時間戳。
  • 針對SMB下載和上傳,BITS 會傳播檔案的時間戳。
BITS 不支援命名管道或裝置的SMB路徑。 若要維護使用 SMB 下載之檔案的擁有者和 ACL 資訊,請呼叫 IBackgroundCopyJob3::SetFileACLFlags 方法。

如果 HTTP 上傳和上傳-回復作業 URL 的路徑和檔名部分包含客戶端和伺服器上的代碼頁通用的 Unicode 字元,則 URL 轉譯會在伺服器上失敗,而且 BITS 作業會處於錯誤狀態。 如果 URL 的伺服器部分包含 Unicode 字元,您必須使用 國際化功能變數名稱 來編碼伺服器部分, (IDN) 。

BITS 不會限制您可以使用 HTTP 下載的檔案大小。 如需上傳限制,請參閱 BITSMaximumUploadSize IIS 擴充功能屬性。

IIS 5.0: 下載限制為 4 GB。

BITS 1.2 和更早版本: 針對 HTTP 下載,您可以傳輸的檔案大小上限為 4 GB;BITS 無法保證成功傳輸超過 4 GB 的檔案。 如果 URL 包含不在 US-ASCII 字元集中的 Unicode 字元,請在將 Unicode 字串當做遠端檔名傳遞至 BITS 之前,先在 UTF-8 中編碼 Unicode 字符串。 如果您未編碼字串,HTTP 伺服器可能會收到不正確的 URL,而作業可能會進入錯誤狀態。

規格需求

需求
最低支援的用戶端 Windows XP
最低支援的伺服器 Windows Server 2003
標頭 bits.h

另請參閱

IBackgroundCopyFile2::SetRemoteName

IBackgroundCopyFile::GetLocalName

IBackgroundCopyFile::GetRemoteName

IBackgroundCopyJob3::ReplaceRemotePrefix

IBackgroundCopyJob::AddFileSet