Sdílet prostřednictvím


Sestavování aplikací ClickOnce z příkazového řádku

V Visual Studio můžete sestavovat projekty z příkazového řádku, i když jsou vytvořeny v integrovaném vývojovém prostředí (IDE). Ve skutečnosti můžete znovu sestavit projekt vytvořený s Visual Studio v jiném počítači, který má nainstalováno pouze .NET Framework. To umožňuje reprodukci sestavení použitím automatizovaného procesu, například v centrální prostředí sestavení nebo pomocí pokročilých skriptovacích technik nad rámec sestavování samotného projektu.

Použití nástroje MSBuild pro reprodukci nasazení aplikace ClickOnce

Při vyvolání msbuild /target:publish v příkazovém řádku, tento řekne systému nástroje MSBuild o sestavení projektu a vytvoření aplikace ClickOnce ve složce publikování. Jedná se o ekvivalent výběru příkazu Publikovat v rozhraní IDE.

Tento příkaz spustí msbuild.exe, který je v cestě v příkazovém řádku prostředí Visual Studio.

"Cíl" je indikátorem pro MSBuild týkající se zpracování příkazu. Klíčové cíle jsou cíle "sestavení" a cíle "publikování". Cíl sestavení odpovídá výběru příkazu sestavení (nebo stisknutím klávesy F5) v integrovaném vývojovém prostředí. Pokud chcete sestavit projekt, můžete toho dosáhnout zadáním msbuild. Tento příkaz lze použít, protože cíl sestavení je výchozí cíl pro všechny projekty, které jsou generovány pomocí Visual Studio. To znamená, že není explicitně nutné určit cíl sestavení. Proto je zadání msbuild stejnou operací jako zadání msbuild /target:build.

Příkaz /target:publish dává pokyn pro MSBuild vyvolávající cíl publikování. Cíl publikování závisí na cíli sestavení. To znamená, že operace publikování je nadmnožinou operace sestavení. Například pokud jste provedli změny ve zdrojových souborech Visual Basic nebo C#, odpovídající sestavení by mělo být automaticky znovu sestaveno operací publikování.

Informace o generování úplného nasazení ClickOnce pomocí nástroje příkazového řádku Mage.exe pro vytvoření manifestu ClickOnce viz Podrobné pokyny: Ruční nasazení aplikace ClickOnce.

Vytvoření a sestavení základní aplikace ClickOnce pomocí nástroje MSBuild

Pro vytvoření a publikování projektu ClickOnce

  1. V nabídce Soubor klikněte na Nový Projekt. Zobrazí se dialogové okno Nový projekt.

  2. Zvolte Aplikace pro systém Windows a pojmenujte ji CmdLineDemo.

  3. Z nabídky Sestavení klikněte na příkaz Publikovat.

    Tento krok zajistí, aby byl projekt správně nakonfigurován k produkování nasazení aplikace ClickOnce.

    Zobrazí se Průvodce Publikováním.

  4. V Průvodci publikováním klikněte na Dokončit.

    Visual Studio vygeneruje a zobrazí výchozí webovou stránku nazvanou Publish.htm.

  5. Uložte projekt a poznamenejte si umístění složky, ve kterém je uložena.

Výše uvedené kroky vytváří projekt ClickOnce, který byl poprvé publikován. Nyní můžete reprodukovat sestavení mimo rozhraní IDE.

Pro reprodukci sestavení z příkazového řádku

  1. Ukončete Visual Studio.

  2. Z nabídky Start přejděte do Všechny programy, pak Microsoft Visual Studio a Visual Studio Tools a potom vyberte Visual Studio Command Prompt. To by mělo otevřít příkazový řádek v kořenové složce aktuálního uživatele.

  3. V Příkazovém řádku Visual Studia změňte aktuální adresář na umístění projektu, který jste právě vytvořili. Zadejte například chdir My Documents\Visual Studio\Projects\CmdLineDemo.

  4. Chcete-li odebrat existující soubory vytvořené v "Vytvoření a publikování ClickOnce projektu", zadejte rmdir /s publish.

    Tento krok je volitelný, ale zajišťuje, že nové soubory budou všechny vyrobené sestavením příkazového řádku.

  5. Zadejte msbuild /target:publish.

