社区
Delphi
帖子详情
调用DLL传递指针参数的问题
gongluyang
2004-12-30 08:50:34
我在一个DLL中有一个函数的定义是这样的
void funca(char *p)
我在DELPHI中应该怎么调用这个函数呢???
我是这样写的
pstring : string
pstring := 'ok'
funca(@pstirng)
这样可以吗?
如果不行,请哪位大哥告诉我
我今天第一次接触DELPHI
急需要指点
感激不尽!
...全文
216
16
打赏
收藏
调用DLL传递指针参数的问题
我在一个DLL中有一个函数的定义是这样的 void funca(char *p) 我在DELPHI中应该怎么调用这个函数呢??? 我是这样写的 pstring : string pstring := 'ok' funca(@pstirng) 这样可以吗? 如果不行,请哪位大哥告诉我 我今天第一次接触DELPHI 急需要指点 感激不尽!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lylen
2005-03-16
打赏
举报
回复
你的DLL调用的时候有没有定义错啊?贴出来看看!
静态调用:
function funca(p:pchar):函数返回类型 stdcall;external 'DLL名称';
是否在同一目录下?
主要是数据类型的一致性!
beyondtkl
2004-12-31
打赏
举报
回复
呵呵 是呀 调用DLL我刚想到的
1.被调用方:确定你的DLL有正确的导出函数 如果是vc的话 可以使用dumpbin /exports your.dll 查看
2.调用方: 动态+静态 加载 暂不区分方式之类的
为导入函数进行相应的声明 这时候需要注意
2.1 数据类型的对应
2.2 调用方式的一致
一般来说 都差不多了。。
zl54
2004-12-31
打赏
举报
回复
大哥 DLLIMPORT 关键字错误!!!!!!!!!!!!!!
DLLEXPORT!!!!!!!!!!
gongluyang
2004-12-30
打赏
举报
回复
不会的,因为我用VB调用的时候没有错,但现在在DELPHI里调用setMyPCName后就是乱码
这是怎么回事呢?
我觉得还是参数的问题,
可能他给DLL传的是个指针的指针,所以就显示乱码
herman~~
2004-12-30
打赏
举报
回复
估计是你dll函数写错了,贴出来 看看啦
gongluyang
2004-12-30
打赏
举报
回复
然后是用command prompt 编译的
gongluyang
2004-12-30
打赏
举报
回复
DLLIMPORT void setMyPCName(char *c_name)
{
strcpy(pcName, c_name);
}
DLLIMPORT void setMyPCFileList(char **p)
{
pPathList=p;
}
DLLIMPORT void stopMyPC( )
{
TerminateThread(hControlThread , 0) ;
TerminateThread(hDataThread , 0);
TerminateThread(hBrdcstThread , 0);
}
DLLIMPORT int startMyPC( )
{}
这是那个几个函数的定义
那么要怎么样调用呢??
谢谢了!!!!!!
boatzm
2004-12-30
打赏
举报
回复
你的函数定义是否是对的哦?
贴出来看看~
gongluyang
2004-12-30
打赏
举报
回复
是cdecl和stdcall
在DELPHI里面分别怎样处理???
我在线等
谢谢大家的帮助!
gongluyang
2004-12-30
打赏
举报
回复
也不行啊
他会报一个错:
incompitable types:'array' and 'pointer'
类型不对吗?
boatzm
2004-12-30
打赏
举报
回复
对了注意调用约定,stdCall,还是cdecl以及其他东西。。。。
boatzm
2004-12-30
打赏
举报
回复
pChr : array[0..1023] of Char;
funca(pChr);
一般这种应该还要传个len 。要不怎么知道,填多少?
gongluyang
2004-12-30
打赏
举报
回复
执行到AllocMem(pchr);时会报错:
incompitable types:'cardinal' and 'pansichar'
这是什么错误??
我今天刚学DELPHI,不好意思,这种问题也问大家
但我明天要出东西,所以比较急
「已注销」
2004-12-30
打赏
举报
回复
pchr :PChar;
AllocMem(pchr);//分配内存
pchr := PChar('ok');
funca(pchr)
gongluyang
2004-12-30
打赏
举报
回复
不行啊,大哥
是乱码
估计传错了参数
Kevin_Lmx
2004-12-30
打赏
举报
回复
pchr :PChar;
pchr := PChar('ok');
funca(pchr)
安卓原生开发
调用
后端接口视频教程
课程讲解聊后端接口开发、跨域请求、电脑识别手机(开启开发者选项和usb调试模块、数据线、usb接口)、真机调试、断点调试、安卓项目创建、清单文件配置、安卓窗体创建、安卓窗体布局、通过程序动态获取界面控件的值和设置界面控件的值、给安卓布局元素绑定点击事件、安卓窗体之间的跳转和
参数
传递
、重写安卓适配器实现列表数据绑定、给数据列表中的数据项绑定点击事件、点击列表项查看详情、后端数据表设计和接口开发、安卓端
调用
接口并
传递
参数
、解决中文乱码
问题
、对安卓软件进行签名和发布等功能。功能比较简单,但是课程比较详细,特别适合初学者。
Python如何使用
DLL
传递
指针
参数
?
在这篇文章中,我们介绍了如何在Python中使用
DLL
传递
指针
参数
。我们使用了ctypes模块来加载
DLL
和定义
参数
类型及返回值类型。通过这些步骤,我们可以成功地将
指针
参数
传递
给
DLL
函数并从函数中获得返回值。在与动态链接库通信时,我们需要
传递
指向函数
参数
的
指针
。本文将介绍如何在Python中使用ctypes模块
调用
DLL
并
传递
指针
参数
。在上面的代码中,我们使用ctypes.byref()函数获取指向变量的
指针
。现在,我们已经加载了
DLL
,接下来我们可以定义需要
传递
的
参数
类型和返回值类型。
python
调用
dll
传
指针
参数
python
调用
dll
传
指针
参数
matlab如何使用
指针
,Matlab
调用
DLL
以及matlab
指针
参数
传递
.doc
Matlab
调用
DLL
以及matlab
指针
参数
传递
Matlab
调用
DLL
? 本来想把算法写成一个
DLL
的形式,这样既可以在控制软件中方便
调用
,又可以在Matlab中通过
调用
外部
DLL
的形式对算法进行仿真分析,所以需要了解Matlab
调用
外部
DLL
的方法,但是后来发现Matlab
调用
DLL
只支持用C语法写成的
DLL
,C++的一些关键特性如类、继承等都不支持,用起来的话局限性很大的,还不如单独再用M文...
Unity使用C#
调用
C++
dll
传递
指针
参数
、接收
指针
返回值
C#
调用
C++返回
指针
参数
用IntPtr接收返回 下面是引入
DLL
的代码片段: [
Dll
Import("BthExports")] public extern static IntPtr BthGetName(UInt64 ullAddr); 其返回的内容为一个Uint64的数组,我们可以用“IntPtr”来代替这个C++方法体返回的
指针
,我们可以先来看一下“IntPtr”的定义:“In
Delphi
5,402
社区成员
262,733
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章