ist jetzt verfügbar! Lesen Sie über die neuen Funktionen und Fehlerbehebungen vom November.

Verwendung von C++ und WSL in VS Code

In diesem Tutorial konfigurieren Sie Visual Studio Code für die Verwendung des C++-Compilers GCC (g++) und des GDB-Debuggers unter Ubuntu im Windows-Subsystem for Linux (WSL). GCC steht für GNU Compiler Collection; GDB ist der GNU-Debugger. WSL ist eine Linux-Umgebung unter Windows, die direkt auf der Maschinenhardware ausgeführt wird, nicht in einer virtuellen Maschine.

Hinweis: Ein Großteil dieses Tutorials ist für die Arbeit mit C++ und VS Code direkt auf einem Linux-Computer anwendbar.

Visual Studio Code unterstützt die direkte Arbeit in WSL mit der WSL-Erweiterung. Wir empfehlen diesen Modus der WSL-Entwicklung, bei dem alle Ihre Quellcodedateien neben dem Compiler auf der Linux-Distribution gehostet werden. Weitere Hintergründe finden Sie unter VS Code Remote Development.

Nach Abschluss dieses Tutorials sind Sie bereit, Ihr eigenes C++-Projekt zu erstellen und zu konfigurieren sowie die VS Code-Dokumentation zu weiteren Informationen zu seinen zahlreichen Funktionen zu durchsuchen. Dieses Tutorial lehrt Sie nicht GCC, Linux oder die C++-Sprache. Für diese Themen gibt es viele gute Ressourcen im Web.

Wenn Sie Probleme haben, können Sie gerne ein Problem für dieses Tutorial im VS Code-Dokumentationsrepository melden.

Voraussetzungen

Um dieses Tutorial erfolgreich abzuschließen, müssen Sie die folgenden Schritte ausführen

  1. Installieren Sie Visual Studio Code.

  2. Installieren Sie die WSL-Erweiterung.

  3. Installieren Sie das Windows-Subsystem for Linux und verwenden Sie dann die Links auf derselben Seite, um Ihre bevorzugte Linux-Distribution zu installieren. Dieses Tutorial verwendet Ubuntu. Denken Sie während der Installation an Ihr Linux-Benutzerpasswort, da Sie es für die Installation zusätzlicher Software benötigen.

Richten Sie Ihre Linux-Umgebung ein

  1. Öffnen Sie die Bash-Shell für WSL. Wenn Sie eine Ubuntu-Distribution installiert haben, geben Sie "Ubuntu" in das Windows-Suchfeld ein und klicken Sie dann in der Ergebnisliste darauf. Für Debian geben Sie "Debian" usw. ein.

    Ubuntu in Start Menu

    Die Shell wird mit einer Eingabeaufforderung angezeigt, die standardmäßig aus Ihrem Benutzernamen und Computernamen besteht und Sie in Ihr Home-Verzeichnis bringt. Für Ubuntu sieht es so aus

    Bash Shell

  2. Erstellen Sie ein Verzeichnis namens projects und darunter ein Unterverzeichnis namens helloworld

    mkdir projects
    cd projects
    mkdir helloworld
    
  3. Obwohl Sie VS Code zum Bearbeiten Ihres Quellcodes verwenden, kompilieren Sie den Quellcode unter Linux mit dem g++-Compiler. Sie debuggen auch unter Linux mit GDB. Diese Tools sind unter Ubuntu nicht standardmäßig installiert, daher müssen Sie sie installieren. Glücklicherweise ist diese Aufgabe ziemlich einfach!

  4. Führen Sie von der WSL-Eingabeaufforderung aus zuerst apt-get update aus, um die Ubuntu-Paketlisten zu aktualisieren. Eine veraltete Distribution kann manchmal Versuche zur Installation neuer Pakete beeinträchtigen.

    sudo apt-get update
    

    Wenn Sie möchten, können Sie sudo apt-get update && sudo apt-get dist-upgrade ausführen, um auch die neuesten Versionen der Systempakete herunterzuladen, dies kann jedoch je nach Ihrer Verbindungsgeschwindigkeit erheblich länger dauern.

  5. Installieren Sie von der Eingabeaufforderung die GNU-Compiler-Tools und den GDB-Debugger, indem Sie Folgendes eingeben

    sudo apt-get install build-essential gdb
    
  6. Überprüfen Sie, ob die Installation erfolgreich war, indem Sie g++ und gdb lokalisieren. Wenn die Dateinamen nicht vom whereis-Befehl zurückgegeben werden, versuchen Sie, den Update-Befehl erneut auszuführen.

    whereis g++
    whereis gdb
    

