Anteckning
Å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.
Bygghändelser i Visual Basic kan användas för att köra skript, makron eller andra åtgärder som en del av kompileringsprocessen. Förkompileringshändelser inträffar före kompilering. händelser efter bygget inträffar efter kompilering.
Så här anger du för- och efterbyggnadshändelser
Om du vill visa eller ändra versionshändelser för ett Visual Basic .NET Core- eller .NET 5- och senare projekt högerklickar du på projektnoden och väljer Egenskaper (eller trycker på Alt+Retur) och går sedan till Kompilera>händelser. Ange önskad kommandorad. Arbetskatalogen är utdatakatalogen.
Följ dessa steg för .NET Framework-projekt:
- När ett projekt har valts i Solution Explorerklickar du på Egenskaperpå menyn Project . 
- Klicka på fliken Kompilera. 
- Klicka på knappen Skapa händelser för att öppna dialogrutan Skapa händelser. 
- Ange kommandoradsargumenten för för- eller efterskapningsåtgärden och klicka sedan på OK. 
Build-händelser anges i dialogrutan Build Events som finns på sidan Kompilera i Project Designer.
Så här anger du för- och efterbyggnadshändelser
Så här anger du en bygghändelse
- När ett projekt har valts i Solution Explorerklickar du på Egenskaperpå menyn Project . 
- Klicka på fliken Kompilera. 
- Klicka på knappen Skapa händelser för att öppna dialogrutan Skapa händelser. 
- Ange kommandoradsargumenten för för- eller efterskapningsåtgärden och klicka sedan på OK. 
Not
Lägg till en call instruktion före alla kommandon efter bygget som kör .bat filer. Till exempel call C:\MyFile.bat eller call C:\MyFile.bat call C:\MyFile2.bat.
Not
Om din för- eller efterbuild-händelse inte har slutförts framgångsrikt kan du avsluta builden genom att avsluta händelseåtgärden med en annan kod än noll (0), vilket indikerar en lyckad åtgärd.
Du kan referera till "makron" (egentligen MSBuild-egenskapsnamn) i skripten. Om du vill referera till en egenskap använder du syntaxen $(PropertyName), som ersätts med egenskapsvärdet när händelseskriptet körs. En lista över vanliga värden finns i Vanliga egenskaper för MSBuild. Det kan finnas andra egenskaper som definieras i projektfilen, i alla importerade filer i projektfilen, i miljövariabler eller som skickas på kommandoraden -p med hjälp av MSBuild-växeln under kommandoradsversioner.
Exempel: Så här ändrar du manifestinformation med hjälp av en händelse efter bygget
Följande procedur visar hur du anger den lägsta versionen av operativsystemet i programmanifestet med hjälp av ett .exe kommando som anropas från en händelse efter bygget ( .exe.manifest filen i projektkatalogen). Den lägsta operativsystemversionen är ett nummer i fyra delar, till exempel 4.10.0.0. För att göra detta ändrar kommandot avsnittet <dependentOS> i manifestet:
<dependentOS>
   <osVersionInfo>
      <os majorVersion="4" minorVersion="10" buildNumber="0" servicePackMajor="0" />
   </osVersionInfo>
