博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决添加Com引用 生成的Interop.*.dll 版本号永远是1.0的问题
阅读量:6242 次
发布时间:2019-06-22

本文共 852 字,大约阅读时间需要 2 分钟。

在项目里面,添加对COM的引用时,自动生成了Interop.*.dll,但是这个dll的版本号永远是1.0. 如果使用InstallShield 制作安装包,进行修改安装时,这个dll不会被更新,就因为版本号永远是1.0

想修改这个版本号,没找到便捷的办法,就用 TlbImp.exe 重新导出一个dll,这个工具可以带上版本号的。

TlbImp.exe ( 类型库导入程序)参考资料

  1. 把原有的项目编译成功, 确保能够正常运行,Release 目录会有一个Interop.*.dll的文件,此文件版本号是1.0
  2. 先找到这个文件,我的机器这个文件在 C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\
  3. 拷贝到特定的目录,或者不拷贝也行,写bat的时候用全路径
  4. Bat 执行,代码如下:
"tlbimp.exe" ../player/release/MyCom.tlb /out:release/Interop.WebCameraATLFrameLib.dll /asmversion:2.1.1101.15007 /namespace:WebCameraATLFrameLib

 

说明:

"tlbimp.exe" 如果不是在这个目录,写全路径吧

../player/release/MyCom.tlb Com 生成的TLB文件,一般在release 目录

/out: release/Interop.MyCom.dll 输出文件的路径

/asmversion:2.1.1101.15007 输出文件的版本号

/namespace: MyCom : 在项目里面的命名空间,必须和项目里面的命名空间一致,务必确认大小写。

请确保以上的相对路径正常。

到Release 目录检查 dll, 版本号有了,而且可以正常运行。

 

也可以把bat命令放到 VS的 后续执行操作里面,这是后话了。

可以参考这位兄弟的办法:

 

如果哪位找到更简单的办法,请告知,谢谢     !

转载地址:http://ukpia.baihongyu.com/

你可能感兴趣的文章
Apache Zeppelin安装及使用
查看>>
Redis实现微博后台业务逻辑系列(四)
查看>>
Power5连接使用DS8000遇到问题处理一例
查看>>
迈克菲实验室:Flame病毒的深度分析
查看>>
用十条命令在一分钟内检查Linux服务器性能[转]
查看>>
深入理解bash及字符串的处理
查看>>
Python异步IO --- 轻松管理10k+并发连接
查看>>
DNS多点部署IP Anycast+BGP实战分析
查看>>
iostat详细使用
查看>>
用户与组
查看>>
【12c新特性】12c中新加入的Enqueue Lock
查看>>
JavaScript语法详解(四)
查看>>
Fail to queue the whole FAL gap in dataguard一例
查看>>
03在Windows Server 2008R2上面建立子域
查看>>
网络系统组成、OSI模型、TCP/IP协议簇
查看>>
服务器无法远程
查看>>
目前发现Exchange 2016的两个管理问题
查看>>
java发送邮件问题
查看>>
myeclipse2013 安装 egit
查看>>
介绍几种常见的网站负载均衡技术
查看>>