Boar geil.
OK, -h sollte man auch nicht benutzen, aber -l= tut es auch (ohne die "nix gefunden"-Fehlermeldung).
Code:
cd /d "%ProjectPath%"
call "C:\Program Files (x86)\Embarcadero\Studio\22.0\bin\rsvars.bat"
"%
BDS%\bin\GetItCmd.exe" -l=
"%FrameworkDir%\MSBuild.exe" /nologo /target:Build /property:Platform=
Win32 /property:Config=Debug "%ProjectFile%"
Dann kann ich nun endlich den alten Code aus meinem FinalBuilderScript rauswerfen.
* HKEY_CURRENT_USER\SOFTWARE\Embarcadero\
BDS\22.0\Environment Variables mit dr reg.exe in einen Datei exportieren
* vorne ein [xyz] einfügen
* dann mit der INI-Funktion des FinalBuilders lesen und das als Umbegungsvariablen im
FB setzen (könnte man auch pervers als Parameter an die MSBuild-Action übergeben)
* die MSBuild-Actions will ich eh demnächt durch manuelle Aufrufe der MSBuild.exe ersetzen (Run DOS Command / BatchFile)
* dann kann ich die GetItCmd und RSVars vor der MSBuild ausführen und muß nichts mehr manuell parsen
* jetzt muß ich nur noch das perverse Parsen der rsvars.bat ersetzen
In einer Batch kann man ja einfach CALL und sie ausführen lassen.
Aber desetzte Variablen einer Batch als Umgebungsvariable zurück in den FinalBuilder, geht nicht.
Ich lese die Datei "böse" als INI ein, Replace den Batch-Schrott und setzte es per VBScript als Umgebungsvariablen im FinalBuilder. (andere fügen ECHO an solche Dateien an und Parsen die Ausgabe dann im FinalBuilder)