Domanda

Esiste un modo per compilare direttamente un file di progetto .vbproj o .csproj, proprio come fa Visual Studio?

Quando esegui la compilazione in Visual Studio, l'output di " output " La finestra mostra la chiamata effettiva al compilatore, che normalmente appare come:

vbc.exe [mazzo di opzioni] [lista incredibile di file .vb]

Vorrei chiamare in modo programmatico " qualcosa " che prenderebbe il file .vbproj e farebbe qualunque cosa Visual Studio faccia per generare questa lunga riga di comando. So che potrei analizzare me stesso .vbproj e generare quella riga di comando, ma preferirei salvarmi tutta l'ingegneria inversa e tentativi ed errori ...

C'è uno strumento per farlo? Preferirei riuscire a farlo su una macchina senza avere installato Visual Studio. Tuttavia, se c'è un modo per chiamare Visual Studio con alcuni parametri per farlo, allora andrà bene anche.

Ho guardato brevemente MSBuild, e sembra che funzioni da un file di progetto .proj che dovrei fare in particolare, e che dovrei aggiornare ogni volta che aggiungo un file al file .vbproj. (Ho guardato brevemente , quindi è molto probabile che mi sia perso qualcosa di importante)

Qualsiasi aiuto sarà molto apprezzato

È stato utile?

Soluzione

MSBuild è il modo più semplice di procedere. Ad esempio:

msbuild /property:Configuration=Release MyFile.vbproj

Altri suggerimenti

MSBuild può anche prendere il tuo file di soluzione e usarlo per fare la compilazione.

Puoi usare MSBUILD o CSC. MSBuild, che come hai già detto, utilizza i file del progetto e della soluzione. CSC compilerà file specifici o tutti i file in un albero di directory specifico.

Dovresti anche cercare di automatizzare le tue build con NAnt e / o CruiseControl.net.

Inoltre, ecco un esempio su come compilare il codice senza Visual Studio usando CSC. http://blog.slickedit.com/?p=163

Solo per sapere che i file .vbproj e .csproj sono MSBuild. Quindi, tutto ciò che hai letto, puoi applicarlo direttamente a quei file.

Detto Ibrahim Hashimi

Il mio libro: All'interno di Microsoft Build Engine: utilizzo di MSBuild e Team Foundation Build

Nella cartella della soluzione di progetto:

msbuild wpfapp1.sln /p:BuildProjectReferences=true

MSbuild si trova di solito in:

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

(o qualcosa di simile, a seconda della versione)

csc.exe compila file, msbuild compila progetti e soluzioni

Nella parte superiore di un file .vbproj c'è un. Aggiungi questa riga al gruppo di proprietà per sopprimere il runtime VB:

<NoVBRuntimeReference>On</NoVBRuntimeReference>

MSBuild fa il resto. Non è necessario utilizzare la riga di comando se si dispone dell'IDE.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top