2012-11-30 95 views
1

在Visual Studio 2010中,在後構建腳本,我需要一個這樣的文件複製到的「bin」目錄: myLib32.dll或 myLib64.dll在後構建腳本如何檢查系統是64位或32位

取決於我的機器的體系結構。

有沒有辦法檢查我正在使用哪種架構的腳本?

謝謝。

回答

1

您在生成後命令行中有$(PlatformName),但這是您爲其構建的平臺,不一定是您所在機器的平臺。也許你可以在Windows中利用PROCESSOR_ARCHITECTURE環境變量?

1

如果您添加到需要的文件的項目的項目文件,那麼我認爲這會做你的需要:

它檢查的程序文件的Syswow64資料版本存在 - 這是空在32位版本的Windows上

<PropertyGroup> 
    <OSBitness Condition="'$(ProgramW6432)' == ''">32</OSBitness> 
    <OSBitness Condition="'$(ProgramW6432)' != ''">64</OSBitness> 
</PropertyGroup> 

<ItemGroup> 
    <myLib Include="myLib$(OSBitness).dll" /> 
</ItemGroup> 

<Target Name="AfterBuild"> 
    <Copy SourceFiles="@(myLib)" DestinationFolder="$(TargetDir)" /> 
</Target> 
相關問題