请问如何在VB里向vc的dll中函数传递结构体变量?

winagain 2003-08-19 03:58:20
如题
...全文
96 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
winagain 2003-08-20
  • 打赏
  • 举报
回复
谁有现成的例子??
kingzai 2003-08-20
  • 打赏
  • 举报
回复
use VARIANT
winagain 2003-08-20
  • 打赏
  • 举报
回复
お願いします
winagain 2003-08-20
  • 打赏
  • 举报
回复
最好能有个例子!!!!
fbmsf 2003-08-20
  • 打赏
  • 举报
回复
方法是这样的:
首先 vb里一般的是用传地址的方式,来进行参数的传递的。
如果你要传值的话,要加上byval ,
其次和你在vb里面的定义也有很大的关系,
举个列子:
Public Declare Function SetFileTime Lib "kernel32" (ByVal hFile As Long, lpCreationTime As FILETIME, lpLastAccessTime As FILETIME, lpLastWriteTime As FILETIME) As Long

比如setfiletime 在vb里的标准的定义是如上的,但是有时我们只想改lpLastWriteTime
,而这样也是允许的,那么就应该把lpLastAccessTime,lpCreationTime 的值传如0,
而用上面的定义是不可以的,所以就要改为:
Public Declare Function SetFileTime Lib "kernel32" (ByVal hFile As Long, ByVal lpCreationTime As Long, ByVal lpLastAccessTime As Long, lpLastWriteTime As FILETIME) As Long
然后'''以下为VB代码
dim LastWT as FILETIME
dim HFile as long
HFile=......
LstWT.dwLowDateTime =97392
LstWT. dwHighDateTime=32545
Call SetFileTime(HFile,0,0,LstWT)
就可以了。
最后:
就是你在vc的dll里定义了一个什么样的结构,那么你在vb里面也定义一个相同的结构,
然后在vb里写函数定义的时候,用 MyMsg as MSG 而不要加byval.

HarryandMark 2003-08-19
  • 打赏
  • 举报
回复
VB我不清楚,所以没法子给你例子,
用VB传引用调用VC的函数应该是可行的。
winagain 2003-08-19
  • 打赏
  • 举报
回复
kingzai(kingzai) ( )谢谢前辈
但是它得结构体内变量太单一了
能不能有
struct
{
int intVar;
long longVar;
char charVar;
string stringVar;
..
}
这样的例子???
kingzai 2003-08-19
  • 打赏
  • 举报
回复
http://www.china-askpro.com/msg13/qa01.shtml
winagain 2003-08-19
  • 打赏
  • 举报
回复
能不能具体一点?

最好有例子
功名半纸 2003-08-19
  • 打赏
  • 举报
回复
最好使用传引用方式!!
VC使用指针!!!!!!!!!!!
CkVision是创科公司自行开发的一款高性能的机器视觉软件开发包,特点是全函数说明,识别精度高,开发速度快,检测功能全面,使用稳定性极高。 CkVision的设计理念是提供一套简单容易的应用开发函数包,接口函数丰富(多达400多个函数),提供DLL和OCX。支持VBVC、BC等多个开发工具。使用DLL开发更灵活,使用OCX编辑代码少,开发速度更快。同时提供大量的范例代码,在软件只需要简单地调用相应的函数就可以完成你要的功能。另外还可以根据客户的要求提供相应的范例。 CkVision集成BLOB分析,对象计数、几何匹配、灰度匹配、彩色匹配、字符识别、条码识别、测量圆、自动找圆、卡尺工具、间距测量、颜色识别、图像基本运算(二值化、比例变换、开运算、闭运算、膨胀、腐蚀、滤波、边缘检测)、几何运算、图像合并、图像旋转、轮廓提取等功能。另外可根据客户要求定制特殊功能。 CkVision软件是基于开放式的体系结构,能很好地兼容多种流行的图像采集卡、数字相机、模拟相机、线性相机,开发包提供有直接从硬件上得到图像数据的功能,使用起来更加简易。 CkVision目前在自动化设备有着广泛的应用,打靶机、冲孔机、点胶机、印刷机、贴片机、COG贴片机、IC烧录机、LED焊线机、LED固晶机、激光打标机、飞针测试机、在线检测设备、在线测量设备等等。

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