두 개의 실행 파일을 빌드해야하는 프로젝트가 있습니다. 하나는 Delphi XE2에서, 다른 하나는 XE3에서 빌드합니다. 각 버전 (즉, XE2 용 스크립트와 XE3 용 스크립트)을 빌드하는 빌드 스크립트가 있습니다.MSBuild 및 여러 델파이 버전
실행 한 IDE의 마지막 버전에 대한 빌드 스크립트를 실행하면 모두 정상적으로 작동합니다 (예 : Delphi XE2 실행, 앱 빌드, XE2 빌드 스크립트 실행).
그러나 IDE의 다른 버전을 실행하는 빌드 스크립트를 실행하면 내 응용 프로그램이 시작되면 바로 AV를 얻을 수 있습니다 (즉, Delphi XE2를 실행하고 빌드 된 응용 프로그램, XE3 빌드 스크립트 실행).
빌드 스크립트에 대한 내용이 IDE에서 캐시/수정되고있는 것처럼 보이며 빌드하려는 버전의 해당 데이터를 복원해야합니다. 저는 .dproj로 시도했지만 행운은 없습니다.
또는 폼 리소스를로드 할 수 있습니다. 두 에디션 모두 IDE의 경우 시작시 존재하지 않는 속성으로 인해 오류가 표시됩니다. 그렇다면 모든 .fmx 파일의 여러 버전을 유지하지 않고도이 문제를 해결할 수있는 쉬운 방법이 있습니까? 여기
은 샘플 빌드 스크립트입니다 :set path=%path%;c:\Windows\Microsoft.NET\Framework\v3.5
set path=%path%;c:\Program Files (x86)\Embarcadero\RAD Studio\10.0
set path=%path%;c:\Documents and Settings\All Users\Documents\RAD Studio\10.0
set BDS=c:\Program Files (x86)\Embarcadero\RAD Studio\10.0
set FrameworkDir=c:\Windows\Microsoft.NET\Framework\
set FrameworkVersion=v3.5
set failed=false
cd \myprogs\monkeystyler
msbuild monkeystyler.dproj /t:build /p:config=full||set failed=true
cd build
if not %failed%==true goto Done
echo ****FAILED TO BULD MONKEYSTYLER
****
Pause
exit
:done
은 동일한 출력 경로를해야합니까. 빌드 또는 완전히 다른 출력 경로 사이의 완전한 제거가 내 첫 번째 추측이 될 것입니다. –
올바른 Rad Studio 명령 프롬프트 (올바른 환경을 설정해야 함)에서 스크립트를 실행합니까? – kludg
Tony : 빌드를하기 전에/t : 깨끗하게 시도해 보았습니다. 나는 그것이 모든 것을 깨끗이한다고 가정합니다. –