2010-12-04 6 views

답변

2

FinalBuilder 6에서는 MSBuild 작업을 사용할 수 있습니다. 그러나 솔직히 말해서 빌드 스크립트에서 배치 파일과 '프로그램 실행'을 사용하는 것이 더 나은 해결책이라는 것을 알았습니다.

편집 :이 주제에 대한 빠른 읽기 이제 배치 파일을 사용한 이유를 기억합니다. FB6 MSBuild 동작은 '기본보기'에서 모든 속성에 액세스 할 수있는 것은 아니므로 '속성 표'로 변경해야하므로 다소 직관적이지 않습니다.

업데이트 : 귀하의 의견; 개별 MSBuild 작업을 실행하고 '프로그램 실행'작업을 사용하지 않으려면 자체 FB 작업을 만들어야합니다. 나는 사용자 정의 액션을 직접 만들지는 못했지만 분명히 정말 간단합니다.

@ECHO off 
SET Action=%1 
SET Configuration=%2 
SET Platform=x86 
SET CommonTools=%VS90COMNTOOLS% 
SET SourceDir=%CD%\..\.. 
SET SolutionFilename=Solution.sln 
SET MSBuild=C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe 

IF "%Action%" == "" SET Action=Rebuild 
IF "%Configuration%" == "" SET Configuration=Release 

:BUILD 
%MSBuild% "%SourceDir%\%SolutionFilename%" /v:m /t:%Action% /p:Configuration=%Configuration% /p:DenEnvDir="%CommonTools%..\IDE\" /p:SolutionDir="%SourceDir%" /p:Platform=%Platform% 

:END 
ECHO. 
ECHO ErrorLevel: %ERRORLEVEL% 
EXIT /B %ERRORLEVEL% 
+0

FB에는 MSBuild 작업이 없습니다. 그것은 "MSBuild 프로젝트"조치를 사용하여 해결 방법처럼 보입니다. Btw, 왜 속성 표가 별도의 스크립트보다 직관적이지 않다고 생각하십니까? – Restuta

+0

아, 죄송합니다. 현재 FB를 설치하지 않았습니다. 그것은 내가 생각하고 있던 'MSBuild Project'였을 것입니다. 속성 표에 대한 설명은 FB에서 작업 편집과 관련이 있습니다. 특히 MSBuild 프로젝트에서. 나는 많은 동적 데이터를 사용자에게 제시 할 필요가있을 때 개발 한 소프트웨어에서 자주 속성 격자를 사용합니다. – Dennis

+0

고마워,이게 유일한 길인 것 같아. – Restuta

0

당신은 그냥 의존하는 MSBuild에서 환경을 인스턴스화하지 않고 다른 응용 프로그램 내에서의 MSBuild 작업을 실행할 수 없습니다 :

은 내가 사용하는 배치 파일입니다. 최소한 msbuild 프로젝트 파일이 필요합니다.

+0

필자는 당황 스럽지만, 궁금한 점은 FinalBuilder에 기본 제공 기능이 내장되어 있다는 것입니다. 예 : 그들은 "MSBuild 프로젝트 실행"액션을 가지고 있는데, 왜 "MSBuild 실행 태스크"액션이 없습니까? – Restuta