Hinweis: Die Einrichtungsschritte für die Installation des g++-Compilers und des GDB-Debuggers gelten, wenn Sie direkt auf einem Linux-Computer und nicht in WSL arbeiten. Die Ausführung von VS Code in Ihrem helloworld-Projekt sowie die Schritte zum Bearbeiten, Erstellen und Debuggen sind dieselben.

VS Code in WSL ausführen

Navigieren Sie zu Ihrem helloworld-Projektordner und starten Sie VS Code vom WSL-Terminal aus mit code .

cd $HOME/projects/helloworld
code .

Sie sehen eine Meldung über "VS Code Server wird installiert". VS Code lädt einen kleinen Server unter Linux herunter und installiert ihn, mit dem dann das Desktop-VS Code kommuniziert. VS Code wird dann gestartet und der Ordner helloWorld geöffnet. Der Datei-Explorer zeigt an, dass VS Code nun im Kontext von WSL ausgeführt wird, mit der Titelleiste WSL: Ubuntu.

File Explorer in WSL

Sie können den Remote-Kontext auch an der Statusleiste erkennen.

Remote context in the Status bar

Wenn Sie auf das Element der Remote-Statusleiste klicken, sehen Sie ein Dropdown-Menü mit Remote-Befehlen, die für die Sitzung relevant sind. Wenn Sie beispielsweise Ihre in WSL ausgeführte Sitzung beenden möchten, können Sie den Befehl Remote-Verbindung schließen aus dem Dropdown-Menü auswählen. Die Ausführung von code . von Ihrer WSL-Eingabeaufforderung aus startet VS Code erneut in WSL.

Der Befehl code . öffnete VS Code im aktuellen Arbeitsordner, der zu Ihrem "Arbeitsbereich" wird. Während Sie das Tutorial durchlaufen, werden Sie drei Dateien sehen, die in einem Ordner .vscode im Arbeitsbereich erstellt werden

  • c_cpp_properties.json (Compilerpfad- und IntelliSense-Einstellungen)
  • tasks.json (Build-Anweisungen)
  • launch.json (Debugger-Einstellungen)

Eine Quellcodedatei hinzufügen

Wählen Sie in der Titelleiste des Datei-Explorers die Schaltfläche Neue Datei und benennen Sie die Datei helloworld.cpp.

New File title bar button

Installieren Sie die C/C++-Erweiterung

Sobald Sie die Datei erstellen und VS Code erkennt, dass es sich um eine C++-Datei handelt, werden Sie möglicherweise aufgefordert, die Microsoft C/C++-Erweiterung zu installieren, falls Sie diese noch nicht installiert haben.

C++ extension notification

Wählen Sie Installieren und dann Neustart erforderlich, wenn die Schaltfläche in der Erweiterungsansicht angezeigt wird, um die Installation der C/C++-Erweiterung abzuschließen.

Wenn Sie bereits lokal installierte C/C++-Sprach-Erweiterungen in VS Code haben, müssen Sie zur Erweiterungsansicht (⇧⌘X (Windows, Linux Ctrl+Shift+X)) wechseln und diese Erweiterungen in WSL installieren. Lokal installierte Erweiterungen können in WSL installiert werden, indem Sie die Schaltfläche In WSL installieren und dann Neustart erforderlich auswählen.

Install in WSL button

Fügen Sie den Hello-World-Quellcode hinzu

Fügen Sie nun diesen Quellcode ein

#include <iostream>
#include <vector>
#include <string>

using namespace std;

int main()
{
   vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};

   for (const string& word : msg)
   {
      cout << word << " ";
   }
   cout << endl;
}

Drücken Sie nun ⌘S (Windows, Linux Ctrl+S), um die Datei zu speichern. Beachten Sie, wie die von Ihnen gerade hinzugefügte Datei im Datei-Explorer (⇧⌘E (Windows, Linux Ctrl+Shift+E)) in der Seitenleiste von VS Code angezeigt wird

