维护 .NET 项目中引用的 COM dll 的正确版本

2024-01-06

我想在 .NET 项目中引用 COM DLL,但我还想确保创建的互操作 DLL 具有正确的版本(以便补丁知道何时必须更改 DLL)。

如果我使用TlbImp我可以用以下命令指定所需的版本/asmversion标志,但当我直接从 Visual Studio 添加它时,它得到的版本与原始 COM DLL 的版本无关。

我尝试更改版本.vcproj file

<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>

但随后该项目无法构建并出现以下错误:

错误 CS0246:找不到类型或命名空间名称“MYDLLLib”(您是否缺少 using 指令或程序集引用?)

有没有办法在不创建所有 COM 引用的情况下完成此操作TlbImp提前?

如果答案是yes除了主要版本和次要版本之外,还有没有办法指定内部版本号? (例如 1.2.42.0)


Guid 指的是 TypeLib 的 Guid,而不是直接引用 DLL。版本号指的是 TypeLib 的版本而不是 DLL。

版本号将来自您的 idl 文件,我相信它只支持主要版本和次要版本,而不支持构建版本。当你修改类型库时这个版本会改变吗?

版本号将出现在注册表中的以下位置:

HKEY_CLASSES_ROOT\Typelib\{typelib uuid}\Major.Minor

如果次要版本设置为 0 那么我相信它将导入与主要版本匹配的“最新”版本,但主要版本必须设置为某个值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

