共用方式為


InstallFiles 動作

InstallFiles 巨集指令會將 File 資料表中指定的檔案從來源目錄複寫到目的地目錄。

順序限制

InstallFiles 動作必須位於 InstallValidate 動作之後,以及任何檔案相依動作之前。

ActionData 訊息

欄位 動作資料的描述
 [1] 已安裝檔案的識別碼。
[6] 已安裝檔案的大小,以位元組為單位。
[9] 保存已安裝檔案之目錄的識別碼。

 

備註

InstallFiles 巨集指令會在 File 資料表中指定的檔案上運作。 每個檔案都是根據 元件資料表中檔案相關聯元件的安裝狀態來安裝。 只有元件解析為 msiInstallStatelocal 狀態的檔案才符合複製資格。

InstallFiles 巨集指令會實作 File 資料表的下列資料行。

  • FileName 資料行會指定目的檔案名。
  • [版本] 資料行會指定檔案版本。
  • [屬性] 資料行會指定檔案和安裝屬性旗標位。
  • [檔案] 資料行會指定唯一的檔案權杖。
  • FileSize 資料行會以位元組為單位指定未壓縮的檔案大小。
  • [語言] 資料行會指定檔案語言識別項。
  • Sequence 資料行會指定媒體上的序號。

InstallFiles 巨集指令會實作 Component 資料表的下列資料行。

  • Directory_資料行會指定 Directory 資料表 專案的參考。
  • [元件] 資料行會指定元件專案的唯一名稱。

只有在下列其中一個為 true 時,才會複製指定的檔案:

  • 檔案目前未安裝在本機電腦上。
  • 檔案位於本機電腦上,但版本號碼低於 File 資料表中的檔案
  • 檔案位於本機電腦上,但沒有相關聯的版本號碼。

要複製之每個檔案的來原始目錄取決於 sourceMode,而來原始目錄會依 Media 資料表的封包資料行中的值而定。 如需來源模式的完整討論,請參閱 媒體資料表

如果要複製之檔案的來原始目錄位於卸載式媒體上,例如磁碟片或 CD-ROM,InstallFiles 動作會先確認已插入適當的來源媒體,然後再嘗試複製檔案。 InstallFiles 會搜尋相同抽取式類型的媒體,其中包含符合 Media 資料表之 VolumeLabel 資料行中指定值的 磁片 區標籤。 如果找到相符的掛接磁片區,檔案複製程式會繼續進行。 如果找不到相符專案,對話方塊會要求使用者插入適當的媒體。 在此情況下,對話方塊會使用 Media 資料表的 DiskPrompt 資料行中找到的媒體名稱做為提示的一部分。

請務必小心,因為 InstallFiles 動作可以刪除原始檔案,而不會加以取代。 當 InstallFiles 動作在取代較舊的檔案時遇到錯誤,而且使用者選擇忽略錯誤時,就會發生這種情況。 安裝程式的預設行為是先刪除舊檔案,再確保正確複製新檔案。

如需安裝程式所使用的檔案版本設定規則,請參閱 檔案版本設定規則