| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 465 人关注过本帖
标题:[求助]
只看楼主 加入收藏
hly2005
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2005-9-16
收藏
 问题点数:0 回复次数:0 
[求助]

有一段vc程序做成了DLL.我想把里面处理完毕的结果返回到vb里面,(处理完的结果存储在结构体里)。我返回结构体指针,可是在vb里返回的值不对。代码如下,大家帮忙分析一下呀。 vc程序: #include <windows.h> #include<iostream.h> struct mfs { long int fset; int mcw[5]; } extern "C"_declspec(dllexport) struct mfs *_stdcall GetDataPoint(); int struct mfs *_stdcall GetDataPoint() { struct mfs mf; struct mfs *m; mf.mcw[0]=1; mf.mcw[1]=2; mf.mcw[2]=3; mf.mcw[3]=4; mf.mcw[4]=5; mf.fset =10; m=&mf; return (m ); } vb里面: Option Explicit Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long) Private Declare Function GetDataPoint Lib "MyDLL.dll" () As Long

Private Sub Command1_Click() Dim mf As mfs Dim mfPoint as long

mfPoint=GetDataPoint() CopyMemory mf, mfPoint, Len(mf) Text2.Text = mf.fset End Sub 其中的mfs定义在模块中: Type mfs mcw(5) As Long fset As Long End Type

搜索更多相关主题的帖子: include 结构体 
2005-09-28 16:10
快速回复:[求助]
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017033 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved