如何通过Dll传递string类型的值。。。

Delphi > VCL组件开发及应用 [问题点数:0分]
等级
本版专家分:247
结帖率 100%
等级
本版专家分:606
等级
本版专家分:247
等级
本版专家分:18474
等级
本版专家分:18474
等级
本版专家分:247
dead_lee

等级:

dll传递string实现方法

delphi中dll传递string的实现方法:  dll项目uses第一个引用sharemem单元;  调用的项目uses第一个引用sharemem单元;  调用的单元uses第一个引用sharemem单元;  **********************************************

使用std::string 通过dll接口传递时,应该注意的问题

问题描述:  在一个lib库中用到了另外一个库的dll,lib库的运行时库是“多线程DLL(/MD)”,...导致向dll的接口传递std::string参数时报错。 解决方法:  将lib项目的运行库改为“多线程调试DLL(/MDd)”. 原因分析:

QT中调用C#封装的DLL如何传string类型的参数

当然我们知道不能直接在Qt中调用C#封装的dll,我这边采用的实现方案是先用...函数库调用成功后,遇到一个问题是如何将C#函数中的System::String类型的参数传出来,在Qt中得到QString类型的数据。 经过探索以及实验,.

DLL传递std::string

网上查了查,大致说,不要在DLL传递STL数据类型,包括std::string,以及MFC CString。 但是传递 char * 也太繁琐了点。目前不知有什么好办法。   见下面的文章: 调用其他DLL传递vector和st...

DLL传递STL参数(std::string传引用崩溃)

目前我有一个dll, 有这么一个导出函数void func(const char* pszIn,std::string& out);但是这样会出现一个问题,因为out修改后的内存是dll里面分配的,然后在主程序里面释放会导致崩溃问题。解决办法,参考curl...

C#调用C++DLL,及回调函数、string参数传递的总结

Dll端: extern "C" __declspec(dllexport) int Add(int a, int b) {  return a+b; } C#端: [DllImport("aeClient2.0.dll", CallingConvention =CallingConvention

python调用dll文件时,字符串作为变量传递

chr=ctypes.create_string_buffer(b'./model_data/images/meter1.jpg') pDll.MeterReco(chr) 这种方式下b后面的路径不能变,图片传入每次都是一样,不方便修改,如果改成如下所示 savepath='./model...

C++和C#混合编程,C#调用C++生成的dll以及字符串传递

1、创建下图类型的项目 默认生成的是这样的,我们在Dll3.cpp中写函数就行。 2、创建、或者从外部引入C++文件。 注意:要在每个cpp文件的头部都加上 #include “stdafx.h”,而且一定要在首行。不然会报错。 注意:...

DLL的时候传递string参数出现bad ptr

这个问题非常地恶心,搞了我一...后来发现原来string是STL里的,所以不同编译器对它的处理是不一样的,做好了DLL之后,当别人调用的时候可能使用别的编译器,这样就很可能会出现,问题的终结是在我看了这个帖子之后: ...

C#调用C++的dll实例,回调函数,string和int数组参数传递

C#调用C++的dll实例,回调函数,string和int数组参数传递,在vs2010下调试通过,总结在这里,供大家参考。

C#程序调用C++写的dll传递string出现bad ptr

本来是做C/C++的,因为... 参考网上的按照下面的方式来,结果在C++的dll库中打断点,第二个参数怎么都是bad ptr,郁闷至极,耗费了两天的功夫,都没有搞定,也参考了:http://blog.csdn.net/yongshengsilingsa/articl

VB中的String类型调用VC的DLL

VB中的String类型调用VC的DLL EXTERN_C BSTR WINAPI RetStr(LPCTSTR str)  {  return SysAllocString((BSTR)str);  }  VB中 Private Declare Function RetStr Lib "D:\learn\VB\fangda\MFCDIB....

DLL传递STL参数

以下是自己在调测代码过程出现问题后,搜索出来的资料,虽然很乱,但明白了在跨DLL传递stl中的容器类对象时存在问题的原因及解决办法,故保存之。 STL跨平台调用会出现很多异常,你可以试试. STL使用...

c#调用go语言生成的dllstring不成功,急!

//System.Runtime.InteropServices.MarshalDirectiveException:“方法的类型签名与 PInvoke 不兼容。” [DllImport("SearchMusic.dll", CharSet = CharSet.Unicode)] static extern GoString Search(GoString...

Delphi字符串 DLL传递字符串方式

每次在写dll传递字符串时需要费很大的劲。 在这里来一个Demo演示一下: dll代码:library dlltest1; uses SysUtils, Classes; {$R *.res} procedure fun1(p1: pchar; var p2: pchar); stdcall; var str: ...

