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.
Om du vill berätta för Visual Studio hur du skapar källkoden i ett projekt med öppen mapp lägger du till en tasks.vs.json fil. Du kan definiera valfri godtycklig aktivitet här och sedan anropa den från snabbmenyn i Solution Explorer . CMake-projekt använder inte den här filen eftersom alla byggkommandon anges i CMakeLists.txt. För andra byggsystem än CMake ärtasks.vs.json där du kan ange byggkommandon och anropa byggskript. Allmän information om hur du användertasks.vs.jsonfinns i Anpassa bygg- och felsökningsuppgifter för utveckling av "Öppna mapp".
En aktivitet har en type egenskap som kan ha ett av fyra värden: default, launch, remote, eller msbuild. De flesta uppgifter bör använda launch om inte en fjärranslutning krävs.
Standardegenskaper
Standardegenskaperna är tillgängliga för alla typer av uppgifter:
| Fastighet | Typ | Beskrivning |
|---|---|---|
taskLabel |
snöre | (Krävs.) Anger den aktivitetsetikett som används i användargränssnittet. |
appliesTo |
snöre | (Krävs.) Anger vilka filer som kommandot kan utföras på. Jokertecken kan användas, till exempel: "", ".cpp", "/*.txt" |
contextType |
snöre | Tillåtna värden: "anpassad", "bygg", "rensa", "återbygg". Avgör var i snabbmenyn aktiviteten ska visas. Standardvärdet är "custom". |
output |
snöre | Anger en utdatatagg för din uppgift. |
inheritEnvironments |
samling | Anger en uppsättning miljövariabler som ärvts från flera källor. Du kan definiera variabler i filer som CMakeSettings.json eller CppProperties.json och göra dem tillgängliga för aktivitetskontexten.
Visual Studio 16.4:: Ange miljövariabler per uppgift med hjälp av syntaxen env.VARIABLE_NAME . Om du vill ta bort en variabel ställer du in den på "null". |
passEnvVars |
booleskt | Anger om ytterligare miljövariabler ska inkluderas i aktivitetskontexten. Dessa variabler skiljer sig från de som definieras med egenskapen envVars . Standardvärdet är "true". |
Startinställningar
När aktivitetstypen är launchär dessa egenskaper tillgängliga:
| Fastighet | Typ | Beskrivning |
|---|---|---|
command |
snöre | Anger den fullständiga sökvägen för processen eller skriptet som ska startas. |
args |
samling | Anger en kommaavgränsad lista med argument som skickas till kommandot. |
launchOption |
snöre | Tillåtna värden: "None", "ContinueOnError","IgnoreError". Anger hur du fortsätter med kommandot när det finns fel. |
workingDirectory |
snöre | Anger den katalog där kommandot ska köras. Som standard används projektets aktuella arbetskatalog. |
customLaunchCommand |
snöre | Anger en global omfångsanpassning som ska tillämpas innan kommandot körs. Användbart för att ange miljövariabler som %PATH%. |
customLaunchCommandArgs |
snöre | Anger argument till customLaunchCommand. (Kräver customLaunchCommand.) |
env |
Anger en nyckel/värde-lista över anpassade miljövariabler. Till exempel "myEnv": "myVal" | |
commands |
samling | Anger en lista över kommandon som ska anropas i ordning. |
Exempel
Följande uppgifter anropar make.exe när en makefile finns i mappen och Mingw64 miljön har definierats som CppProperties.json, som visas i CppProperties.json schemareferens:
{
"version": "0.2.1",
"tasks": [
{
"taskLabel": "gcc make",
"appliesTo": "*.cpp",
"type": "launch",
"contextType": "custom",
"inheritEnvironments": [
"Mingw64"
],
"command": "make"
},
{
"taskLabel": "gcc clean",
"appliesTo": "*.cpp",
"type": "launch",
"contextType": "custom",
"inheritEnvironments": [
"Mingw64"
],
"command": "make",
"args": ["clean"]
}
]
}
Dessa uppgifter kan anropas från snabbmenyn när du högerklickar på en .cpp fil i Solution Explorer.
Fjärregenskaper
Fjärruppgifter aktiveras när du installerar Linux-utvecklingen med C++-arbetsbelastningen och lägger till en anslutning till en fjärrdator med hjälp av Visual Studio Connection Manager. En fjärraktivitet kör kommandon på ett fjärrsystem och kan även kopiera filer till den.
När aktivitetstypen är remoteär dessa egenskaper tillgängliga:
| Fastighet | Typ | Beskrivning |
|---|---|---|
remoteMachineName |
snöre | Namnet på fjärrdatorn. Måste matcha ett datornamn i Anslutningshanteraren. |
command |
snöre | Kommandot som ska skickas till fjärrdatorn. Som standard körs kommandon i katalogen $HOME på fjärrsystemet. |
remoteWorkingDirectory |
snöre | Den aktuella arbetskatalogen på fjärrdatorn. |
localCopyDirectory |
snöre | Den lokala katalogen som ska kopieras till fjärrdatorn. Standardvärdet är den aktuella arbetskatalogen. |
remoteCopyDirectory |
snöre | Katalogen på fjärrdatorn som localCopyDirectory kopieras till. |
remoteCopyMethod |
snöre | Den metod som ska användas för kopiering. Tillåtna värden: "none", "sftp", "rsync". rsync rekommenderas för stora projekt. |
remoteCopySourcesOutputVerbosity |
snöre | Tillåtna värden: "Normal","Utförlig","Diagnostik". |
rsyncCommandArgs |
snöre | Standardinställningen är "-t --delete". |
remoteCopyExclusionList |
samling | Kommaavgränsad lista över filer i localCopyDirectory som ska undantas från kopieringsåtgärder. |
Exempel
Följande uppgift visas på snabbmenyn när du högerklickar på main.cpp i Solution Explorer. Det beror på en fjärrdator som heter ubuntu i Anslutningshanteraren. Uppgiften kopierar den aktuella öppna mappen i Visual Studio till sample katalogen på fjärrdatorn och anropar sedan g++ för att skapa programmet.
{
"version": "0.2.1",
"tasks": [
{
"taskLabel": "Build",
"appliesTo": "main.cpp",
"type": "remote",
"contextType": "build",
"command": "g++ main.cpp",
"remoteMachineName": "ubuntu",
"remoteCopyDirectory": "~/sample",
"remoteCopyMethod": "sftp",
"remoteWorkingDirectory": "~/sample/hello",
"remoteCopySourcesOutputVerbosity": "Verbose"
}
]
}
MSBuild-egenskaper
När aktivitetstypen är msbuildär dessa egenskaper tillgängliga:
| Fastighet | Typ | Beskrivning |
|---|---|---|
verbosity |
snöre | Anger hur detaljerad utskriften ska vara för MSBuild-projektets byggresultat. Tillåtna värden: "Quiet", "Minimal", "Normal", "Detailed", "Diagnostic". |
toolsVersion |
snöre | Anger verktygsuppsättningsversionen för att skapa projektet, till exempel "2.0", "3.5", "4.0", "Current". Standardvärdet är "Nuvarande". |
globalProperties |
objekt | Anger en nyckel/värde-lista över de globala egenskaper som ska skickas till projektet, till exempel "Konfiguration":"Release" |
properties |
objekt | Anger en nyckel-värde-lista med projektunika tilläggsegenskaper. |
targets |
samling | Anger listan över mål som ska anropas i ordning för projektet. Projektets standardmål används om inget anges. |