</dependentOS>
Så här skapar du ett .exe kommando för att ändra programmanifestet
- Skapa ett konsolprogram för kommandot. På menyn Arkiv klickar du på Nyoch klickar sedan på Projekt. 
- I dialogrutan Nytt projekt i noden Visual Basic väljer du Windows och sedan mallen Console Application. Ge projektet namnet - ChangeOSVersionVB.
- I Module1.vblägger du till följande rad i de andra - Imports-uttrycken överst i filen:- Imports System.Xml
- Lägg till följande kod i - Sub Main:- Sub Main() Dim applicationManifestPath As String applicationManifestPath = My.Application.CommandLineArgs(0) Console.WriteLine("Application Manifest Path: " & applicationManifestPath.ToString) 'Get version name Dim osVersion As Version If My.Application.CommandLineArgs.Count >= 2 Then osVersion = New Version(My.Application.CommandLineArgs(1).ToString) Else Throw New ArgumentException("OS Version not specified.") End If Console.WriteLine("Desired OS Version: " & osVersion.ToString()) Dim document As XmlDocument Dim namespaceManager As XmlNamespaceManager namespaceManager = New XmlNamespaceManager(New NameTable()) With namespaceManager .AddNamespace("asmv1", "urn:schemas-microsoft-com:asm.v1") .AddNamespace("asmv2", "urn:schemas-microsoft-com:asm.v2") End With document = New XmlDocument() document.Load(applicationManifestPath) Dim baseXPath As String baseXPath = "/asmv1:assembly/asmv2:dependency/asmv2:dependentOS/asmv2:osVersionInfo/asmv2:os" 'Change minimum required OS Version. Dim node As XmlNode node = document.SelectSingleNode(baseXPath, namespaceManager) node.Attributes("majorVersion").Value = osVersion.Major.ToString() node.Attributes("minorVersion").Value = osVersion.Minor.ToString() node.Attributes("buildNumber").Value = osVersion.Build.ToString() node.Attributes("servicePackMajor").Value = osVersion.Revision.ToString() document.Save(applicationManifestPath) End Sub- Kommandot tar två argument. Det första argumentet är sökvägen till programmanifestet (dvs. mappen där byggprocessen skapar manifestet, vanligtvis <ProjectName>.publish). Det andra argumentet är den nya versionen av operativsystemet. 
- På menyn Build klickar du på Build Solution. 
- Kopiera .exe-filen till en katalog som C:\TEMP\ChangeOSVersionVB.exe. - Anropa sedan det här kommandot i en händelse efter bygget för att ändra programmanifestet. 
Så här anropar du en händelse efter bygget för att ändra programmanifestet
- Skapa ett Windows-program för projektet som ska publiceras. På menyn Arkiv klickar du på Nyoch klickar sedan på Projekt. 
- I dialogrutan Nytt projekt i noden Visual Basic väljer du Windows Desktop och sedan mallen Windows Forms App. Ge projektet namnet - VBWinApp.
- När projektet är markerat i Solution Explorerklickar du på Egenskaperpå menyn Project . 
- På Project Designer-går du till sidan Publicera och anger Publiceringsplats till C:\TEMP. 
- Publicera projektet genom att klicka på Publicera nu. - Manifestfilen skapas och placeras i C:\TEMP\VBWinApp_1_0_0_0\VBWinApp.exe.manifest. Om du vill visa manifestet högerklickar du på filen och klickar på Öppna medoch klickar sedan på Välj programmet från en listaoch klickar sedan på Anteckningar. - Sök i filen efter elementet - <osVersionInfo>. Versionen kan till exempel vara:- <os majorVersion="4" minorVersion="10" buildNumber="0" servicePackMajor="0" />
- I Project Designer-går du till fliken Kompilera och klickar på knappen Skapa händelser för att öppna dialogrutan Build Events. 
- Ange följande kommando i rutan Kommandorad för händelse efter byggnad: - C:\TEMP\ChangeOSVersionVB.exe "$(TargetPath).manifest" 5.1.2600.0- När du skapar projektet ändrar det här kommandot den lägsta versionen av operativsystemet i programmanifestet till 5.1.2600.0. - Makrot - $(TargetPath)uttrycker den fullständiga sökvägen för den körbara fil som skapas. Anger- $(TargetPath).manifestdärför programmanifestet som skapats i bin-katalogen . När du publicerar kopieras det här manifestet till den publiceringsplats som du angav tidigare.
- Publicera projektet igen. Gå till sidan Publicera och klicka på Publicera nu. - Visa manifestet igen. Om du vill visa manifestet går du till publiceringskatalogen, högerklickar på filen och klickar på Öppna med och sedan Välj programmet från en listaoch klickar sedan på Anteckningar. - Versionen bör nu läsa: - <os majorVersion="5" minorVersion="1" buildNumber="2600" servicePackMajor="0" />