指定組件的位置

更新:2007 年 11 月

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

您也可以使用 .NET Framework 組態工具 (Mscorcfg.msc),指定組件位置或指定 Common Language Runtime 執行探查組件的位置。

使用 <codeBase> 項目

您可以只在電腦組態檔或發行者原則檔 (也會重新導向組件版本) 中使用 <codeBase> 項目。當執行階段決定使用哪一個組件版本時,它會從決定版本的檔案中套用程式碼基底設定值。如果沒有指示程式碼基底,Runtime 將以一般方式探查組件。如需詳細資訊,請參閱 Runtime 如何找出組件

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

<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> 項目中指定版本範圍。

注意事項:

如果您正為不具有強式名稱的組件提供程式碼基底提示,則此提示必須指向應用程式基底或應用程式基底目錄的子目錄。

使用 &lt;probing&gt; 項目

Runtime 藉著探查來找出沒有程式碼基底的組件。如需有關探查的詳細資訊,請參閱 Runtime 如何找出組件

您可以在應用程式組態檔中使用 <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,Runtime 將會在 C:\Program Files\MyApp\Bin、C:\Program Files\MyApp\Bin2\Subbin 和 C:\Program Files\MyApp\Bin3 中尋找未指定程式碼基底的組件。privatePath 中指定的目錄必須是應用程式基底目錄的子目錄。

請參閱

概念

執行階段如何找出組件

其他資源

Common Language Runtime 中的組件

使用組件設計程式

設定應用程式