File Explorer

Sie können auch Auto Save aktivieren, um Ihre Dateiänderungen automatisch zu speichern, indem Sie im Hauptmenü Datei die Option Auto Save auswählen.

Die Aktivitätsleiste ganz links ermöglicht es Ihnen, verschiedene Ansichten zu öffnen, z. B. Suchen, Quellcodeverwaltung und Ausführen. Die Ansicht Ausführen werden Sie später in diesem Tutorial behandeln. Weitere Informationen zu den anderen Ansichten finden Sie in der Dokumentation zur Benutzeroberfläche von VS Code.

IntelliSense erkunden

Hovern Sie in Ihrer neuen Datei helloworld.cpp über vector oder string, um Typinformationen zu sehen. Beginnen Sie nach der Deklaration der Variablen msg mit der Eingabe von msg., so wie Sie es beim Aufruf einer Member-Funktion tun würden. Sie sollten sofort eine Vervollständigungsliste sehen, die alle Member-Funktionen anzeigt, und ein Fenster, das die Typinformationen für das Objekt msg anzeigt

Statement completion IntelliSense

Sie können die Taste Tab drücken, um das ausgewählte Mitglied einzufügen; wenn Sie dann die öffnende Klammer hinzufügen, sehen Sie Informationen zu den Argumenten, die die Funktion benötigt.

helloworld.cpp ausführen

Denken Sie daran, dass die C++-Erweiterung den C++-Compiler verwendet, den Sie auf Ihrem Rechner installiert haben, um Ihr Programm zu erstellen. Stellen Sie sicher, dass Sie einen C++-Compiler installiert haben, bevor Sie versuchen, helloworld.cpp in VS Code auszuführen und zu debuggen.

  1. Öffnen Sie helloworld.cpp, sodass es die aktive Datei ist.

  2. Drücken Sie die Wiedergabetaste oben rechts im Editor.

    Screenshot of helloworld.cpp and play button

  3. Wählen Sie g++ build and debug active file aus der Liste der auf Ihrem System erkannten Compiler.

    C++ debug configuration dropdown

Sie werden nur beim ersten Ausführen von helloworld.cpp aufgefordert, einen Compiler auszuwählen. Dieser Compiler wird als "Standard"-Compiler in der Datei tasks.json festgelegt.

  1. Nachdem der Build erfolgreich war, wird die Ausgabe Ihres Programms im integrierten Terminal angezeigt.

    screenshot of program output

Wenn Sie Ihr Programm zum ersten Mal ausführen, erstellt die C++-Erweiterung tasks.json, die Sie im .vscode-Ordner Ihres Projekts finden. tasks.json speichert Build-Konfigurationen.

Ihre neue Datei tasks.json sollte der folgenden JSON-Datei ähneln:

{
  "version": "2.0.0",
  "tasks": [
    {
      "type": "shell",
      "label": "C/C++: g++ build active file",
      "command": "/usr/bin/g++",
      "args": ["-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}"],
      "options": {
        "cwd": "/usr/bin"
      },
      "problemMatcher": ["$gcc"],
      "group": {
        "kind": "build",
        "isDefault": true
      },
      "detail": "Task generated by Debugger."
    }
  ]
}

Hinweis: Weitere Informationen zu tasks.json-Variablen finden Sie in der Variablenreferenz.

Die Einstellung command gibt das auszuführende Programm an; in diesem Fall g++. Das Array args gibt die Befehlszeilenargumente an, die an g++ übergeben werden. Diese Argumente müssen in der vom Compiler erwarteten Reihenfolge angegeben werden.

Diese Aufgabe weist g++ an, die aktive Datei (${file}) zu nehmen, sie zu kompilieren und eine ausführbare Datei im aktuellen Verzeichnis (${fileDirname}) mit demselben Namen wie die aktive Datei, aber ohne Erweiterung (${fileBasenameNoExtension}) zu erstellen, was für unser Beispiel helloworld ergibt.

Der Wert label ist das, was Sie in der Aufgabenliste sehen werden; Sie können diesen beliebig benennen.

Der Wert detail ist die Beschreibung der Aufgabe in der Aufgabenliste. Es wird dringend empfohlen, diesen Wert umzubenennen, um ihn von ähnlichen Aufgaben zu unterscheiden.

