2011-11-24 34 views
0

將我的vs2008 C++混合模式項目轉換爲vs2010後,出現此錯誤。將我的C++混合模式vs2008項目轉換爲vs2010,找不到程序集

警告MSB3245:無法解析此引用。無法找到程序集「XYZ,版本= 3.0.0.0,...

Vs2008不關心正確的版本,是否可以從項目文件中的引用中刪除版本屬性(不可能從GUI,但似乎如果我在記事本編輯工作)? 還是有更好的解決辦法?

現在,我們需要更新,當我們重新裝配XYZ參考。

<Reference Include="XYZ, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null"> 
    <HintPath>..\XYZ.dll</HintPath> 
    <CopyLocalSatelliteAssemblies>true</CopyLocalSatelliteAssemblies> 
    <ReferenceOutputAssembly>true</ReferenceOutputAssembly> 
</Reference> 
+0

把這個添加到cpp文件會更好嗎? #using「.. \ XYZ.dll」 – lp75

回答

0

嘗試將「SpecificVersion」節點,以便參考如下所示:

<Reference Include="XYZ, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null"> 
    <HintPath>..\XYZ.dll</HintPath> 
    <SpecificVersion>false</SpecificVersion> 
    <CopyLocalSatelliteAssemblies>true</CopyLocalSatelliteAssemblies> 
    <ReferenceOutputAssembly>true</ReferenceOutputAssembly> 
</Reference> 

雖然它沒有顯示在屬性頁的vs2010 UI上,但MSBuild似乎認識到此設置,並且在設置爲false時接受任何引用的dll版本。

相關問題