Výše uvedené kroky zajistí úplné nasazení aplikace ClickOnce do podsložky projektu s názvem Publish. CmdLineDemo.application je manifest nasazení ClickOnce. Složka CmdLineDemo_1.0.0.0 obsahuje soubory CmdLineDemo.exe a CmdLineDemo.exe.manifest manifest aplikace ClickOnce. Soubor Setup.exe je zaváděcí nástroj, který je ve výchozím nastavení nakonfigurován tak, aby instaloval .NET Framework. Složka DotNetFX obsahuje redistribuovatelnosti pro .NET Framework. Toto je celá sada souborů, které potřebujete pro nasazení aplikace prostřednictvím webu, UNC nebo disku CD nebo DVD.

Vlastnosti publikování

Publikujete-li aplikace dle výše uvedených postupů, jsou následující vlastnosti vloženy do souboru projektu pomocí Průvodce publikování. Tyto vlastnosti přímo ovlivňují jak je aplikace ClickOnce vyráběna.

V CmdLineDemo.vbproj / CmdLineDemo.csproj:

<AssemblyOriginatorKeyFile>WindowsApplication3.snk</AssemblyOriginatorKeyFile>
<GenerateManifests>true</GenerateManifests>
<TargetZone>LocalIntranet</TargetZone>
<PublisherName>Microsoft</PublisherName>
<ProductName>CmdLineDemo</ProductName>
<PublishUrl>https://localhost/CmdLineDemo</PublishUrl>
<Install>true</Install>
<ApplicationVersion>1.0.0.*</ApplicationVersion>
<ApplicationRevision>1</ApplicationRevision>
<UpdateEnabled>true</UpdateEnabled>
<UpdateRequired>false</UpdateRequired>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdateUrlEnabled>false</UpdateUrlEnabled>
<IsWebBootstrapper>true</IsWebBootstrapper>
<BootstrapperEnabled>true</BootstrapperEnabled>

Můžete přepsat kterékoliv z těchto vlastností v příkazovém řádku, aniž byste změnili samotný soubor projektu. Například následující staví nasazení aplikace ClickOnce bez zaváděcího nástroje:

msbuild /target:publish /property:BootstrapperEnabled=false

Vlastnosti publikování jsou řízeny v Visual Studio ze stránek vlastností Publikovat, Zabezpečení a Podepisování v Návrháři projektu. Níže je uveden popis vlastností publikování spolu s uvedením, jak je každá z nich nastavena na různých stránkách vlastností návrháře aplikace:

  • AssemblyOriginatorKeyFile určuje soubor klíče pro použití k podpisu manifestů aplikací ClickOnce. Tento stejný klíč může být využíván také k přiřazení silného názvu vašeho sestavení. Tato vlastnost je nastavena na stránce Podepisování Návrháře projektu.

Následující vlastnosti jsou nastaveny na stránce Zabezpečení:

  • Povolení nastavení zabezpečení ClickOnce určuje, zda jsou generovány manifesty ClickOnce. Když je původně vytvořen projekt, generování manifestu ClickOnce je ve výchozím nastavení vypnuto. Průvodce automaticky zapne tento příznak při prvním publikování.

  • TargetZone určuje úroveň důvěry, kterou chcete vypustit do vašeho manifestu aplikace ClickOnce. Možné hodnoty jsou "Internet", "LocalIntranet" a "Custom". Internet a LocalIntranet způsobí výchozí nastavení oprávnění pro vypuštění do vašeho manifestu aplikace ClickOnce. LocalIntranet je výchozí a v podstatě znamená úplný vztah důvěryhodnosti. Určuje, že pouze oprávnění výslovně uvedené v základním souboru app.manifest mají být vypuštěny do manifestu aplikace ClickOnce. Soubor app.manifest je částečný soubor manifestu, který obsahuje pouze informace definicí vztahu důvěryhodnosti. Jedná se o skrytý soubor, který je automaticky přidán do projektu při konfiguraci oprávnění na stránce Zabezpečení.

