首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C# 与VC之间通过DLL传递数据有关问题

2013-07-04 
C# 与VC之间通过DLL传递数据问题我做了一个VC程序跟一个C#程序,它们之间的数据交换是通过动态库的,调用声

C# 与VC之间通过DLL传递数据问题
我做了一个VC程序跟一个C#程序,它们之间的数据交换是通过动态库的,调用声明的都没有问题,只是传递的时候会出现丢值的现象。我用的函数参数是一个结果体,结构体里面有五个参数,传值期间只能成功传递三个过个,2个int型,三个long型。两种参数都能传递过去,只是long型会出现数据丢失的情况,我尝试着改成int型的,但是还是依旧如此。我想请教下,有哪些情况下会出现动态库传数据会出现我这种情况呢。望指教!!!
[解决办法]
如何通过 DLL 传数据的? 使用共享的数据段吗?
[解决办法]
数据类型的问题,long在VC和C#中的大小并不是一样的。最好用COM接口,或二进制块,或将参数组合为字符串。
[解决办法]
C#long是64位的 C++的long不一定是64位
[解决办法]
最直接的查错办法是单步对应汇编指令。

对学习编程者的忠告:
眼过千遍不如手过一遍!
书看千行不如手敲一行!
手敲千行不如单步一行!
单步源代码千行不如单步对应汇编一行!

热点排行