10

Ich habe ein Visual Studio-Projekt mit mehreren benutzerdefinierten Build-Schritten darin, aber einige von ihnen können einfach nicht ausgeführt werden. Es gibt keine Fehler und keine Warnungen, und gemäß den Build-Logs laufen sie , aber sie sind definitiv nicht.Warum werden meine benutzerdefinierten Build-Schritte in Visual Studio 2010 nicht ausgeführt?

Es wurde in älteren Versionen von Visual Studio arbeiten alle, aber es jetzt läuft da falsch in Visual Studio 2010.

Antwort

18

Der Grund ist es in Ermangelung eines solchen andere benutzerdefinierten Schritt im selben Projekt gibt es die eine Batch-Aufruf ist Datei, wie folgt aus:

Befehlszeile: buildsomething.bat something.h
Beschreibung: Der Aufbau etwas
Ausgänge: something.h

Visual Studio 2010 verkettet alle benutzerdefinierten Erstellungsbefehle in einer einzelnen Stapeldatei, die dann ausgeführt wird. Wenn eine Stapeldatei eine andere Stapeldatei ausführt, gibt Windows die Steuerung nicht an die erste Stapeldatei zurück. Es ist wie ein Goto, kein Funktionsaufruf. Also, das Problem zu beheben, müssen Sie call wie folgt verwenden:

Befehlszeile: Anruf buildsomething.bat something.h

call macht den Ablauf der Steuerung Rückkehr in Visual Studio Batch Datei, und damit können Sie Ihre anderen benutzerdefinierten Build-Schritte ausführen.

(Ich bin meine eigene Frage zu beantworten, so dass künftige Forscher die Antwort finden können.)

0

Stellen Sie sicher, dass unter zwei Dateien in einem guten Zustand ist. Vergleichen Sie diese Dateien besser mit einem funktionierenden VS-Setup.

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets 

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets 
Verwandte Themen