2008-11-05 3 views
17

Есть ли способ скомпилировать файл проекта .vbproj или .csproj напрямую, как это делает Visual Studio?Компиляция файла проекта .vbproj или .csproj без Visual Studio

При компиляции в Visual Studio, окно «Выход» показывает реальный вызов компилятора, который обычно выглядит как:

Vbc.exe [кучу вариантов] [looooong список .vb файлов]

Я хотел бы запрограммировать «что-то», чтобы взять файл .vbproj и сделать то, что Visual Studio делает для создания этой длинной командной строки. Я знаю, что i может самостоятельно разобрать .vbproj и сгенерировать эту командную строку, но я бы лучше сохранил все обратные инженерные и пробные ошибки ...

Есть ли инструмент для этого? Я предпочел бы сделать это на машине без установки Visual Studio. Однако, если есть способ вызвать Visual Studio с некоторыми параметрами, чтобы сделать это, тогда это тоже будет хорошо.

Я кратко посмотрел на MSBuild, и похоже, что он работает из файла проекта .proj, который мне нужно будет сделать особенно, и что мне нужно будет обновлять каждый раз, когда я добавляю файл в файл .vbproj , (Я смотрю кратко на него, так что это очень вероятно, что я пропустил что-то важное)

Любая помощь будет высоко оценен

+0

См. также http://stackoverflow.com/q/5174893/30280 – Bevan 2012-02-28 20:51:21

ответ

39

MSBuild - это самый простой способ. Например:

msbuild /property:Configuration=Release MyFile.vbproj 
+1

Большое спасибо – 2008-11-05 19:59:03

4

MSBuild также может принять ваш файл решения и использовать его, чтобы сделать компиляцию.

2

Вы можете использовать либо MSBUILD, либо CSC. MSBuild, который, как вы упомянули, использует ваши файлы проекта и решения. CSC будет компилировать определенные файлы или все файлы в определенном дереве каталогов.

Вы также должны посмотреть автоматизацию своих сборок с помощью NAnt и/или CruiseControl.net.

Также приведен пример того, как скомпилировать ваш код без визуальной студии с использованием CSC. http://blog.slickedit.com/?p=163

-1

В верхней части файла .vbproj является. Добавьте эту строку в группу свойств для подавления времени выполнения VB:

<NoVBRuntimeReference>On</NoVBRuntimeReference> 

MSBuild делает все остальное. Нет необходимости использовать командную строку, если у вас есть IDE.

0

В папке решения проекта:

msbuild wpfapp1.sln /p:BuildProjectReferences=true 

MSBuild обычно находится в:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319 

(или что-то подобное, в зависимости от версии)

csc.exe компилирует файлы, MSBuild компилирует проекты и решения