共用方式為


指定組件的位置

注意

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

可透過兩種方式來指定組件位置:

您也可利用 .NET Framework 組態工具 (Mscorcfg.msc) 來指定組件位置,或指定位置讓通用語言執行平台探查組件。

利用 <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> 元素

藉由探查,執行階段會找出不具程式碼基底的組件。 如需探查的詳細資訊,請參閱執行階段如何找出組件

您可利用應用程式組態檔的 <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 指定的目錄必須是應用程式基底目錄的子目錄。

另請參閱