维护 .NET 项目中引用的 COM dll 的正确版本 的相关文章

  • SOAP Web 服务:多台服务器,一个接口

    我有一个场景 需要任意数量的服务器来提供相同的 SOAP Web 服务 我想生成一组代理类 并能够为它们提供一个位置 以便在运行时将它们指向不同的服务器 不幸的是 看起来好像wsdl port节点 子节点wsdl service 要求对特定
  • 无法在 CUDA 中找到 1 到 100 数字的简单和?

    我正在研究使用 CUDA 的图像处理算法 在我的算法中 我想使用 CUDA 内核找到图像所有像素的总和 所以我在cuda中制作了内核方法 来测量16位灰度图像的所有像素的总和 但我得到了错误的答案 所以我在cuda中编写了一个简单的程序来查
  • 来自 double 的 static_cast 可以优化分配给 double 吗?

    我偶然发现了一个我认为不必要的功能 并且通常让我感到害怕 float coerceToFloat double x volatile float y static cast
  • C++中类成员函数相互调用有什么好处?

    我是 C 新手 我发现下面的编程风格对我来说很有趣 我在这里写了一个简化版本 include
  • 如何使用Entity Framework Code First CTP 5存储图像?

    我只是想弄清楚是否有一种简单的方法可以使用 EF Code First CTP 5 存储和检索二进制 文件 数据 我真的很希望它使用 FILESTREAM 类型 但我真的只是在寻找某种方法让它工作 我总是创建另一个类 例如ProductIm
  • Windows Phone 7 - ScrollViewer 值已更改

    我一直在寻找解决方案 但无法找到正确的解决方案 我的网格宽度为 960 并且有ScrollViewer在里面 现在我想知道滚动时滚动的值 水平偏移 我找到的所有解决方案都是针对 wpf silverlight 的 它对我不起作用 Edit
  • 在 C# 中解析 JS Date.toIsoString

    我需要将 JS 日期存储为 ISO 8601 日期 我目前正在从格式为 2019 06 22T00 00 00 000Z 的表单中获取日期 正如 JS 的 toIsoString 方法所期望的那样 当这个日期传递到我的 API 控制器时 我
  • 加载 QPixmap 数据的更好方法

    更好的方法来做到这一点 没有QImage QImage image width height QImage Format RGB888 memcpy image bits m frameRGB gt data 0 height width
  • ASP.NET - Crystal Report Viewer 打印按钮在 ASP.NET 中不起作用

    我正在使用 Visual Studio 2008 但我遇到了水晶报告问题 当我单击打印按钮时 它会将我带到弹出窗口 但未找到页面 弹出的网址是 http localhost aspnet client System Web 2 0 5072
  • 为什么连续抛出 2 个异常不会生成无法访问的代码警告?

    为什么以下代码行不会创建编译器警告 void Main throw new Exception throw new Exception 据我所知 编译器应该通知您无法到达第二个抛出异常 这显然是一个编译器错误 它是在 C 3 0 中引入的
  • fgets溢出后如何清除输入缓冲区?

    当输入字符串超出其预定义限制时 我遇到了 fgets 的小问题 以下面的例子为例 for index 0 index lt max index printf Enter the d string index 1 if fgets input
  • 从单应性估计 R/T

    我一直在尝试计算 2 个图像中的特征 然后将这些特征传递回CameraParams R没有运气 特征已成功计算并匹配 但是问题是将它们传递回R t 我明白你必须分解Homography为了使这一点成为可能 我已经使用如下方法完成了 http
  • 在 Visual Studio 2012 Express 中设置 C++ 调试环境

    我需要调试的应用程序需要设置环境变量 这在 Visual Studio 2012 中似乎非常复杂 我想做类似的事情 set path c foo c bar c windows c program files application set
  • g++ / gcc 是否支持 C++20 新的atomic_flag 功能?

    根据参考参数 https en cppreference com w cpp atomic atomic flag c 20 有丰富的 对我来说有用的 支持atomic flag运营 然而 目前尚不清楚 gcc 是否支持这些功能 它们在任何
  • 查找数组中的多个索引

    假设我有一个像这样的数组 string fruits watermelon apple apple kiwi pear banana 是否有一个内置函数可以让我查询 apple 的所有索引 例如 fruits FindAllIndex ap
  • 在多线程环境中捕获信号

    我有一个大型程序 需要尽可能具有弹性 并且有大量线程 我需要捕获所有信号SIGBUS SIGSEGV 并在必要时重新初始化有问题的线程 或者禁用该线程以继续减少功能 我的第一个想法是做一个setjump 然后设置信号处理程序 可以记录问题
  • C++ 中的析构函数

    我的 AB h 文件中有一个构造函数 class AB private int i public AB i 0 constructor AB i 0 destructor virtual void methodA unsigned int
  • java有类似C#的属性吗? [复制]

    这个问题在这里已经有答案了 C 属性 我的意思是 get 和 set 方法 是一个非常有用的功能 java 也有类似 C 的属性吗 我的意思是我们如何在 java 中实现类似以下 C 代码的内容 public string Name get
  • 将同步 zip 操作转换为异步

    我们有一个现有的库 其中一些方法需要转换为异步方法 但是我不确定如何使用以下方法执行此操作 错误处理已被删除 该方法的目的是压缩文件并将其保存到磁盘 请注意 zip 类不公开任何异步方法 public static bool ZipAndS
  • 如何使用 Microsoft Graph API 更新 MailboxSettings

    我想从不同的日历更新邮箱设置 如何构建可以通过 Microsoft Graph 更新 MailboxSetting 的请求 这是我的代码示例 但有例外 代码示例 User obj GraphServiceClient Users roomC