Následující vlastnosti jsou nastaveny na stránce Publikování:

  • PublishUrl je umístění, kde aplikace bude publikována v rozhraní IDE. Je vloženo do manifestu aplikace ClickOnce, pokud není určena vlastnost InstallUrl ani UpdateUrl.

  • ApplicationVersion určuje verzi ClickOnce aplikace. Toto je čtyřmístné číslo verze. Pokud je poslední číslicí "*", pak je ApplicationRevision nahrazena hodnotou vloženou do manifestu v okamžiku sestavení.

  • ApplicationRevision určuje revizi. Toto je integer, který se zvyšuje pokaždé, když publikujete v integrovaném vývojovém prostředí. Všimněte si, že není automaticky zvýšen pro sestavení prováděná v příkazovém řádku.

  • Install určuje, zda je aplikace instalovaná aplikace nebo aplikace spouštěná z webu.

  • InstallUrl (nezobrazeno) je umístění, odkud budou uživatelé instalovat aplikaci. Je-li zadána, je tato hodnota vypálena do zaváděcího nástroje setup.exe, pokud je vlastnost IsWebBootstrapper povolena. Je rovněž vložen do manifestu aplikace, pokud není UpdateUrl zadána.

  • SupportUrl (nezobrazeno) je umístění propojené v dialogovém okně Přidat nebo odebrat programy pro nainstalované aplikace.

Následující vlastnosti jsou nastaveny v dialogovém okně Aktualizace aplikace přístupném ze stránky Publikovat.

  • UpdateEnabled označuje, zda by měla aplikace Vyhledávat aktualizace.

  • UpdateMode určuje aktualizace na popředí nebo aktualizace na pozadí.

  • UpdateInterval určuje, jak často by měla aplikace vyhledat aktualizace.

  • UpdateIntervalUnits určuje, zda hodnota UpdateInterval v jednotkách hodin, dnů nebo týdnů.

  • UpdateUrl (nezobrazeno) je umístění, ze kterého bude aplikace přijímat aktualizace. Je-li zadána, je tato hodnota vložena do manifestu aplikace.

  • Následující vlastnosti jsou nastaveny v dialogovém okně Možnosti publikování přístupném ze stránky Publikovat.

  • PublisherName určuje název vydavatele zobrazený ve výzvě zobrazené při instalaci nebo spuštění aplikace. V případě instalované aplikace, je také použit k zadání názvu složky v nabídce Start.

  • ProductName určuje název produktu zobrazený ve výzvě zobrazené při instalaci nebo spuštění aplikace. V případě instalované aplikace, je také použit k zadání názvu odkazu v nabídce Start.

  • Následující vlastnosti jsou nastaveny v dialogovém okně Požadavky přístupném ze stránky Publikovat.

  • BootstrapperEnabled určuje, zda bude generován zaváděcí nástroj setup.exe.

  • IsWebBootstrapper určuje, zda zaváděcí nástroj setup.exe funguje prostřednictvím webu nebo v režim na disku.

InstallURL, SupportUrl, PublishURL a UpdateURL

V následující tabulce jsou uvedeny čtyři možnosti URL pro ClickOnce nasazení.

URL možnost

Popis

PublishURL

Požadováno pokud publikujete vaši aplikaci ClickOnce na webové stránce.

InstallURL

Nepovinné. Nastavte tuto možnost adresy URL, pokud se web instalace liší od PublishURL. Například můžete nastavit PublishURL jako cestu protokolu FTP a nastavit InstallURL na adresu URL webu.

SupportURL

Nepovinné. Nastavte tuto možnost adresy URL, pokud je server odborné pomoci jiný než PublishURL. Například můžete nastavit SupportURL na adresu webu podpory společnosti zákazníka.

UpdateURL

Nepovinné. Nastavte tuto možnost adresy URL, pokud je umístění aktualizace jiné než InstallURL. Například můžete nastavit PublishURL jako cestu protokolu FTP a nastavit UpdateURL na adresu URL webu.

Viz také

Úkoly

Podrobné pokyny: Ruční nasazení aplikace ClickOnce

Odkaz

GenerateBootstrapper

GenerateApplicationManifest

GenerateDeploymentManifest

Koncepty

ClickOnce zabezpečení a nasazení