共用方式為


指定組件的位置

備註

本文專屬於 .NET Framework。 它不適用於較新的 .NET 實作,包括 .NET 6 和更新版本。

有兩種方式可以指定元件的位置:

您也可以使用 .NET Framework 設定工具 (Mscorcfg.msc) 來指定元件位置,或指定 Common Language Runtime 探測元件的位置。

使用 <codeBase> 元素

你只能在機器設定檔或發佈者政策檔中使用該 <codeBase> 元素,這些檔同時會重新導向組合語言版本。 當執行階段判斷要使用的組件版本時,它會套用決定版本的檔案中的程式碼基底設定。 如果沒有指出任何程式碼庫,執行時會以正常方式探查組件。 如需詳細資訊,請參閱 執行階段如何定位元件

下列範例示範如何指定元件的位置。

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
         <assemblyIdentity name="myAssembly"
                           publicKeyToken="32ab4ba45e0a69a1"
                           culture="en-us" />
         <codeBase version="2.0.0.0"
                   href="http://www.litwareinc.com/myAssembly.dll"/>
       </dependentAssembly>
      </assemblyBinding>
   </runtime>
</configuration>

version此屬性對所有強命名的組件都是必要的,但對於沒有強命名的組件則應省略。 元素<codeBase>需要href屬性。 你無法在元素中 <codeBase> 指定版本範圍。

備註

如果您要為未強名稱的元件提供程式碼基底提示,提示必須指向應用程式基底或應用程式基底目錄的子目錄。

使用 <probing> 元素

執行階段會藉由探查來定位沒有代碼基底的元件。 如需探查的詳細資訊,請參閱 運行時間如何找出元件

您可以在應用程式設置檔案中使用<探查>元素來指定執行時間在定位組件時應搜尋的子目錄。 下列範例示範如何指定運行時間應該搜尋的目錄。

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <probing privatePath="bin;bin2\subbin;bin3"/>
      </assemblyBinding>
   </runtime>
</configuration>

屬性 privatePath 包含執行時應該搜尋組件的目錄。 如果應用程式位於 C:\Program Files\MyApp,運行時間會在 C:\Program Files\MyApp\Bin、C:\Program Files\MyApp\Bin2\Subbin 和 C:\Program Files\MyApp\Bin3 中尋找未指定程式碼基底的元件。 中 privatePath 指定的目錄必須是應用程式基底目錄的子目錄。

另請參閱