随机推荐

  • jQuery:有关于 jQuery Ribbon 插件的推荐吗?

    我看到有几个 jQuery 插件试图重现 Microsoft 在 Word 2007 中引入的 Ribbon Fluent UI 我发现的包括 http code google com p jquery ui ribbon http cod
  • “[Index(['', ''], dtype='object')] 都不在 [列] 中”

    我是 python 中的 panda 库出现错误 Index Dokuman Sinif dtype object 均不在 列 中 classes ekonomi spor teknoloji teknoloji saglik saglik
  • 使用 SimpleXML 根据另一个属性值选择属性值[重复]

    这个问题在这里已经有答案了 我正在尝试使用 xml 文件和 SimpleXML 显示图像 XML 代码是
  • 简单的 KVO 示例

    我正在尝试做简单的 KVO 示例 但遇到了问题 这是我的 m 文件 import KVO ViewController h interface KVO ViewController property NSUInteger number en
  • BERT 文档嵌入

    我正在尝试使用 BERT 进行文档嵌入 我使用的代码是两个来源的组合 我用 and BERT 词嵌入教程 https mccormickml com 2019 05 14 BERT word embeddings tutorial 下面是代
  • nhibernate 4.0 中的双向关系

    我有一个在 NHibernate 3 1 上完美运行的代码 但在 NHibernate 4 0 上却无法运行 所以 这就是阶级关系 public class Employee BaseEntity public Department Dep
  • 如果字段顺序更改,Avro 架构不兼容

    设想 客户端使用 Avro Reflect Datum Writer 序列化 POJO 并将 GenericRecord 写入文件 通过反射获得的模式是这样的 注意顺序A B D C namespace storage management
  • 如何使用 MethodInfo.Invoke 将参数作为引用传递

    如何传递参数作为参考MethodInfo Invoke 这是我要调用的方法 private static bool test string str out byte byt 我尝试过这个但失败了 byte rawAsm new byte M
  • github页面CNAME文件可以包含多个域名吗?

    github页面CNAME文件可以包含多个域名吗 示例文件 reggi com www reggi com blog reggi com 不 这是不可能的 请参阅GitHub 帮助文档 https help github com artic
  • C++ 堆损坏检测工具

    有没有工具可以帮助我检测 C 中的堆损坏 我无法提供源代码 因为这是一个大项目 我可以使用任何与 Visual Studio 或 xcode 配合使用的工具 该工具应该可以在多线程下正常工作 这个问题不是很常见 它会在很长一段时间后出现 并
  • 返回特定类型的 TypeScript keyof

    如果我有以下类型 interface Foo bar string baz number qux string 我可以用吗typeof输入一个参数 使其只需要以下键Foo那个返回string bar or qux Typescript 4
  • Application Insights 安全和欺骗

    这可能是一个愚蠢的问题 但是客户端应用程序洞察是否不会被欺骗 Microsoft 要求您向需要记录的 HTML 页面添加一些 JavaScript 其中一部分包含硬编码的仪器密钥 下面不是真正的密钥 instrumentationKey 3
  • 如何查看 DLL 上的公钥令牌

    有谁知道查看 DLL 上的公钥令牌的方法吗 我正在调查代码中的预期内容与正在构建的内容之间可能存在的不匹配情况 提前致谢 它咕噜声 Use Assembly GetExecutingAssembly GetName GetPublicKey
  • 配置 g++ 使用 wxwidget 库构建 c++

    我一直在尝试在 Linux 中使用 Wxwidget 编译并运行一个简单的 C 程序 但是当我构建它时 这就是我尝试构建时得到的结果 Executing task g c find home sopheak Documents WXWIDG
  • 烦人的 vim(取消)缩进规则

    当编辑 PHP 代码 我不确定它是否特定于该语言 并且我在跨多行的逗号分隔列表中间创建一个新行时 缩进规则总是取消我要离开的行的缩进 这是一个视频 http toogeneric com files indent2 mov这种情况发生在数组
  • 等待审核的典型时间? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我将我的第
  • ValueError:无法将大小为 2 的序列复制到维度为 4 的数组轴

    谁能向我解释一下这个错误来自哪里 这意味着什么 我该如何解决这个问题 也许我的问题太笼统了 抱歉 但我不知道我应该在这里放更多什么 P Error Traceback most recent call last File C test 7
  • 大型对象的 Redux 性能

    我正在使用 Redux 和 React 构建一个 Web 应用程序 我的应用程序是一个呈现大量数据的分析应用程序 当我的商店变大时 我会遇到性能问题 避免 redux 中大数据出现性能问题的首选方法是什么 应用结构 我的应用程序的结构是这样
  • AWS 证书管理器 api 不显示导入的证书

    虽然证书管理器 UI 显示我导入的证书状态为 已颁发 但当尝试从 ELB 应用程序 lb 使用它时 我得到 没有可用的证书 对 api 的 POST 请求返回空列表 另外 当我运行 aws acm list certificates max
  • 维护 .NET 项目中引用的 COM dll 的正确版本

    我想在 NET 项目中引用 COM DLL 但我还想确保创建的互操作 DLL 具有正确的版本 以便补丁知道何时必须更改 DLL 如果我使用TlbImp我可以用以下命令指定所需的版本 asmversion标志 但当我直接从 Visual St