Dies liegt daran, dass die ausgeführten Batch-Dateien Set
zum Einstellen der Umgebungsvariablen verwendet werden (dies C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\vcvars64.bat
wird beim Ausführen ausgeführt vcvarsall x64
).
Legt jedoch Set
nur Variablen für die aktuelle Befehlszeilensitzung fest. Sie müssen es verwenden Setx
, damit es zwischen Befehlszeilen-Sitzungen "hängen bleibt".
Weitere Informationen erhalten Sie in den folgenden Fragen und Antworten zu SU:
- Was sind PATH und andere Umgebungsvariablen und wie kann ich sie einstellen oder verwenden?
- Umgebungsvariable haftet nicht
- Legen Sie Umgebungsvariablen über die Befehlszeile fest - und machen Sie sie global
- Was ist der Unterschied zwischen SETX und SET bei Umgebungsvariablen in Windows?
Nach Kommentaren bearbeiten:
"Die gesetzten Befehle befanden sich jedoch im Standardskript."
VCVarsAll soll ausgeführt werden, um die Umgebung für den einzelnen Build / die Aktion, die Sie ausführen möchten, einzurichten, nicht um sie dauerhaft festzulegen.
Visual Studio installiert bestimmte "Eingabeaufforderungs" -Einträge für den Zugriff auf die Tools (Über Ihren Link: "... und wählen Sie dann eine der systemeigenen Eingabeaufforderungen des Werkzeugs oder des Tools"). Diese speziellen Eingabeaufforderungsbefehle führen ein / die Batchdatei, um sicherzustellen, dass die Dinge richtig eingestellt sind, wenn Sie diese Verknüpfungen verwenden.
Sie können diese Verknüpfungen mit Ihren eigenen replizieren ...
Erstellen Sie eine neue Verknüpfung zu cmd /k "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x64
, die die Batchdatei ausführt (unter Verwendung von x64 als Umgebungsoption), und halten Sie das Befehlszeilenfenster geöffnet.
Verwenden Sie dann diese Verknüpfung, um die Eingabeaufforderung zu öffnen, wenn Sie die Tools verwenden möchten.