Postupy: Podepsat sestavení silným názvem

Windows Software Development Kit (SDK) poskytuje několik způsobů pro podepsání sestavení silným názvem:

  • Pomocí Propojovacího programu sestavení (Al.exe) poskytovaného Windows SDK.

  • Pomocí atributů sestavení pro vložení informací o silném názvu do vašeho kódu. Můžete použít buď AssemblyKeyFileAttribute nebo AssemblyKeyNameAttribute podle toho, kde je umístěn soubor s klíčem, který má být použit.

    PoznámkaPoznámka

    V rozhraní .NET Framework verze 2.0 některé kompilátory při použití těchto atributů vydají upozornění.

  • Pomocí možností kompilátoru jako /keyfile nebo /delaysign v jazyce C# a Visual Basic nebo pomocí možností propojovacího programu /KEYFILE nebo /DELAYSIGN v jazyce C++. (Informace o dodatečném podepisování naleznete v tématu Zpožděné podepisování sestavení.)

PoznámkaPoznámka

V Visual Studio 2005 vývojové prostředí poskytuje nástroje pro podepisování sestavení.Více o tématu v Správa sestavení a podepsání manifestu a Stránka, Podepsání designer projekt.

Pro podepsání sestavení silným názvem musíte mít pár kryptografických klíčů. Další informace o vytváření páru klíčů naleznete v tématu Jak: Vytvořit pár veřejného a soukromého klíče.

Chcete-li vytvořit a podepsat sestavení silným názvem pomocí propojovacího programu sestavení

  • Na příkazovém řádku zadejte následující příkaz:

    al /out:<název sestavení> <název modulu> /keyfile:<název souboru>

    V tomto příkazu název sestavení určuje název sestavení, které má být podepsáno pomocí silného názvu, název modulu je název modulu kódu sloužícího k vytvoření sestavení a název souboru je název kontejneru nebo souboru, který obsahuje pár klíčů.

Následující příklad podepíše sestavení MyAssembly.dll se silným názvem pomocí souboru s klíči sgKey.snk.

al /out:MyAssembly.dll MyModule.netmodule /keyfile:sgKey.snk

Chcete-li podepsat sestavení silným názvem pomocí atributů

  • V modul kódu přidejte AssemblyKeyFileAttribute nebo AssemblyKeyNameAttribute určující název souboru nebo kontejneru, jež obsahuje pár klíčů, který se má použít při podepisování sestavení silným názvem.

V následujícím příkladu kódu je použit AssemblyKeyFileAttribute se souborem klíčů nazvaným keyfile.snk, který je umístěn v adresáři, kde je sestavení kompilováno.

<Assembly:AssemblyKeyFileAttribute("keyfile.snk")>
[assembly:AssemblyKeyFileAttribute("keyfile.snk")]
[assembly:AssemblyKeyFileAttribute("keyfile.snk")];
PoznámkaPoznámka

Ve vývojových prostředích, jako je například Visual Studio, nemusí být sestavení zkompilováno do adresáře projektu.Některé verze Visual Studio například kompilují projekty jazyka C# do podadresáře bin\Debug.V takovém případě by cesta v příkladu kódu byla "..\\..\\keyfile.snk".V Visual Studio 2005 může být soubor s klíči pro jazyk C# zadán v nastaveních projektu.

Při kompilaci můžete také podepsání sestavení pozdržet. Další informace naleznete v tématu Zpožděné podepisování sestavení.

Při podpisu sestavení silným názvem Propojovací program sestavení (Al.exe) vyhledává soubor s klíčem vzhledem k aktuálnímu a výstupnímu adresáři. Při použití kompilátorů příkazového řádku můžete jednoduše zkopírovat klíč do aktuálního adresář, který obsahuje moduly kódu.

Viz také

Úkoly

Postupy: Vytvořit pár veřejného a soukromého klíče

Odkaz

Stránka, Podepsání designer projekt

Koncepty

Vytvoření a použití sestavení se silným názvem

Zpožděné podepisování sestavení

Další zdroje

Správa sestavení a podepsání manifestu