Von nun an liest die Wiedergabetaste aus tasks.json, um zu ermitteln, wie Ihr Programm erstellt und ausgeführt werden soll. Sie können mehrere Build-Aufgaben in tasks.json definieren, und die als Standard markierte Aufgabe wird von der Wiedergabetaste verwendet. Falls Sie den Standardcompiler ändern müssen, können Sie Tasks: Configure default build task ausführen. Alternativ können Sie die Datei tasks.json ändern und dieses Segment entfernen, indem Sie es ersetzen

    "group": {
        "kind": "build",
        "isDefault": true
    },

durch dieses:

    "group": "build",

Ändern von tasks.json

Sie können Ihre tasks.json ändern, um mehrere C++-Dateien zu kompilieren, indem Sie ein Argument wie "${workspaceFolder}/*.cpp" anstelle von "${file}" verwenden. Dies kompiliert alle .cpp-Dateien in Ihrem aktuellen Ordner. Sie können auch den Ausgabedateinamen ändern, indem Sie "${fileDirname}/${fileBasenameNoExtension}" durch einen fest codierten Dateinamen ersetzen (z. B. 'helloworld.out').

helloworld.cpp debuggen

Um Ihren Code zu debuggen,

  1. Kehren Sie zu helloworld.cpp zurück, sodass es die aktive Datei ist.
  2. Legen Sie einen Haltepunkt fest, indem Sie in den Rand des Editors klicken oder F9 für die aktuelle Zeile verwenden. Screenshot eines Haltepunkts in helloworld.cpp
  3. Wählen Sie aus dem Dropdown-Menü neben der Wiedergabetaste Debug C/C++ File aus. Screenshot des Dropdown-Menüs der Wiedergabetaste
  4. Wählen Sie C/C++: g++ build and debug active file aus der Liste der auf Ihrem System erkannten Compiler (Sie werden nur aufgefordert, einen Compiler auszuwählen, wenn Sie helloworld.cpp zum ersten Mal ausführen oder debuggen). C++ Debug-Konfigurations-Dropdown

Die Wiedergabetaste hat zwei Modi: C/C++-Datei ausführen und C/C++-Datei debuggen. Sie wird standardmäßig auf den zuletzt verwendeten Modus eingestellt. Wenn Sie das Debug-Symbol auf der Wiedergabetaste sehen, können Sie die Wiedergabetaste zum Debuggen auswählen, anstatt das Element im Dropdown-Menü auszuwählen.

Den Debugger erkunden

Bevor Sie mit dem schrittweisen Durchgehen des Codes beginnen, nehmen Sie sich einen Moment Zeit, um mehrere Änderungen in der Benutzeroberfläche zu bemerken:

  • Das integrierte Terminal erscheint am unteren Rand des Quellcode-Editors. Im Tab Debug Output sehen Sie eine Ausgabe, die anzeigt, dass der Debugger läuft.

  • Der Editor hebt Zeile 12 hervor, was ein Breakpoint ist, den Sie vor dem Starten des Debuggers gesetzt haben

    Initial breakpoint

  • Die Ansicht Run and Debug auf der linken Seite zeigt Debug-Informationen an. Ein Beispiel sehen Sie später im Tutorial.

  • Oben im Code-Editor erscheint eine Debugging-Steuerleiste. Sie können diese durch Ziehen der Punkte auf der linken Seite auf dem Bildschirm verschieben.

    Debugging controls

Wenn Sie bereits eine launch.json-Datei in Ihrem Arbeitsbereich haben, liest die Wiedergabetaste daraus, wenn sie festlegt, wie Ihre C++-Datei ausgeführt und debuggt werden soll. Wenn Sie keine launch.json haben, erstellt die Wiedergabetaste eine temporäre "Schnell-Debug"-Konfiguration auf der Fliege, wodurch die Notwendigkeit einer launch.json vollständig entfällt!

Den Code schrittweise durchgehen

