這會讓工作多一個檔案。
語法
HRESULT AddFile(
[in] LPCWSTR RemoteUrl,
[in] LPCWSTR LocalName
);
參數
[in] RemoteUrl
包含伺服器檔案名稱的空終止字串。 關於指定遠端名稱的資訊,請參閱 BG_FILE_INFO 結構中的 RemoteName 成員與備註區。
[in] LocalName
包含用戶端檔案名稱的空終止字串。 關於指定本地名稱的資訊,請參閱 BG_FILE_INFO 結構中的 LocalName 成員與備註部分。
返回值
此方法回傳以下 HRESULT 值及其他值。
| 回傳碼 | Description |
|---|---|
|
檔案成功加入了工作。 |
|
上傳工作只能包含一個檔案;你不能再新增一個檔案到工作中。 |
|
MaxFilesPerJob 群組政策設定決定工作可包含多少檔案。 將檔案加入工作會超過MaxFilesPerJob的限制。 |
|
您可能因以下原因之一而收到此錯誤:
|
|
使用者沒有權限在用戶端寫入指定的目錄。 |
備註
要同時向一個工作新增多個檔案,請呼叫 IBackgroundCopyJob::AddFileSet 方法。 在新增多個檔案到同一工作時,呼叫 AddFileSet 方法比在迴圈中呼叫 AddFile 方法更有效率。 更多資訊請參閱 「新增檔案到工作」。
若要將檔案加入 BITS 從檔案下載資料範圍的工作中,請呼叫 IBackgroundCopyJob3::AddFileWithRanges 方法。
上傳作業只能包含一個檔案。 如果你新增第二個檔案,方法會回傳BG_E_TOO_MANY_FILES。
對於下載,BITS 保證所傳輸的檔案版本(基於檔案大小與日期,而非內容)是一致的;然而,這並不保證一組檔案會一致。 例如,若 BITS 正在伺服器更新檔案時,正在下載作業中的第二個檔案,BITS 會重新啟動第二個檔案的下載;但第一個檔案不會重新下載。
請注意,如果你擁有從伺服器下載的檔案,應該為每個新版本的檔案建立一個新的網址。 如果你使用相同的 URL 來管理新版本的檔案,有些代理伺服器可能會從快取中提供過時的資料,因為他們不會向原始伺服器驗證檔案是否過時。
對於上傳,若本地檔案在傳輸過程中發生變更,BITS 會產生錯誤。 錯誤代碼BG_E_FILE_CHANGED,上下文BG_ERROR_CONTEXT_LOCAL_FILE。
BITS 會依序在工作中傳輸檔案。 若傳輸檔案時發生錯誤,工作會進入錯誤狀態,且在錯誤解決前不會再處理該工作中的檔案。
預設情況下,使用者最多可將 200 個檔案加入一個工作。 此限制不適用於管理員或服務帳號。 要更改預設值,請設定 MaxFilesPerJob 群組政策。
Windows Vista 之前: 使用者可新增的檔案數量沒有限制。
關於擴展性的問題,請參閱 使用 BITS 的最佳實務。
範例
若有新增單一檔案到工作範例,請參見 「向工作新增檔案」。
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | 視窗XP |
| 支援的最低伺服器 | Windows Server 2003 |
| 目標平臺 | 窗戶 |
| Header | Bits.h |
| Library | Bits.lib |
| DLL | QmgrPrxy.dll |
另請參閱
IBackgroundCopyJob3::AddFileWithRanges