ResolveAssemblyReference 工作
更新: 2008 年 7 月
決定相依於指定之組件 (Assembly) 的所有組件。這包括第二和第 n 順位的相依性。
參數
下表列出 ResolveAssemblyReference 工作的參數及其概略說明。
參數 |
說明 |
---|---|
AllowedAssemblyExtensions |
選擇性 (Optional) String[] 參數。 在解析參考時所使用的組件副檔名。預設的副檔名是 .exe 和 .dll。 |
AllowedRelatedFileExtensions |
選擇性 (Optional) String[] 參數。 搜尋彼此相關的檔案時所使用的副檔名。預設的副檔名是 .pdb 和 .xml。 |
AppConfigFile |
選擇性 String 參數。 指定剖析及擷取 bindingRedirect 對應的來源 app.config 檔。如果指定這個參數,AutoUnify 參數就必須為 false。 |
Assemblies |
選擇性 ITaskItem[] 參數。 指定必須識別完整路徑和相依性的項目。這些項目可以具有諸如 "System" 的簡單名稱,或是類似 "System, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 的強式名稱 (Strong Name)。 傳遞至這個參數的項目可以選擇性地擁有下列項目中繼資料 (Metadata):
|
AssemblyFiles |
選擇性 ITaskItem[] 參數。 指定要尋找相依性的完整組件清單。 傳遞至這個參數的項目可以選擇性地擁有下列項目中繼資料 (Metadata):
|
AutoUnify |
選擇性 Boolean 參數。 如果為 true,則結果相依性圖形就會自動被視為有個 App.Config 檔已傳遞至 AppConfigFile 參數。這個虛擬 App.Config 檔的每個衝突組件集合都有 bindingRedirect 項目,因此會選擇最新版本的組件。如此,將不會出現有關衝突組件的警告,因為每個衝突都已經獲得解決。每個不同的重新對應都會產生高優先權註解,指出新舊版本,並說明由於 AutoUnify 之前為 true,因此已自動完成這項工作。 如果為 false,就不會自動重新對應組件版本。當組件的兩個版本同時存在,將會出現警告。相同組件的兩個不同版本間的每個不同衝突,都會產生高優先權註解。在這些註解全部顯示之後,將會出現單一警告,其中含有唯一的錯誤碼以及說明「在參考和相依組件的不同版本之間發現衝突」的文字。 預設值為 false。 |
CandidateAssemblyFiles |
選擇性 String[] 參數。 指定搜尋和解析處理程序所要使用的組件清單。傳遞至這個參數的值必須是絕對檔名或是與專案相關的檔名。 當 SearchPaths 參數包含 {CandidateAssemblyFiles} 做為要考量的其中一個路徑時,就會考慮這個清單中的組件。 |
CopyLocalFiles |
選擇性的 ITaskItem[] 唯讀輸出參數。 傳回 ResolvedFiles、ResolvedDependencyFiles、RelatedFiles、SatelliteFiles 和 ScatterFiles 參數中的每個檔案,這些檔案具有值為 true 的 CopyLocal 項目中繼資料。 |
FilesWritten |
選擇性的 ITaskItem[] 輸出參數。 包含寫入磁碟的項目。 |
FindDependencies |
選擇性 Boolean 參數。 如果為 true,則會找到相依性。否則,只會找到主要參考。預設值為 true。 |
FindRelatedFiles |
選擇性 Boolean 參數。 如果為 true,將會找到 .pdb 檔和 .xml 檔之類的相關檔案。預設值為 true。 |
FindSatellites |
選擇性 Boolean 參數。 如果為 true,將會找到附屬組件。預設值為 true.。 |
FindSerializationAssemblies |
選擇性 Boolean 參數。 若為 true,此工作便會搜尋序列化 (Serialization) 組件。預設值是 true。 |
FullTargetFrameworkSubsetNames |
選擇性 (Optional) String[] 參數。 包含目標架構子集名稱的清單。如果清單中的子集名稱符合 TargetFrameworkSubset 名稱屬性中的其中一個名稱,則系統會在建置 (Build) 階段中排除該特定目標架構。 |
IgnoreDefaultInstalledAssemblyTables |
選擇性 Boolean 參數。 若為 true,此工作便會搜尋並使用位於 TargetFrameworkDirectories 底下之 \RedistList 目錄中額外安裝的組件資料表 (或「可轉散發清單」)。預設值為 false.。 |
IgnoreDefaultInstalledAssemblySubsetTables |
選擇性 Boolean 參數。 若為 true,則此工作會搜尋及使用位於 TargetFrameworkDirectories 底下之 \SubsetList 目錄中額外安裝的組件子集資料表 (或「子集清單」)。預設值為 false.。 |
InstalledAssemblySubsetTables |
選擇性 ITaskItem[] 參數。 包含指定應該在目標子集中之組件的 XML 檔案清單。 這份清單中的項目也可以選擇指定 "FrameworkDirectory" 中繼資料,以便讓 InstalledAssemblySubsetTable 與特定架構目錄產生關聯。 如果只有一個 TargetFrameworkDirectories 項目,則會將這份清單中缺少 "FrameworkDirectory" 中繼資料的任何項目,視為已設定為傳遞至 TargetFrameworkDirectories 的唯一值。 |
InstalledAssemblyTables |
選擇性 String 參數。 包含指定應該安裝在目標電腦上之組件的 XML 檔案清單。 設定 InstalledAssemblyTables 時,清單中組件的舊版本都會合併到 XML 中列出的新版本。此外,設定為 InGAC='true' 的組件都會被視為必要條件,而且除非明確覆寫,否則便會設定為 CopyLocal='false'。 這份清單中的項目也可以選擇指定 "FrameworkDirectory" 中繼資料,以便讓 InstalledAssemblyTable 與特定架構目錄產生關聯。不過,除非 Redist 名稱開頭如下,否則便會忽略這項設定: "Microsoft-Windows-CLRCoreComp"。 如果只有一個 TargetFrameworkDirectories 項目,則會將這份清單中缺少 "FrameworkDirectory" 中繼資料的任何項目,視為已設定為傳遞 至 TargetFrameworkDirectories 的唯一值。 |
RelatedFiles |
選擇性的 ITaskItem[] 唯讀輸出參數。 包含 XML 和 .pdb 檔之類的相關檔案,這些檔案具有與參考相同的主檔名 (Base Name)。 這個參數中列出的檔案可選擇性包含下列項目中繼資料:
|
ResolvedDependencyFiles |
選擇性的 ITaskItem[] 唯讀輸出參數。 包含第 n 個序位的相依性路徑。這個參數並未包含第一個序位的主要參考,因為主要參考是包含在 ResolvedFiles 參數中。 這個參數中的項目可選擇性包含下列項目中繼資料:
|
ResolvedFiles |
選擇性的 ITaskItem[] 唯讀輸出參數。 包含所有解析為完整路徑的主要參考清單。 這個參數中的項目可選擇性包含下列項目中繼資料:
|
SatelliteFiles |
選擇性的 ITaskItem[] 唯讀輸出參數。 指定找到的任何附屬檔案。如果讓此項目可以存在的參考或相依性為 CopyLocal=true,這些檔案會是 CopyLocal=true。 這個參數中的項目可選擇性包含下列項目中繼資料:
|
ScatterFiles |
選擇性的 ITaskItem[] 唯讀輸出參數。 包含與其中一個指定之組件相關的散佈圖檔。 這個參數中的項目可選擇性包含下列項目中繼資料:
|
SearchPaths |
必要的 String[] 參數。 指定要搜尋的目錄或特殊位置,以找出磁碟上代表組件的檔案。搜尋路徑的列示順序很重要。對每個組件而言,會從左至右搜尋路徑的清單。找到代表組件的檔案時,該搜尋便會停止,然後會開始搜尋下一個組件。 這個參數接受下列類型的值:
|
Silent |
選擇性 Boolean 參數。 如果為 true,則不會記錄任何訊息。預設值為 false。 |
StateFile |
選擇性 String 參數。 指定檔名,表示要在該檔案中儲存這項工作的中繼建置狀態。 |
SuggestedRedirects |
選擇性的 ITaskItem[] 唯讀輸出參數。 無論 AutoUnify 參數的值為何,都會包含每個不同衝突組件識別 (Identity) 的一個項目。其中包含每個文化特性 (Culture) 和找到的 PKT,該 PKT 在應用程式組態檔中並未具有適當的 bindingRedirect 項目。 每個項目都可選擇包含下列資訊:
|
TargetFrameworkDirectories |
選擇性 (Optional) String[] 參數。 指定目標架構目錄的路徑。這是用來判斷產生之項目的 CopyLocal 狀態所需的參數。 如果未指定這個參數,則產生的項目不會具有 true 的 CopyLocal 值,除非這些項目在其來源項目上明確具有 true 的 Private 中繼資料值。 |
TargetFrameworkSubsets |
選擇性 (Optional) String[] 參數。 包含要在目標架構目錄中搜尋之目標架構子集名稱的清單。 |
TargetFrameworkVersion |
選擇性 String 參數。 專案目標架構的版本。預設值為空白,表示不根據目標架構來篩選參考。 |
TargetProcessorArchitecture |
選擇性 String 參數。 慣用的目標處理器架構。用於解析全域組件快取 (GAC) 參考。 這個參數可以具有 x86、IA64 或 AMD64 的值。 如果沒有這個參數,此工作會先考慮使用符合目前正在執行之處理序架構的組件。如果找不到組件,工作會考慮使用 GAC 中具有 MSIL 的 ProcessorArchitecture 值或不具有 ProcessorArchitecture 值的組件。 |
請參閱
概念
其他資源
變更記錄
日期 |
記錄 |
原因 |
---|---|---|
2008 年 7 月 |
加入下列參數:
|
SP1 功能變更。 |