Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Proces odkazování na typy nebo prostředky v sestavení se silným názvem je obvykle transparentní. Odkaz můžete provést buď v době kompilace (vazba při kompilaci), nebo za běhu.
Odkaz na čas kompilace nastane, když indikujete kompilátoru, že sestavení, které má být zkompilováno explicitně odkazuje na jiné sestavení. Když použijete odkazování na čas kompilace, kompilátor automaticky získá veřejný klíč cílového sestavení se silným názvem a umístí ho do odkazu sestavení kompilovaného sestavení.
Poznámka:
Sestavení se silným názvem může používat pouze typy z jiných sestavení se silným názvem. Jinak by došlo k ohrožení zabezpečení sestavení se silným názvem.
Vytvoření odkazu na sestavení se silným názvem
Do příkazového řádku zadejte následující příkaz:
< příkaz> kompilátoru/reference:<assembly name>
V tomto příkazu je příkaz kompilátoru příkazem kompilátoru pro jazyk, který používáte, a název sestavení je název sestavení se silným názvem, na které se odkazuje. Můžete také použít jiné možnosti kompilátoru , například možnost /t:library pro vytvoření sestavení knihovny.
Následující příklad vytvoří sestavení s názvem myAssembly.dll , které odkazuje na sestavení se silným názvem, které se nazývá myLibAssembly.dll z modulu kódu s názvem myAssembly.cs.
csc /t:library myAssembly.cs /reference:myLibAssembly.dll
Vytvoření odkazu modulu runtime na sestavení se silným názvem
Když vytvoříte odkaz na sestavení se silným názvem, například pomocí metody Assembly.Load nebo Assembly.GetType, musíte použít zobrazovaný název odkazovaného sestavení se silným názvem. Syntaxe zobrazovaného názvu je následující:
< název> sestavení,< verze,> jazyková verze<,> token veřejného klíče<
Příklad:
myDll, Version=1.1.0.0, Culture=en, PublicKeyToken=03689116d3a4ae33
V tomto příkladu PublicKeyToken je šestnáctková forma tokenu veřejného klíče. Pokud neexistuje hodnota jazykové verze, použijte Culture=neutral.
Následující příklad kódu ukazuje, jak používat tyto informace s metodou Assembly.Load .
Assembly^ myDll =
Assembly::Load("myDll, Version=1.0.0.1, Culture=neutral, PublicKeyToken=9b35aa32c18d4fb1");
Assembly myDll =
Assembly.Load("myDll, Version=1.0.0.1, Culture=neutral, PublicKeyToken=9b35aa32c18d4fb1");
Dim myDll As Assembly = _
Assembly.Load("myDll, Version=1.0.0.1, Culture=neutral, PublicKeyToken=9b35aa32c18d4fb1")
Šestnáctkový formát veřejného klíče a tokenu veřejného klíče pro konkrétní sestavení můžete vytisknout pomocí následujícího příkazu Strong Name (Sn.exe ):
sn -Tp <shromáždění>
Pokud máte soubor veřejného klíče, můžete místo toho použít následující příkaz (všimněte si rozdílu v případě možnosti příkazového řádku):
soubor veřejného klíče sn -tp <>