C# 获取非托管 dll 的版本

2024-01-30

我正在从托管 c# 代码调用非托管 dll,并想检查我正在调用正确的版本。

我尝试加载程序集(然后获取资源文件,然后获取版本)的代码是: cur_version = Assembly.LoadFile("X:\Workspace\yreceipts_pos\yRprintProcessor\Debug\yRprintProcessor.dll"); 由于此错误而失败:The module was expected to contain an assembly manifest. (Exception from HRESULT: 0x80131018)

有谁知道如何解决这个问题,或者有更好的方法从托管 c# 代码检查非托管 dll 的版本?

提前致谢, 理查德


正如logicnp所述; Assembly.Load 仅适用于托管程序集。要确定任何版本化文件的版本,您可以使用 System.Diagnostics.FileVersionInfo.GetVersionInfo(filename) 并加载和调用 DLL 中的非托管过程,您可以参考以下文章:

http://blogs.msdn.com/jonathanswift/archive/2006/10/02/780637.aspx http://blogs.msdn.com/jonathanswift/archive/2006/10/02/780637.aspx http://blogs.msdn.com/jonathanswift/archive/2006/10/03/Dynamically-calling-an-unmanagement-dll-from-.NET-_2800_C_23002900_.aspx http://blogs.msdn.com/jonathanswift/archive/2006/10/03/Dynamically-calling-an-unmanaged-dll-from-.NET-_2800_C_23002900_.aspx

祝你好运...

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

C# 获取非托管 dll 的版本 的相关文章

  • 删除文件的最后 10 个字符

    我想删除文件的最后 10 个字符 说一个字符串 hello i am a c learner 是文件内的数据 我只是希望该文件是 hello i am a 文件的最后 10 个字符 即字符串 c learner 应在文件内消除 解决方案 将
  • 根据属性的类型使用文本框或复选框

    如果我有这样的结构 public class Parent public string Name get set public List
  • 类型中的属性名称必须是唯一的

    我正在使用 Entity Framework 5 并且有以下实体 public class User public Int32 Id get set public String Username get set public virtual
  • std::list 线程push_back、front、pop_front

    std list 线程安全吗 我假设不是这样 所以我添加了自己的同步机制 我认为我有正确的术语 但我仍然遇到问题 每个函数都由单独的线程调用 Thread1 不能等待 它必须尽可能快 std list
  • 如何在 C# 中打开 Internet Explorer 属性窗口

    我正在开发一个 Windows 应用程序 我必须向用户提供一种通过打开 IE 设置窗口来更改代理设置的方法 Google Chrome 使用相同的方法 当您尝试更改 Chrome 中的代理设置时 它将打开 Internet Explorer
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • C++ 多行字符串原始文字[重复]

    这个问题在这里已经有答案了 我们可以像这样定义一个多行字符串 const char text1 part 1 part 2 part 3 part 4 const char text2 part 1 part 2 part 3 part 4
  • 访问外部窗口句柄

    我当前正在处理的程序有问题 这是由于 vista Windows 7 中增强的安全性引起的 特别是 UIPI 它阻止完整性级别较低的窗口与较高完整性级别的窗口 对话 就我而言 我想告诉具有高完整性级别的窗口进入我们的应用程序 它在 XP 或
  • 重载 (c)begin/(c)end

    我试图超载 c begin c end类的函数 以便能够调用 C 11 基于范围的 for 循环 它在大多数情况下都有效 但我无法理解和解决其中一个问题 for auto const point fProjectData gt getPoi
  • 使用 C# 中的 CsvHelper 将不同文化的 csv 解析为十进制

    C 中 CsvHelper 解析小数的问题 我创建了一个从 byte 而不是文件获取 csv 文件的类 并且它工作正常 public static List
  • 两个静态变量同名(两个不同的文件),并在任何其他文件中 extern 其中一个

    在一个文件中将变量声明为 static 并在另一个文件中进行 extern 声明 我认为这会在链接时出现错误 因为 extern 变量不会在任何对象中看到 因为在其他文件中声明的变量带有限定符 static 但不知何故 链接器 瑞萨 没有显
  • 如何定义一个可结构化绑定的对象的概念?

    我想定义一个concept可以检测类型是否T can be 结构化绑定 or not template
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • C# 动态/expando 对象的深度/嵌套/递归合并

    我需要在 C 中 合并 2 个动态对象 我在 stackexchange 上找到的所有内容仅涵盖非递归合并 但我正在寻找能够进行递归或深度合并的东西 非常类似于jQuery 的 extend obj1 obj2 http api jquer
  • C 函数 time() 如何处理秒的小数部分?

    The time 函数将返回自 1970 年以来的秒数 我想知道它如何对返回的秒数进行舍入 例如 对于100 4s 它会返回100还是101 有明确的定义吗 ISO C标准没有说太多 它只说time 回报 该实现对当前日历时间的最佳近似 结
  • 如何在 Android 中使用 C# 生成的 RSA 公钥?

    我想在无法假定 HTTPS 可用的情况下确保 Android 应用程序和 C ASP NET 服务器之间的消息隐私 我想使用 RSA 来加密 Android 设备首次联系服务器时传输的对称密钥 RSA密钥对已在服务器上生成 私钥保存在服务器
  • 编译时展开 for 循环内的模板参数?

    维基百科 here http en wikipedia org wiki Template metaprogramming Compile time code optimization 给出了 for 循环的编译时展开 我想知道我们是否可以
  • 为什么C++代码执行速度比java慢?

    我最近用 Java 编写了一个计算密集型算法 然后将其翻译为 C 令我惊讶的是 C 的执行速度要慢得多 我现在已经编写了一个更短的 Java 测试程序和一个相应的 C 程序 见下文 我的原始代码具有大量数组访问功能 测试代码也是如此 C 的
  • 当文件流没有新数据时如何防止fgets阻塞

    我有一个popen 执行的函数tail f sometextfile 只要文件流中有数据显然我就可以通过fgets 现在 如果没有新数据来自尾部 fgets 挂起 我试过ferror and feof 无济于事 我怎样才能确定fgets 当

