背景:
我想从VB6应用程序中提取COM数据,以便按照Microsoft最佳实践正确地注册它。 我正在使用WiX 3.0,但heat.exe无法提取数据(这是heat的已知问题),并且我没有即时访问相关TLB文件的权限。 VB6应用程序没有打开兼容性,因此每次构建时都会重新生成COM GUID(他们希望该应用程序能够与旧版本一起运行)。
我创建了一个C#应用程序,可以从VB6应用程序中收集TypeLib,接口和CoClass信息而无需注册它,并创建wx文件以供candle使用。 我公司还有其他类似的旧应用程序,我想将其变成更通用的解决方案。
问题:
1.是否有一种方法可以在不使用项目或TLB文件以及不注册它的情况下从应用程序中收集“真实”的ProgID(程序员预期的ID)?
2.是否有一种方法可以找出DLL的预期线程模型而无需注册它?(我打算它可以处理所有COM活动项目,那就干脆完整点吧)谢谢。