Visual Studio を NYAGOS から使う時

普通は Visual Studio のパスを通すため、下記のように .nyagos 上で Visual Studio コマンドプロンプトのバッチを source する。

nyagos.exec{'source',[[C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat]],'x86'}

これやると NYAGOS の起動が遅くなるし、Visual Studio を複数バージョン入れてたりするとパスを自動で変更するのとか結構たいへんになる。

でも、Visual Studio を開くだけだったら open *.sln で済む。

ビルドはさすがに Visual Studio にパスを通さないとダメかなぁと思ってたが、 MSBuild を実行できれば、なんとかなるみたいだ。 理論上は MSBuild へのパスも通さないといかんわけだが、バッチ(make.cmd)で次のように検索して、フルパスで起動させたらいけた。

for /D %%I in (C:\Windows\Microsoft.NET\Framework\v*) do set "MSBUILD=%%I\MSBuild.exe"
"%MSBUILD%" xxxxx.sln /p:Configuration=%1

オニキスめざしてがんばりましょう

追記

MSBuild でビルドすると、なぜか、作成される DLL の拡張子が .dll.dll になった。 原因は分からんが、これは困るので

:msbuild
    for /D %%I in (C:\Windows\Microsoft.NET\Framework\v*) do set "MSBUILD=%%I\MSBuild.exe"
    echo MSBUILD=%MSBUILD%
    "%MSBUILD%" %SLN% /p:Configuration=%1
    for /R %%I in (*.dll.dll) do move "%%I" "%%~dpnI"
    @exit /b

というコード書いた。