我想引用.NET項目中的COM DLL,但我也想確保所創建的interop DLL將具有正確的版本補丁將知道何時必須更改DLL)。維護.NET項目中引用的COM DLL的正確版本
如果我使用TlbImp
我可以用/asmversion
標誌指定所需的版本,但是當我直接從Visual Studio添加它時,它會得到一個與原始COM DLL版本無關的版本。
我試圖在.vcproj
文件更改版本
<ItemGroup>
<COMReference Include="MYDLLLib">
<Guid>{459F8813-D74D-DEAD-BEEF-00CAFEBABEA5}</Guid>
<!-- I changed this -->
<VersionMajor>1</VersionMajor>
<!-- This too -->
<VersionMinor>0</VersionMinor>
<Lcid>0</Lcid>
<WrapperTool>tlbimp</WrapperTool>
<Isolated>False</Isolated>
</COMReference>
</ItemGroup>
但後來該項目未能建立與以下錯誤:
error CS0246: The type or namespace name 'MYDLLLib' could not be found (are you missing a using directive or an assembly reference?)
有沒有什麼辦法讓這個不創建全部完成我的COM提前預訂了TlbImp
?
如果答案是是的除了主版本和次版本之外,還有一種方法可以指定版本號嗎? (例如1.2..0)