有時專案載入了有x86版與x64版的組件,因為萬惡的Visual Studio 2010是x86版,所以在開發時必需使用x86版本的組件,但是Moles預設是使用x64的執行檔,所以二著相衝,編譯就失敗了,不過還好可以在MSBuild中設定來解決問題。
有時專案載入了有x86版與x64版的組件,因為萬惡的Visual Studio 2010是x86版,所以在開發時必需使用x86版本的組件,但是Moles預設是使用x64的執行檔,所以二著相衝,編譯就失敗了,不過還好可以在MSBuild中設定來解決問題。
只要在的專案檔中,如:*.csproj的中任一PropertyGroup加入下面一行就可以了
<PropertyGroup>
<MolesForceX86>true</MolesForceX86>
</PropertyGroup>
</Project>
不過呢因為我的專案習慣Debug用x86,Release用x64,所以我會這樣設定
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<MolesForceX86>true</MolesForceX86>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<!--Release不加MolesForceX86-->
</PropertyGroup>
</Project>
當然也可以寫成這樣
<PropertyGroup>
<MolesForceX86 Condition=" '$(Platform)' == 'x86' ">true</MolesForceX86>
</PropertyGroup>
</Project>
NOTE:
編譯選項在很多很多地方可以設定,常見的二個地方如下:
1.工具列
2.Configuration Manager
可以藉著切換選項來,來變更MSBuild的執行設定。
參考資料
1-1.MSBuild 條件