Språk
Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Genererar ett ClickOnce-programmanifest eller ett inbyggt manifest. Ett inbyggt manifest beskriver en komponent genom att definiera en unik identitet för komponenten och identifiera alla sammansättningar och filer som utgör komponenten. Ett ClickOnce-programmanifest utökar ett inbyggt manifest genom att ange programmets startpunkt och ange programsäkerhetsnivån.
Parameters
I följande tabell beskrivs parametrarna GenerateApplicationManifest för uppgiften.
| Parameter | Description |
|---|---|
AssemblyName |
Valfri String parameter.Anger fältet för Name sammansättningsidentiteten för det genererade manifestet. Om den här parametern inte anges härleds namnet från parametrarna EntryPoint eller InputManifest . Om inget namn kan skapas utlöser uppgiften ett fel. |
AssemblyVersion |
Valfri String parameter.Anger fältet för Version sammansättningsidentiteten för det genererade manifestet. Om den här parametern inte anges används standardvärdet "1.0.0.0". |
ClrVersion |
Valfri String parameter.Anger den lägsta versionen av COMMON Language Runtime (CLR) som krävs av programmet. Standardvärdet är den CLR-version som används av byggsystemet. Om uppgiften genererar ett inbyggt manifest ignoreras den här parametern. |
ConfigFile |
Valfri ITaskItem[] parameter.Anger vilket objekt som innehåller programkonfigurationsfilen. Om uppgiften genererar ett inbyggt manifest ignoreras den här parametern. |
Dependencies |
Valfri ITaskItem[] parameter.Anger en objektlista som definierar uppsättningen beroende sammansättningar för det genererade manifestet. Varje objekt kan beskrivas ytterligare av objektmetadata för att ange ytterligare distributionstillstånd och typ av beroende. Mer information finns i Objektmetadata. |
Description |
Valfri String parameter.Anger beskrivningen för programmet eller komponenten. |
EntryPoint |
Valfri ITaskItem[] parameter.Anger ett enskilt objekt som anger startpunkten för den genererade manifestsammansättningen. För ett ClickOnce-programmanifest anger den här parametern den sammansättning som startar när programmet körs. |
ErrorReportUrl |
Valfri System.String parameter. Anger URL:en för webbsidan som visas i dialogrutor under felrapporter i ClickOnce-installationer. |
FileAssociations |
Valfri ITaskItem[] parameter.Anger en lista över en eller flera filtyper som är associerade med ClickOnce-distributionsmanifestet. Filassociationer är endast giltiga när .NET Framework 3.5 eller senare är mål. |
Files |
Valfri ITaskItem[] parameter.Filerna som ska inkluderas i manifestet. Ange den fullständiga sökvägen för varje fil. |
HostInBrowser |
Valfri Boolean parameter. Om truefinns programmet i en webbläsare (liksom WPF webbläsarprogram). |
IconFile |
Valfri ITaskItem[] parameter.Anger programikonfilen. Programikonen uttrycks i det genererade programmanifestet och används för dialogrutan Start-menyn och Lägg till/ta bort program . Om den här indatan inte har angetts används en standardikon. Om uppgiften genererar ett inbyggt manifest ignoreras den här parametern. |
InputManifest |
Valfri ITaskItem parameter. Anger ett XML-indatadokument som ska fungera som bas för manifestgeneratorn. På så sätt kan strukturerade data som programsäkerhet eller anpassade manifestdefinitioner återspeglas i utdatamanifestet. Rotelementet i XML-dokumentet måste vara en sammansättningsnod i asmv1-namnområdet. |
IsolatedComReferences |
Valfri ITaskItem[] parameter.Anger COM-komponenter som ska isoleras i det genererade manifestet. Den här parametern stöder möjligheten att isolera COM-komponenter för distributionen "Registreringsfri COM". Det fungerar genom att automatiskt generera ett manifest med standarddefinitioner för COM-registrering. COM-komponenterna måste dock registreras på byggdatorn för att detta ska fungera korrekt. |
LauncherBasedDeployment |
Valfri boolesk parameter. Ange detta till True när du skapar för .NET Core 3.1, .NET 5 och senare versioner för att säkerställa att programmets körbara namn byts om till det förväntade körbara namnet efter att programvärdens körbara apphost.exe. |
ManifestType |
Valfri String parameter.Anger vilken typ av manifest som ska genereras. Den här parametern kan ha följande värden: - Native- ClickOnceOm den här parametern inte har angetts ClickOnceär aktiviteten som standard . |
MaxTargetPath |
Valfri String parameter.Anger den maximala tillåtna längden på en filsökväg i en ClickOnce-programdistribution. Om det här värdet anges kontrolleras längden på varje filsökväg i programmet mot den här gränsen. Objekt som överskrider gränsen höjs i en byggvarning. Om den här indatan inte har angetts eller är noll utförs ingen kontroll. Om uppgiften genererar ett inbyggt manifest ignoreras den här parametern. |
OSVersion |
Valfri String parameter.Anger den lägsta version av operativsystemet som krävs av programmet. Om den här parametern inte anges används värdet "4.10.0.0", det lägsta operativsystem som stöds för .NET Framework. Om uppgiften genererar ett inbyggt manifest ignoreras dessa indata. |
OutputManifest |
Valfri utdataparameter ITaskItem . Anger namnet på den genererade utdatamanifestfilen. Om den här parametern inte anges härleds namnet på utdatafilen från identiteten för det genererade manifestet. |
Platform |
Valfri String parameter.Anger programmets målplattform. Den här parametern kan ha följande värden: - AnyCPU- x86- x64- ItaniumOm den här parametern inte har angetts AnyCPUär aktiviteten som standard . |
Product |
Valfri String parameter.Anger namnet på programmet. Om den här parametern inte anges härleds namnet från identiteten för det genererade manifestet. Det här namnet används för genvägsnamnet på Start-menyn och är en del av namnet som visas i dialogrutan Lägg till eller ta bort program . |
Publisher |
Valfri String parameter.Anger programmets utgivare. Om den här parametern inte anges härleds namnet från den registrerade användaren eller identiteten för det genererade manifestet. Det här namnet används för mappnamnet på Start-menyn och är en del av namnet som visas i dialogrutan Lägg till eller ta bort program . |
RequiresMinimumFramework35SP1 |
Valfri Boolean parameter.Om sant kräver programmet .NET Framework 3.5 SP1 eller en senare version. |
TargetCulture |
Valfri String parameter.Identifierar programmets kultur och anger fältet för sammansättningsidentiteten Language för det genererade manifestet. Om den här parametern inte anges antas det att programmet är kulturvariant. |
TargetFrameworkMoniker |
Valfri String parameter.Anger målramverkets moniker. |
TargetFrameworkProfile |
Valfri String parameter.Anger målramverksprofilen. |
TargetFrameworkSubset |
Valfri String parameter.Anger namnet på delmängden .NET Framework som ska vara målet. |
TargetFrameworkVersion |
Valfri String parameter.Anger målet .NET Framework för projektet. |
TrustInfoFile |
Valfri ITaskItem parameter. Anger ett XML-dokument som anger programsäkerheten. Rotelementet i XML-dokumentet måste vara en trustInfo-nod i asmv2-namnområdet. Om uppgiften genererar ett inbyggt manifest ignoreras den här parametern. |
UseApplicationTrust |
Valfri Boolean parameter.Om sant skrivs Productegenskaperna , Publisheroch till SupportUrl programmanifestet. |
Remarks
Förutom de parametrar som anges ovan ärver den här aktiviteten parametrar från GenerateManifestBase klassen, som i sig ärver från Task klassen. En lista över parametrarna för klassen Aktivitet finns i Basklass för aktivitet.
Information om hur du använder uppgiften finns i GenerateDeploymentManifestGenereraApplicationManifest-uppgift.
Indata för beroenden och filer kan dekoreras ytterligare med objektmetadata för att ange ytterligare distributionstillstånd för varje objekt.
Objektmetadata
| Metadatanamn | Description |
|---|---|
DependencyType |
Anger om beroendet publiceras och installeras med programmet eller en förutsättning. Dessa metadata är giltiga för alla beroenden, men används inte för filer. Tillgängliga värden för dessa metadata är: - Install- PrerequisiteInstallation är standardvärdet. |
AssemblyType |
Anger om beroendet är en hanterad eller en intern sammansättning. Dessa metadata är giltiga för alla beroenden, men används inte för filer. Tillgängliga värden för dessa metadata är: - Managed- Native- UnspecifiedUnspecified är standardvärdet, vilket anger att manifestgeneratorn bestämmer sammansättningstypen automatiskt. |
Group |
Anger gruppen för att ladda ned ytterligare filer på begäran. Gruppnamnet definieras av programmet och kan vara valfri sträng. En tom sträng anger att filen inte ingår i en nedladdningsgrupp, vilket är standardvärdet. Filer som inte finns i en grupp ingår i den första programnedladdningen. Filer i en grupp laddas bara ned när programmet uttryckligen begär det med hjälp av System.Deployment.Application. Dessa metadata är giltiga för alla filer där IsDataFile är false och alla beroenden där DependencyType är Install. |
TargetPath |
Anger hur sökvägen ska definieras i det genererade manifestet. Det här attributet är giltigt för alla filer. Om det här attributet inte anges används objektspecifikationen. Det här attributet är giltigt för alla filer och beroenden med värdet DependencyTypeInstall. |
IsDataFile |
Ett Boolean metadatavärde som anger om filen är en datafil eller inte. En datafil är speciell eftersom den migreras mellan programuppdateringar. Dessa metadata är endast giltiga för filer.
False är standardvärdet. |
Exempel 1
I det här exemplet används uppgiften GenerateApplicationManifest för att generera ett ClickOnce-programmanifest och GenerateDeploymentManifest uppgiften för att generera ett distributionsmanifest för ett program med en enda sammansättning. Den använder SignFile sedan uppgiften för att signera manifesten.
Detta illustrerar det enklaste möjliga manifestgenereringsscenariot där ClickOnce-manifest genereras för ett enda program. Ett standardnamn och en standardidentitet härleds från sammansättningen för manifestet.
Note
I exemplet nedan är alla programbinärfiler fördefinierade för att fokusera på manifestgenereringsaspekter. I det här exemplet skapas en fullständigt fungerande ClickOnce-distribution.
Note
Mer information om egenskapen Thumbprint som används i SignFile uppgiften i det här exemplet finns i SignFile-uppgift.
<Project DefaultTargets="Build">
<ItemGroup>
<EntryPoint Include="SimpleWinApp.exe" />
</ItemGroup>
<PropertyGroup>
<Thumbprint>
<!-- Insert generated thumbprint here -->
</Thumbprint>
</PropertyGroup>
<Target Name="Build">
<GenerateApplicationManifest
EntryPoint="@(EntryPoint)">
<Output
ItemName="ApplicationManifest"
TaskParameter="OutputManifest"/>
</GenerateApplicationManifest>
<GenerateDeploymentManifest
EntryPoint="@(ApplicationManifest)">
<Output
ItemName="DeployManifest"
TaskParameter="OutputManifest"/>
</GenerateDeploymentManifest>
<SignFile
CertificateThumbprint="$(Thumbprint)"
SigningTarget="@(ApplicationManifest)"/>
<SignFile
CertificateThumbprint="$(Thumbprint)"
SigningTarget="@(DeployManifest)"/>
</Target>
</Project>
Exempel 2
I det GenerateApplicationManifest här exemplet används uppgifterna och GenerateDeploymentManifest för att generera ClickOnce-program- och distributionsmanifest för ett program med en enda sammansättning, som anger namn och identitet för manifest.
Det här exemplet liknar föregående exempel, förutom att manifestens namn och identitet uttryckligen anges. Det här exemplet är också konfigurerat som ett onlineprogram i stället för ett installerat program.
Note
I exemplet nedan är alla programbinärfiler fördefinierade för att fokusera på manifestgenereringsaspekter. I det här exemplet skapas en fullständigt fungerande ClickOnce-distribution.
Note
Mer information om egenskapen Thumbprint som används i SignFile uppgiften i det här exemplet finns i SignFile-uppgift.
<Project DefaultTargets="Build">
<ItemGroup>
<EntryPoint Include="SimpleWinApp.exe" />
</ItemGroup>
<PropertyGroup>
<Thumbprint>
<!-- Insert generated thumbprint here -->
</Thumbprint>
</PropertyGroup>
<Target Name="Build">
<GenerateApplicationManifest
AssemblyName="SimpleWinApp.exe"
AssemblyVersion="1.0.0.0"
EntryPoint="@(EntryPoint)"
OutputManifest="SimpleWinApp.exe.manifest">
<Output
ItemName="ApplicationManifest"
TaskParameter="OutputManifest"/>
</GenerateApplicationManifest>
<GenerateDeploymentManifest
AssemblyName="SimpleWinApp.application"
AssemblyVersion="1.0.0.0"
EntryPoint="@(ApplicationManifest)"
Install="false"
OutputManifest="SimpleWinApp.application">
<Output
ItemName="DeployManifest"
TaskParameter="OutputManifest"/>
</GenerateDeploymentManifest>
<SignFile
CertificateThumbprint="$(Thumbprint)"
SigningTarget="@(ApplicationManifest)"/>
<SignFile
CertificateThumbprint="$(Thumbprint)"
SigningTarget="@(DeployManifest)"/>
</Target>
</Project>
Exempel 3
I det GenerateApplicationManifest här exemplet används uppgifterna och GenerateDeploymentManifest för att generera ClickOnce-program- och distributionsmanifest för ett program med flera filer och sammansättningar.
Note
I exemplet nedan är alla programbinärfiler fördefinierade för att fokusera på manifestgenereringsaspekter. I det här exemplet skapas en fullständigt fungerande ClickOnce-distribution.
Note
Mer information om egenskapen Thumbprint som används i SignFile uppgiften i det här exemplet finns i SignFile-uppgift.
<Project DefaultTargets="Build">
<ItemGroup>
<EntryPoint Include="SimpleWinApp.exe" />
</ItemGroup>
<PropertyGroup>
<Thumbprint>
<!-- Insert generated thumbprint here -->
</Thumbprint>
<DeployUrl>
<!-- Insert the deployment URL here -->
</DeployUrl>
<SupportUrl>
<!-- Insert the support URL here -->
</SupportUrl>
</PropertyGroup>
<Target Name="Build">
<ItemGroup>
<EntryPoint Include="SimpleWinApp.exe"/>
<Dependency Include="ClassLibrary1.dll">
<AssemblyType>Managed</AssemblyType>
<DependencyType>Install</DependencyType>
</Dependency>
<Dependency Include="ClassLibrary2.dll">
<AssemblyType>Managed</AssemblyType>
<DependencyType>Install</DependencyType>
<Group>Secondary</Group>
</Dependency>
<Dependency Include="MyAddIn1.dll">
<AssemblyType>Managed</AssemblyType>
<DependencyType>Install</DependencyType>
<TargetPath>Addins\MyAddIn1.dll</TargetPath>
</Dependency>
<Dependency Include="ClassLibrary3.dll">
<AssemblyType>Managed</AssemblyType>
<DependencyType>Prerequisite</DependencyType>
</Dependency>
<File Include="Text1.txt">
<TargetPath>Text\Text1.txt</TargetPath>
<Group>Text</Group>
</File>
<File Include="DataFile1.xml ">
<TargetPath>Data\DataFile1.xml</TargetPath>
<IsDataFile>true</IsDataFile>
</File>
<IconFile Include="Heart.ico"/>
<ConfigFile Include="app.config">
<TargetPath>SimpleWinApp.exe.config</TargetPath>
</ConfigFile>
<BaseManifest Include="app.manifest"/>
</ItemGroup>
<Target Name="Build">
<GenerateApplicationManifest
AssemblyName="SimpleWinApp.exe"
AssemblyVersion="1.0.0.0"
ConfigFile="@(ConfigFile)"
Dependencies="@(Dependency)"
Description="TestApp"
EntryPoint="@(EntryPoint)"
Files="@(File)"
IconFile="@(IconFile)"
InputManifest="@(BaseManifest)"
OutputManifest="SimpleWinApp.exe.manifest">
<Output
ItemName="ApplicationManifest"
TaskParameter="OutputManifest"/>
</GenerateApplicationManifest>
<GenerateDeploymentManifest
AssemblyName="SimpleWinApp.application"
AssemblyVersion="1.0.0.0"
DeploymentUrl="$(DeployToUrl)"
Description="TestDeploy"
EntryPoint="@(ApplicationManifest)"
Install="true"
OutputManifest="SimpleWinApp.application"
Product="SimpleWinApp"
Publisher="Microsoft"
SupportUrl="$(SupportUrl)"
UpdateEnabled="true"
UpdateInterval="3"
UpdateMode="Background"
UpdateUnit="weeks">
<Output
ItemName="DeployManifest"
TaskParameter="OutputManifest"/>
</GenerateDeploymentManifest>
<SignFile
CertificateThumbprint="$(Thumbprint)"
SigningTarget="@(ApplicationManifest)"/>
<SignFile
CertificateThumbprint="$(Thumbprint)"
SigningTarget="@(DeployManifest)"/>
</Target>
</Project>
Exempel 4
I det här exemplet används uppgiften GenerateApplicationManifest för att generera ett internt manifest för program Test.exe, som refererar till den inbyggda komponenten Alpha.dll och en isolerad COM-komponent Bravo.dll.
I det här exemplet skapas Test.exe.manifest, vilket gör att programmet XCOPY kan distribueras och dra nytta av registreringsfri COM.
Note
I exemplet nedan är alla programbinärfiler fördefinierade för att fokusera på manifestgenereringsaspekter. I det här exemplet skapas en fullständigt fungerande ClickOnce-distribution.
<Project DefaultTargets="Build">
<ItemGroup>
<File Include="Test.exe" />
<Dependency Include="Alpha.dll">
<AssemblyType>Native</AssemblyType>
<DependencyType>Install</DependencyType>
</Dependency>
<ComComponent Include="Bravo.dll" />
</ItemGroup>
<Target Name="Build">
<GenerateApplicationManifest
AssemblyName="Test.exe"
AssemblyVersion="1.0.0.0"
Dependencies="@(Dependency)"
Files="@(File)"
IsolatedComReferences="@(ComComponent)"
ManifestType="Native">
<Output
ItemName="ApplicationManifest"
TaskParameter="OutputManifest"/>
</GenerateApplicationManifest>
</Target>
</Project>