随机推荐

  • python time.strftime %z 始终为零而不是时区偏移

    gt gt gt import time gt gt gt t 1440935442 gt gt gt time strftime Y m d H M S z time gmtime t 2015 08 30 11 50 42 0000 g
  • 按实体名称和上次修改日期搜索

    我在 RavenDb 中存储了许多命令 它们都实现了 ICommand 我希望能够搜索上次修改的元数据和 Raven Entity Name 我目前正在对每个命令进行多重映射 如下所示 public class CommandAuditSe
  • 将 PHP 日期范围转换为 MYSQL 单个日期

    我有一个可用性日历 其中我当前正在逐个添加日期 并使用 mysql 查询来确定是否存在具有特定日期的行 并将当天的类别更改为 已预订 红色 我想在我的表单中输入一个范围 并通过 php 或 mysql 将其处理为多个单独的日期 我的日期格式
  • 使用 TensorFlow Dataset API 和 flat_map 的并行线程

    我正在将 TensorFlow 代码从旧的队列接口更改为新的数据集API https www tensorflow org api docs python tf data Dataset 使用旧界面我可以指定num threads论证tf
  • Powershell 检查本地管理员凭据

    我正在尝试运行一个需要管理员输入才能处理某些事情的脚本 我不想让脚本运行失败 而是尝试捕获错误并将其扔回到凭据中 但我找不到可以将本地管理凭据传递给陷阱的命令 有人有什么可能有用的东西吗 我发现很多都会检查域凭据 但这是一个本地管理员帐户
  • Java Swing:显示 JPopupMenu 后插入符侦听器停止触发

    我正在制作一个文本编辑器应用程序 并且遇到了一个问题 在显示 JPopupMenu 后键入或粘贴文本时 我的 CaretListener 不会被触发 我已将 CaretListener 添加到 JTextArea textArea addC
  • 如何为 Next.js API 请求进行 HTTP 代理

    我在网上尝试了很多方法 但到目前为止没有任何效果 第一次尝试 src pages api proxy slug js import createProxyMiddleware from http proxy middleware Creat
  • CommonServiceLocator 的评论中的“环境”一词的含义是什么?

    我想猜测 环境容器 与它是静态类这一事实有关 但这只是一个猜测 或者这是指标准模式 也就是说 我真的需要从头到尾读完 GoF 的书 namespace Microsoft Practices ServiceLocation
  • 为什么 cmpsb 似乎不比较寄存器的值?

    我正在尝试以 16 位实模式编写 DOS 克隆 尽管一旦我完成了当前问题 我可能只会学习 32 位汇编 我的问题过去一直受到负面回应 但这是最后一次 恐怕我确实需要咨询这个网站 改进我之前的问题 我付出了更多努力来了解有关汇编代码中的指针和
  • 如何使用 ffmpeg 降低多个 JPEG 图像文件的质量?

    我想降低当时一堆图像的质量 和 q v x其中 x 是 1 到 30 之间的数字 数字越大 质量越差 即使使用 我也能节省很多空间x 1 现在 当涉及到处理多个文件时 我陷入了困境 我尝试过这两个批处理文件 mkdir processed
  • 获取 Facebook 公共页面评级和评论

    我不是某些页面的所有者 但我想访问页面评论和评级 每次访问时我都会得到空数据集 gt http https graph facebook com 102227700571 tabs reviews access token fb oauth
  • 在 PowerPoint 中从编辑模式下的按钮调用宏

    我正在尝试编写一个可以在 PowerPoint 2007 2010 的编辑模式下调用的 vba 宏 我可以轻松地将命令按钮添加到演示文稿中 但是 只能在幻灯片模式下单击此按钮来触发 vba 宏 但是 我想做的是让此按钮在编辑模式下触发关联的
  • 如何在 Grails 上使用 LDAP 插件?

    我正在开始一个关于 Groovy 和 Grails 的新项目 我现在正在处理身份验证部分 因为我们有一个 LDAP 服务器 所以我想使用 LDAP 进行身份验证 我开始设置我的环境 我正在使用 SpringSource Tool Suite
  • JSP编译期间出现'tmpFile.renameTo(classFile)'的原因

    我正在使用 Jetty 6 服务器 有时会出现此异常 java io IOException tmpFile renameTo classFile failed at org apache jasper compiler SmapUtil
  • 如何知道应用程序是由调试器 (Visual Studio) C# 启动的

    在我的 C 代码中 我想知道应用程序是否已由调试器 在我的例子中为 VisualStudio 启动 有谁知道如何获取这些信息 TIA 系统 诊断 调试器 IsAttached http msdn2 microsoft com en us l
  • CakePHP2 中的多态关联

    我有3个模型 Page Course and Content Page and Course包含元数据和Content包含 HTML 内容 Page and Course两者都有很多Content Content属于Page and Cou
  • 使用 Ramda 在循环中从多个数组中取出前 X 个总项目

    我有一个数组数组 想编写一个返回顶部的函数x项目数 通过按顺序从每个数组中获取项目 这是我所追求的一个例子 const input 1a 2a 3a 4a 5a 1b 2b 3b 4b 5b 1c 2c 3c 4c 5c 1d 2d 3d
  • 常见的日志记录 jar 与 Apache 轴 Soap 客户端冲突

    我在尝试使用 axis 调用 SOAP Web 服务时遇到此异常 基本上我已经写了一个轴客户端 org apache commons discovery DiscoveryException Class org apache commons
  • 了解 Zeromq Java 绑定

    我正在研究 Zeromq 作为 Java 项目中的消息传递解决方案 但我发现有关 Java 绑定的说明有点难以遵循 http www zeromq org bindings java http www zeromq org bindings
  • C# 获取非托管 dll 的版本

    我正在从托管 c 代码调用非托管 dll 并想检查我正在调用正确的版本 我尝试加载程序集 然后获取资源文件 然后获取版本 的代码是 cur version Assembly LoadFile X Workspace yreceipts po