通过DLL导出类指针来传递及使用对象

开发DLL是windows编程中经常用到的一种技术。d

Delphi Dll传递Pchar类型参数是否需要加var

比如原来有个函数是这样的: ...varMsg:string);stdcall;//返回消息 begin Msg:='OK'; end; 现在改成这样: procedureGetMsg(ret:Integer;varMsg:PChar);stdcall;//返回消息 begin StrPCopy(Msg,'...

Python编程提高:如何调用DLL函数之传递数值、指针与字符串参数

由于DLL中函数中传递的参数类型比较多样化,拟打算分三次讲解这部分内容,这次先讲传递数值、指针与字符串参数的情况,后面再分两次讲解传递结构体、数值数组等类型的情况。 DLL文件的加载 假定已经有了一个DLL...

DLL传递STL参数,vector对象作为dll参数传递等问题

STL使用模板生成,当我们使用模板的时候,每一个EXE,和DLL都在编译器产生了自己的代码,导致模板所使用的静态成员不同步,所以出现数据传递的各种问题,下面是详细解释。 原因分析: 一句话-----如果任何STL...

C# 调用C++dll string传递问题

DLL 需传入char *类型  [DllImport(“MyDLL.dll")]  //传入  public static extern int mySum (string astr1,string bstr1);  //DLL中申明  extern “C” __declspec(dllexport) int WINAPI mySum...

java使用jna调用c++的string参数类型函数时报错

前述:在测试时,java使用jna调用int add(int a,int b)方法时正常执行函数,java中能正常接收返回值类型,当调用string参数类型函数返回值也为string的函数时报错,实际上native方法是能够执行的。报错信息如下:...

C#调用C/C++的DLL实现字符串的传递

然后新建一个C/C++源程序文件,完成的DLL需要处理的功能,如:int dlltest(char *str, char *ans){……}str作为传入的字符串,ans作为传回的字符串,因内存实际在C#调用端分配,提供内存引用。 新建...

golang调用dll传递数组参数问题

font_path:=[]string{"C://Windows/Fonts/AdobeHeitiStd-Regular.otf","C://Windows/Fonts/AdobeFanHeitiStd-Bold.otf"} fontCount := 2 fontSize := 12 fd := make([]byte,1000000) var imgSize []int64 var ...

Delphi的dll如何向C#传出string(1)

如果从dll传出string,一般定义成PChar,由调用者分配好内存,并告诉大小,这样比较麻烦。 既然delphi的dll可以传回variant(实际是array),就把字串转成byte array直接传回吧,如: Delphi XE代码: function ...

dll传递stl注意

...STL使用模板生成,当我们使用模板的时候,每一个EXE,和DLL都在编译器产生了自己的代码,导致模板所使用的静态成员不同步,所以出现数据传递的各种问题,下面是详细解释。 原因

Unity使用C#调用C++dll传递指针参数、接收指针返回值

下面是引入DLL的代码片段: [DllImport("BthExports")] public extern static IntPtr BthGetName(UInt64 ullAddr); 其返回的内容为一个Uint64的数组,我们可以用“IntPtr”来代替这个C++方法体返回...

DLL传递字符串数组输出参数

一开始想通过vector输出参数方式,在DLL中添加数据库服务器名称。不过在释放输出参数的时候出现错误,这是由于输出参数的资源是在DLL中申请,而在主程序中进行释放,如果申请和释放的方式不一致,就会导致释放出错。...

JNI技术学习(二):Java 与 C++ 之间传递String,自定义类,自定义类的数组

现在的需求是:JAVA端获取到一定格式的数据,之后传递给C++端,C++端获取这部分数据之后,进行算法的操作,之后重新以另外结构的格式传递给JAVA端使用。 思路:JAVA端我采用类的方式来存数据,然...

c# 调用 C++ dll 传入传出 字符串

C#调用 非托管C++ dll 传入Stringbuilder、ref string 、 ref char 等都报错,如mscorlib.dll 异常、其他信息: 尝试读取或写入受保护的内存。

C#调用C++DLL传递结构体数组的终极解决方案

在项目开发时,要调用C++封装的DLL,普通的类型C#上一般都对应,只要用DllImport传入从DLL中引入函数就可以了。但是当传递的是结构体、结构体数组或者结构体指针的时候,就会发现C#上没有类型可以对应。这时怎么办,...

相关热词 c# 自行处理dpi 运行c#上的.exe文件 c#控制间隔时间 c#局部透明 c#手机图片左右滑动特效 c# 组合类表框 c# 数组过滤 c# 重载和重写实例 c#.net制作窗口 c# 括号内 正则表达式