Jetzt können Sie mit dem schrittweisen Durchgehen des Codes beginnen.

  1. Klicken oder drücken Sie auf das Symbol Step over in der Debugging-Steuerleiste.

    Step over button

    Dies versetzt die Programmausführung bis zur ersten Zeile der for-Schleife und überspringt alle internen Funktionsaufrufe innerhalb der Klassen vector und string, die beim Erstellen und Initialisieren der Variablen msg aufgerufen werden. Beachten Sie die Änderung im Fenster Variablen auf der Seite.

    Debugging windows

  2. Drücken Sie erneut Step over, um zur nächsten Anweisung in diesem Programm zu gelangen (wobei aller interne Code übersprungen wird, der zur Initialisierung der Schleife ausgeführt wird). Jetzt zeigt das Fenster Variablen Informationen über die Schleifenvariablen an.

  3. Drücken Sie erneut Schritt über, um die Anweisung cout auszuführen. (Beachten Sie, dass die C++-Erweiterung keine Ausgabe in der Debug-Konsole ausgibt, bis die letzte cout-Anweisung ausgeführt wird.)

  4. Wenn Sie möchten, können Sie weiterhin Step over drücken, bis alle Wörter im Vektor auf der Konsole ausgegeben wurden. Aber wenn Sie neugierig sind, versuchen Sie, die Schaltfläche Step Into zu drücken, um den Quellcode in der C++-Standardbibliothek schrittweise durchzugehen!

    Breakpoint in gcc standard library header

    Um zu Ihrem eigenen Code zurückzukehren, können Sie entweder mehrmals Step over drücken. Eine andere Möglichkeit ist, einen Haltepunkt in Ihrem Code zu setzen, indem Sie zum Tab helloworld.cpp im Code-Editor wechseln, den Einfügepunkt irgendwo in der cout-Anweisung innerhalb der Schleife platzieren und F9 drücken. Ein roter Punkt erscheint in der linken Spalte, um anzuzeigen, dass auf dieser Zeile ein Haltepunkt gesetzt wurde.

    Breakpoint in main

    Drücken Sie dann F5, um die Ausführung ab der aktuellen Zeile in der Standardbibliotheksdatei zu starten. Die Ausführung wird bei cout unterbrochen. Wenn Sie möchten, können Sie erneut F9 drücken, um den Haltepunkt zu deaktivieren.

    Wenn die Schleife abgeschlossen ist, können Sie die Ausgabe in der Registerkarte Debug-Konsole des integrierten Terminals zusammen mit einigen anderen Diagnoseinformationen sehen, die von GDB ausgegeben werden.

    Debug console display

Eine Überwachung (Watch) einrichten

Um den Wert einer Variablen während der Ausführung Ihres Programms zu verfolgen, legen Sie eine Überwachung für die Variable fest.

  1. Platzieren Sie den Einfügepunkt innerhalb der Schleife. Klicken Sie im Fenster Überwachung auf das Pluszeichen und geben Sie in das Textfeld word ein, den Namen der Schleifenvariable. Betrachten Sie nun das Überwachungsfenster, während Sie die Schleife durchlaufen.

    Watch window

  2. Um den Wert einer beliebigen Variablen schnell anzuzeigen, während die Ausführung bei einem Haltepunkt pausiert ist, können Sie mit der Maus darüber fahren.

    Mouse hover

Als Nächstes erstellen Sie eine tasks.json-Datei, die VS Code mitteilt, wie das Programm kompiliert werden soll. Diese Aufgabe ruft den g++-Compiler auf, um eine ausführbare Datei aus dem Quellcode zu erstellen.

Es ist wichtig, dass helloworld.cpp im Editor geöffnet ist, da der nächste Schritt die aktive Datei im Editor als Kontext verwendet, um die Build-Aufgabe im nächsten Schritt zu erstellen.

Debugging mit launch.json anpassen

Wenn Sie mit der Wiedergabetaste oder F5 debuggen, erstellt die C++-Erweiterung eine dynamische Debug-Konfiguration im Handumdrehen.

Es gibt Fälle, in denen Sie Ihre Debug-Konfiguration anpassen möchten, z. B. das Angeben von Argumenten, die zur Laufzeit an das Programm übergeben werden sollen. Sie können benutzerdefinierte Debug-Konfigurationen in einer Datei launch.json definieren.

Um launch.json zu erstellen, wählen Sie im Dropdown-Menü der Wiedergabetaste Add Debug Configuration aus.

Add debug configuration play button menu

