C++ 调用 C# COM Interop 报错

.NET技术 > C# [问题点数:100分,结帖人arden1019]
等级
本版专家分:55
勋章
Blank
蓝花 2005年1月 其他开发语言大版内专家分月排行榜第三
结帖率 98.77%
等级
本版专家分:219582
勋章
Blank
签到新秀 累计签到获取,不积跬步,无以至千里,继续坚持!
Blank
名人 2019年 荣获名人称号
2013年 荣获名人称号
Blank
状元 2012年 总版技术专家分年内排行榜第一
Blank
进士 2013年 总版技术专家分年内排行榜第七
2011年 总版技术专家分年内排行榜第五
2009年 总版技术专家分年内排行榜第九
等级
本版专家分:3825
等级
本版专家分:55
勋章
Blank
蓝花 2005年1月 其他开发语言大版内专家分月排行榜第三
等级
本版专家分:55782
勋章
Blank
蓝花 2013年11月 .NET技术大版内专家分月排行榜第三
2012年7月 .NET技术大版内专家分月排行榜第三
等级
本版专家分:55
勋章
Blank
蓝花 2005年1月 其他开发语言大版内专家分月排行榜第三
等级
本版专家分:82856
勋章
Blank
蓝花 2008年5月 .NET技术大版内专家分月排行榜第三
等级
本版专家分:55
勋章
Blank
蓝花 2005年1月 其他开发语言大版内专家分月排行榜第三
arden1019

等级:

Blank
蓝花 2005年1月 其他开发语言大版内专家分月排行榜第三
c#调用c++托管类dll出现无法加载文件或程序集

我的c#程序中调用c++写的托管类程序,在安装有vs2010软件的机子上都可以正常运行,在未安装该软件的机子上运行该程序便会提示”未能加载文件或程序集”,如图所示,尝试了修改dll的network版本,以及主程序和该...

C#调用SQLite报错:无法加载 DLL“SQLite.Interop.dll”: 找不到指定的模块

C#调用SQLite数据库,有些情况下会报以下这个错误: 无法加载 DLL“SQLite.Interop.dll”: 找不到指定的模块 实际上程序目录中是存在SQLite.Interop.dll这个文件的,为什么会报错呢? 原因可能是缺少了C++ 2010...

C# 代码中调用ActiveX控件更新接口造成编译错误的问题

然后在C#调用这个ActiveX控件进行日常的调试等操作。 可是每次ActiveX项目有接口更新,C#中也修改了新接口规范的调用。可是死活C#代码无法编译通过。 可以确认ActiveX项目本身接口确实正常导出并且调用Regsvr32...

调用C或C++的DLL出现“方法的类型签名与 Interop 不兼容”

int _stdcall Read(char CodeNum,char* Res,int* Status,int WaitTime=500); 我写的C#调用方法是这样的: [DllImport("PCBDll.dll")] public static extern int

System.DllNotFoundException Unable to load DLL SQLite.Interop.dll解决办法

最近在写一个c#的sdk,用到了sqlite for .net! 写完之后,打包给别人调用,结果在两台客户机上面死活不可用。然后开始查原因,最后定位到问题: System.DllNotFoundException Unable to load DLL SQLite.Interop....

C#调用C++类指南

C#调用C++类比较麻烦,有两种方法,一种是原生C(Native C),即必须把C++的成员函数封装成C的全局函数(称为C bindings),然后再供C#调用。一种是托管C++(Managed C++)或者叫C++/CLI,可以识别C++的类和指针,...

C#C++交互之——参数传递

托管代码和非托管代码的交互技术有3种:平台调用(PInvoke)、C++ InteropCOM Interop 平台调用(PInvoke) 其中,PInvoke最简单,但只能调用函数,不能调用类。但有一个折衷的办法,就是在C++里面定义一系列...

如何在C#代码中调用C++函数 (一)

.NET平台下的互操作有三种方式:平台调用C++ InteropCOM Interop。 平台调用: 平台调用服务(英语:Platform Invocation Services),或称P/Invoke,通常指微软的公共语言运行时提供的跨平台调用方式。 平台...

PDC:Anders谈C# 4.0:新功能和展望

刚才刚看完Anders的PDC Talk,感觉C# 4.0的变化不是很大,但是很多改动都方便了用户的使用,有些甚至当初Anders本来不愿意加入的功能最后由于用户的呼声最后还是加进去了(如Optional Parameters),可见Anders对...

C#C++代码互相调用

今天在项目中看到C:\WINDOWS\Microsoft.NET\Framework\v...\REGASM.exe /regfile:xxx.reg xxx.dll,注册COM...经过不懈网上游荡,原来注册COM组件是给其他语言调用的,因为c#程序是托管代码,所以和其他非托管代码有所

