Я пытаюсь создать скрипт для компиляции проекта Windows Forms C # 2.0 из командной строки (я знаю, я знаю ... я заново изобретаю колесо ... снова ... но если кто-то знает ответ, я буду признателен)
Проект представляет собой стандартный проект Windows Forms, который имеет некоторые ресурсы и ссылается на пару внешних сборок. Вот список файлов:
Program.cs // no need to expand on this on :)
frmMain.cs // this is a typical C# windows forms file
frmMain.designer.cs // .. and the designer code
frmMain.resx // .. and the resource file
MyClasses.cs // this contains a couple classes
Properties\AssemblyInfo.cs // the Properties folder -- again pretty standard
Properties\Resources.Designer.cs
Properties\Resources.resz
Properties\Settings.Designer.cs
Properties\Settings.settings
References\AnAssembly.dll // an assmebly that I reference from this application
На данный момент я определил следующие программы / инструменты, которые мне понадобятся:
csc.exe // the C# compiler
al.exe // the assembly linker
resgen.exe // the resource compiler
И это мой сценарий:
@echo off
set OUT=Out
set AL=C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\al.exe
set RESGEN="C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\resgen.exe"
set COMPILER=C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc.exe
echo.
echo Compiler: %COMPILER%
echo.
if "%1"=="/help" goto help
:start
echo Starting...
set REFERENCES=.\References\AReferencedll
set SRCFILES=Program.cs frmMain.cs frmMain.designer.cs MyClasses.cs Properties\AssemblyInfo.cs Properties\Resources.Designer.cs Properties\Settings.Designer.cs
del /Q %OUT%\*
%RESGEN% /compile frmMain.resx,%OUT%\frmMain.resources
cd Properties
%RESGEN% /compile Resources.resx,..\%OUT%\Resources.resources
cd ..
%COMPILER% /target:module /out:%OUT%\app.module %SRCFILES% /reference:%REFERENCES%
%AL% %OUT%\app.module /embed:%OUT%\frmMain.resources /target:winexe /out:%OUT%\app.exe /main:App.Program.Main
goto done
:error
echo Ooooops!
:done
echo Done!!
В конце концов, независимо от того, как я его раскручиваю, компоновщик получает разные ошибки, иначе конечный исполняемый файл просто не запустится - он вылетит.
Пожалуйста, помогите (MSDN не слишком помог ..)!