Angeben einer Assembly ' s-SpeicherortSpecifying an Assembly's Location

Es gibt zwei Möglichkeiten zum Angeben des Speicherortes einer Assembly:There are two ways to specify an assembly's location:

Sie können auch die .NET Framework-Konfigurationstool (Mscorcfg.msc) Speicherorte von Assemblys angeben, oder geben Sie Speicherorte für die common Language Runtime nach Assemblys suchen.You can also use the .NET Framework Configuration Tool (Mscorcfg.msc) to specify assembly locations or specify locations for the common language runtime to probe for assemblies.

Mithilfe der <codeBase >-ElementUsing the <codeBase> Element

Sie können die <codeBase > Element nur im Computer-Konfiguration oder Verleger Richtliniendateien, die auch die Version der Assembly umleiten.You can use the <codeBase> element only in machine configuration or publisher policy files that also redirect the assembly version. Wenn die Runtime die zu verwendende Assemblyversion ermittelt wird, gilt die CodeBase-Einstellung aus der Datei, die die Version bestimmt.When the runtime determines which assembly version to use, it applies the code base setting from the file that determines the version. Wenn keine CodeBase angegeben ist, sucht die Runtime für die Assembly, auf die übliche Weise.If no code base is indicated, the runtime probes for the assembly in the normal way. Weitere Informationen finden Sie unter so sucht Common Language Runtime nach Assemblys.For details, see How the Runtime Locates Assemblies.

Im folgende Beispiel wird das Festlegen des Speicherortes einer Assembly veranschaulicht.The following example shows how to specify an assembly's location.

<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>  

Die Version Attribut ist für alle Assemblys mit starkem Namen erforderlich, sollte für Assemblys, die keinen starken Namen weggelassen werden.The version attribute is required for all strong-named assemblies but should be omitted for assemblies that are not strong-named. Die <codeBase > Element erfordert die Href Attribut.The <codeBase> element requires the href attribute. Sie können keine Versionsbereiche im Angeben der <codeBase > Element.You cannot specify version ranges in the <codeBase> element.

Hinweis

Wenn Sie einen CodeBase-Hinweis für eine Assembly, die nicht mit starkem Namen handelt bereitstellen, muss der Hinweis auf die Anwendungsbasis oder in einem Unterverzeichnis des Basisverzeichnisses der Anwendung verweisen.If you are supplying a code base hint for an assembly that is not strong-named, the hint must point to the application base or a subdirectory of the application base directory.

Mithilfe der <probing >-ElementUsing the <probing> Element

Die Laufzeit sucht, Assemblys, die nicht über eine Codebasis Überprüfung verfügen.The runtime locates assemblies that do not have a code base by probing. Weitere Informationen dazu finden Sie unter so sucht Common Language Runtime nach Assemblys.For more information about probing, see How the Runtime Locates Assemblies.

Sie können die <probing > Element in der Anwendungskonfigurationsdatei Unterverzeichnisse angeben, die Common Language Runtime durchsucht werden sollen, um die Assembly zu ermitteln.You can use the <probing> element in the application configuration file to specify subdirectories the runtime should search when locating an assembly. Im folgende Beispiel zeigt, wie die Verzeichnisse an, die die Common Language Runtime suchen soll.The following example shows how to specify directories the runtime should search.

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

Die PrivatePath Attribut enthält, die Verzeichnisse, die die Common Language Runtime nach Assemblys suchen soll.The privatePath attribute contains the directories that the runtime should search for assemblies. Wenn die Anwendung auf C:\Program Files\MyApp befindet, sucht die Common Language Runtime nach Assemblys, die keine Codebasis in c:\Programme\Microsoft Files\MyApp\Bin c:\Programme\Microsoft Files\MyApp\Bin2\Subbin und c:\Programme\Microsoft Files\MyApp\Bin3 angeben.If the application is located at C:\Program Files\MyApp, the runtime will look for assemblies that do not specify a code base in C:\Program Files\MyApp\Bin, C:\Program Files\MyApp\Bin2\Subbin, and C:\Program Files\MyApp\Bin3. Die Verzeichnisse im angegebenen PrivatePath müssen Unterverzeichnisse des Basisverzeichnisses der Anwendung sein.The directories specified in privatePath must be subdirectories of the application base directory.

Siehe auchSee Also

Assemblys in der Common Language Runtime (CLR)Assemblies in the Common Language Runtime
Programmieren mit AssemblysProgramming with Assemblies
So sucht Common Language Runtime nach AssemblysHow the Runtime Locates Assemblies
Konfigurieren von .NET Framework-AppsConfiguring .NET Framework Apps