Sie sehen dann ein Dropdown-Menü mit verschiedenen vordefinierten Debugging-Konfigurationen. Wählen Sie g++ build and debug active file.

C++ debug configuration dropdown

VS Code erstellt eine Datei launch.json, die ungefähr so aussieht:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "C/C++: g++ build and debug active file",
      "type": "cppdbg",
      "request": "launch",
      "program": "${fileDirname}/${fileBasenameNoExtension}",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "environment": [],
      "externalConsole": false,
      "MIMode": "gdb",
      "miDebuggerPath": "/usr/bin/gdb",
      "setupCommands": [
        {
          "description": "Enable pretty-printing for gdb",
          "text": "-enable-pretty-printing",
          "ignoreFailures": true
        }
      ],
      "preLaunchTask": "C/C++: g++ build active file"
    }
  ]
}

In der obigen JSON gibt program das Programm an, das Sie debuggen möchten. Hier ist es auf den Ordner der aktiven Datei ${fileDirname} und den aktiven Dateinamen ohne Erweiterung ${fileBasenameNoExtension} eingestellt, was, wenn helloworld.cpp die aktive Datei ist, helloworld ergibt. Die Eigenschaft args ist ein Array von Argumenten, die zur Laufzeit an das Programm übergeben werden.

Standardmäßig fügt die C++-Erweiterung keine Haltepunkte in Ihren Quellcode ein und der Wert stopAtEntry ist auf false gesetzt.

Ändern Sie den Wert stopAtEntry auf true, damit der Debugger bei der Methode main anhält, wenn Sie mit dem Debugging beginnen.

Von nun an lesen die Wiedergabetaste und F5 aus Ihrer Datei launch.json, wenn Sie Ihr Programm zum Debuggen starten.

C/C++-Konfigurationen

Wenn Sie mehr Kontrolle über die C/C++-Erweiterung wünschen, können Sie eine Datei c_cpp_properties.json erstellen, mit der Sie Einstellungen wie den Pfad zum Compiler, Include-Pfade, den C++-Standard (Standard ist C++17) und mehr ändern können.

Sie können die C/C++-Konfigurationsoberfläche anzeigen, indem Sie den Befehl C/C++: Edit Configurations (UI) über die Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) ausführen.

Command Palette

Dies öffnet die Seite C/C++ Configurations. Wenn Sie hier Änderungen vornehmen, schreibt VS Code diese in eine Datei namens c_cpp_properties.json im Ordner .vscode.

Command Palette

Sie müssen die Einstellung Include path nur dann ändern, wenn Ihr Programm Header-Dateien enthält, die sich nicht in Ihrem Arbeitsbereich oder im Standard-Bibliotheksverzeichnis befinden.

Visual Studio Code speichert diese Einstellungen in .vscode/c_cpp_properties.json. Wenn Sie diese Datei direkt öffnen, sollte sie ungefähr so aussehen:

{
  "configurations": [
    {
      "name": "Linux",
      "includePath": ["${workspaceFolder}/**"],
      "defines": [],
      "compilerPath": "/usr/bin/gcc",
      "cStandard": "c11",
      "cppStandard": "c++17",
      "intelliSenseMode": "clang-x64"
    }
  ],
  "version": 4
}

Schließen der WSL-Sitzung

Wenn Sie mit der Arbeit in WSL fertig sind, können Sie Ihre Remote-Sitzung mit dem Befehl Remote-Verbindung schließen schließen, der im Hauptmenü Datei und in der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) verfügbar ist. Dadurch wird VS Code neu gestartet und lokal ausgeführt. Sie können Ihre WSL-Sitzung einfach über die Liste Datei > Zuletzt geöffnet wieder öffnen, indem Sie Ordner mit dem Suffix [WSL] auswählen.

Nächste Schritte

  • Erkunden Sie den VS Code Benutzerhandbuch.
  • Überprüfen Sie die Übersicht über die C++-Erweiterung.
  • Erstellen Sie einen neuen Arbeitsbereich, kopieren Sie Ihre .json-Dateien hinein, passen Sie die notwendigen Einstellungen für den neuen Arbeitsbereichspfad, den Programmnamen usw. an und beginnen Sie mit dem Coden!
© . This site is unofficial and not affiliated with Microsoft.