QT调用Interop.LabelManager2.dll(C#dll)的问题处理

需求: 公司产线需要打印设备...先说结果,我最终采取了C++封装C#的DLL文件,在QT中调用封装好的C++的DLL解决的问题。问题的核心在于怎么在QT中引用C#,QT是C++的扩展语言,支持原生C++;但是C++一般为非托管式代码

C++调用C# com组件:一个完整的的小例子

我们知道C#开发效率是非常高的,特别是做一些漂亮的页面就更适合用它了啊.如果你开发一个桌面应用程序即想性能好...可以用C#做成com组件,然后C++调用.反过来也行.可以C++做成com,然后C#调用. 下面我举个简单的小...

C#命名空间“Microsoft.Office”中不存在类型或命名空间名称的终极解决方法

在开发过程中,调用网上一个EXCEL类时,已经引用了COM组件:Microsoft Excel 11.0 Object Library,还是提示这个错误或提示:命名空间“Microsoft office”中不存在类型或命名空间名称“Interop” (是缺少程序集引用...

.NET直接编译成本地代码:.NET Native架构简介

这篇Blog好久没有更新了。最近一直在忙.NET Native相关的事情(主要是MCG),但是又因为保密的原因不能在Blog中提到。上个星期Build终于发布(可惜没有去成,team名额太少),我也...http://msdn.microsoft.com/en-US/v

C#调用C++DLL数据封送结构体转换工具

最近的项目需要使用C#调用C++编写的DLL,主要是不想放弃现有的代码,并且充分发挥C#在做界面等方面快速开发的优势。   在网上找到了这个工具 很好用   ...

使用Signature Tool自动生成P/Invoke调用Windows API的C#函数声明

在网上看到很多网友在.NET程序中调用Win32 API,或者调用自己的VC DLL里面提供的函数的时候,总是被生成正确的C函数在C#中的正确声明而困扰,而生成C++中结构体在C#中的声明 - 天,没有什么比这个更让人恶心的事情了...

.NET Interop入门-P/Invoke和Reverse P/Invoke

最近在论坛上经常看到一些基本的interop的问题,给我动力写完之前的.net interop入门系列,给刚刚涉足.NET interop的朋友们一个大体上的...之前我的同事和我讨论了.NET和COM互操作的应用:在.NET中调用COMCOM Intero

C#DLL托管c++ (CLI) String^ 到 std::string 的相互转化

当使用C++/CLI包装C++本地代码时,常常需要将System::String转换为std::string或者char*以调用native C++函数。.net环境中的字符串是unicode的,占2个字节,而很多native C++函数都没有考虑unicode,这种转换不仅仅...

结构体数组作为传出参数从C++封送到C#

网上也查了很多资料,在这里推荐一本书,《精通.NET互操作:P/Invoke、C++ InteropCOM Interop》,介绍Windows平台上的托管代码与非托管代码之间进行互操作的各种技术,虽然里面没有结构体数组的传参例子,但是...

C,C++C#三者区别

C,C++C#三者区别  继承关系是C->C++->C# C++完全向C兼容,C程序几乎不用修改即可在C++的编译器上运行.C++也称为带类的C,在C的基础上增加了许多面向对象的概念.虽然是C的扩展,但 并不意味着C功能不如C++,最牛的...

COM Interop入门

[引子] 在C#程序员的字典中,COM Interop意味着在C#代码中,调用COM。由于COM一度拥有着广泛的使用者,所以存在着很多COM组件。当开发者们迁徙到C#之后,如何重用这些COM组件,就是COM Interop要解决的问题。[方法] ...

RCW入门浅析

由于目前加入了一个负责将原有系统移植至.net平台的项目组,花了些时间对com-->.net进行了些基础研究。...为了保持向后兼容,com interop能使得.net程式在不修改原有com组件的前提下方便的访问com

《精通.NET互操作:P/Invoke、C++ InteropCOM Interop

《精通.NET互操作:P/Invoke、C++ InteropCOM Interop》官方博客 一篇用C++/CLI讲述在托管委托(delegate)和非托管函数指针之间相互转化的文章 我们的图书《精通.NET互操作》出版有一个月的时间了,有...

[解决]无法加载 DLL "SQLite.Interop.DLL

[解决]System.DllNotFoundException: 无法加载 DLL“SQLite.Interop.DLL” -- 绿化System.Data.SQLite.dll 这个问题是在绿化System.Data.SQLite.dll的时候出现的 [1]在下面的网站下载的1.0.66版本的单文件...

C#WPF工程调用C++的32位DLL在其他PC运行报错:试图加载格式不正确的程序(异常来自 HRESULT:0x8007000B)

本机64位,C#WPF 工程调用C++编译的32位的DLL文件,C++C# 工程都是按X86 32位编译的。另外我用VS2015 自带的dumpbin.exe 工具查看过调用的DLL,以及C#编译后的exe所依耐的DLL文件,已经全部拷贝打包过来了的。 ...

C++COM组件并用C#调用

1、以管理员身份打开vs,特别重要,否则会不成功2、新建一个c++ ATL项目,如图,全部为默认设置 3、添加一个ATL简单对象,从添加类中添加,如图 4、添加一个方法,注意是在类视图中添加,并按照下图设置,其余...

C#调用WPS的etapi.dll读写Excel

环境要求 开发环境要求 安装WPS 2016 专业版 在项目中引用etapi.dll,在WPS的安装目录中,如C:\Program Files (x86)\Kingsoft\... 代码的写法完全与Microsoft.Office.Interop.Excel一致 Dim app As Excel.Appl...

C#托管代码与C++非托管代码互相调用

C#托管代码与C++非托管代码互相调用http://www.cnblogs.com/Jianchidaodi/archive/2009/03/11/1407270.html#1473515 http://www.cnblogs.com/Jianchidaodi/archive/2009/03/11/1408661.html C#托管代码与C++非托管...

.NET里面的Interop太烂了

.NET2.0对于Interop部分的更新 http://www.dotnetinterop.com/features/default.aspx?q=Whidbey 。未来的更新,其实换个角度看也就是现在的不足。关于Interop部分的语法,也十分之难看。诸如“[Ma

C++托管与C#中的数据类型转换

接上一篇文章 C++封装成托管模式供C#调用过程 在C#调用C++托管库的过程中,C++托管库一般只是封装为真正C++动态链接库(DLL)的一个外壳,其不做任何逻辑功能,但是会存在数据类型及结构上的转换问题,本文就是用于...

相关热词 c#编译器 学习 c#和其他语言相比 c# 什么是管道 c# 在ui线程中运行 c# panel边框 c#调用dll报错 c# 编写dll c# timer 多线程 c# 发送邮件带图片 画笔c#