资源简介
VB调用VC写的DLL返回数组,里面有VC,VB 及DLL源码
代码片段和文件信息
#include “Dll2.h“
extern “C“ __declspec(dllexport) int _stdcall add(int aint b)
{
return a+b;
}
extern “C“ __declspec(dllexport) int _stdcall subtract(int aint b)
{
return a-b;
}
extern “C“ __declspec(dllexport) long _stdcall mul(int aint b)
{
return a*b;
}
extern “C“ __declspec(dllexport) long _stdcall divide(long along b)
{
return a/b;
}
extern “C“ __declspec(dllexport) VARIANT _stdcall GetBuffer(void)
{
BYTE buf[256];
for(int j=0;j<256;j++)
{
buf[j]=j;
}
VARIANT varRet;
VariantInit(&varRet);
SAFEARRAY *psa;
SAFEARRAYBOUND rgsabound[1];
rgsabound[0].cElements =256;
rgsabound[0].lLbound = 0;
psa = SafeArrayCreate(VT_UI11rgsabound);
for(long i=0;i<256;i++)
{
SafeArrayPutElement(psa&i&buf[i]);
}
varRet.vt = VT_ARRAY|VT_UI1;
varRet.parray = psa;
return varRet;
}
extern “C“ __declspec(dllexport) VARIANT _stdcall GetArray(void)
{
/*
BYTE buf[256];
for(int j=0;j<256;j++)
{
buf[j]=j;
}
*/
VARIANT varRet;
VariantInit(&varRet);
SAFEARRAY *psa;
SAFEARRAYBOUND rgsabound[1];
rgsabound[0].cElements =256;
rgsabound[0].lLbound = 0;
BYTE buf[255]={0123456789101112131415161718192021};
psa = SafeArrayCreate(VT_UI11rgsabound);
for(long i=0;i<256;i++)
{
SafeArrayPutElement(psa&i&buf[i]);
}
varRet.vt = VT_ARRAY|VT_UI1;
varRet.parray = psa;
return varRet;
}
/*
使用SafeArrayAccessData直接读写SafeArray的缓冲区:
(1)读缓冲区:
BYTE *buf;
SafeArrayAccessData(varChunk.parray (void**)&buf);
f.Write(buflIsRead);
SafeArrayUnaccessData(varChunk.parray);
(2)写缓冲区:
BYTE *buf;
::SafeArrayAccessData(psa (void**)&buf);
for(longindex=0;index {
buf[index]=bVal[index];
}
::SafeArrayUnaccessData(psa);
varChunk.vt = VT_ARRAY|VT_UI1;
varChunk.parray = psa;
这种方法读写SafeArray都可以,它直接操纵SafeArray的数据缓冲区,比用SafeArrayGetElement和SafeArrayPutElement速度快。特别适合于读取数据。但用完之后不要忘了调用::SafeArrayUnaccessData(psa),否则会出错的。
*/
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 32256 2014-04-21 11:30 VB调用VC写的DLL返回数组V1.03\C++使用VARIANT实现二维数组的操作.doc
文件 225376 2014-04-21 11:33 VB调用VC写的DLL返回数组V1.03\Dll2.dll
文件 974 2014-04-15 13:59 VB调用VC写的DLL返回数组V1.03\Dll2.exp
文件 267612 2014-04-15 13:59 VB调用VC写的DLL返回数组V1.03\Dll2.ilk
文件 2560 2014-04-15 13:59 VB调用VC写的DLL返回数组V1.03\Dll2.lib
文件 225376 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\Dll2.dll
文件 1095 2014-04-21 12:34 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\Dll2.exp
文件 271772 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\Dll2.ilk
文件 2758 2014-04-21 12:34 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\Dll2.lib
文件 16809 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\Dll2.obj
文件 3546480 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\Dll2.pch
文件 664576 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\Dll2.pdb
文件 140288 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\vc60.idb
文件 86016 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Debug\vc60.pdb
文件 2149 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.cpp
文件 72 2014-04-21 12:10 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.def
文件 225376 2014-04-21 11:33 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.dll
文件 4127 2014-04-21 12:06 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.dsp
文件 531 2005-03-19 10:18 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.dsw
文件 454 2014-04-21 12:07 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.h
文件 66560 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.ncb
文件 53760 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.opt
文件 1183 2014-04-21 15:09 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.plg
文件 1278541 2014-04-21 11:33 VB调用VC写的DLL返回数组V1.03\Dll21\Dll2.rar
文件 2548627 2014-04-21 12:34 VB调用VC写的DLL返回数组V1.03\Dll21\Dll21.rar
文件 229888 2014-04-21 09:12 VB调用VC写的DLL返回数组V1.03\DLL里可以把BYTE以SAFEARRAY的方式用VARIANT存起来当成返回值,C#调用的时.doc
文件 3101 2014-04-21 11:43 VB调用VC写的DLL返回数组V1.03\Form1.frm
文件 518 2014-04-21 11:08 VB调用VC写的DLL返回数组V1.03\Module1.bas
文件 193 2010-12-20 17:17 VB调用VC写的DLL返回数组V1.03\MSSCCPRJ.SCC
文件 24576 2014-04-21 10:47 VB调用VC写的DLL返回数组V1.03\Project1.exe
............此处省略50个文件信息
- 上一篇:个人资料管理工具VB20191226.zip
- 下一篇:HART通讯测试软件.rar
相关资源
- VBA调用dll
- VB6.0_DLL制作工具(Ver2.01)
- DLL函数查看器V3.5
- VB写的DNF外挂源码,利用DLL劫持原理,
-
完美版hostli
nk协议dll 3.2版VB、VC、 - 加密vba通用破解dll文件
- vb6生成和解析二维码条形码的动态链
- AOD控件MSDATGRD.OCX和MSSTDFMT.DLL
- geocom32.dll
- vb加载lua用的模块mdlLua.bas
- numvbDll(VB矩阵运算模块)
- vb6的dll线程注入CreateRemoteThread ,Get
- PCCOM串口控件DLL
- 台达Delta Modbus通讯函数库
- VB6.0DLL编译标准DLL工具 v2.05
- VB 应用最新SQLite3.DLL动态库的方法
- VB自动生成批处理文件注册DLL部件
- S7_200_PPI.dll
- POSDLL 1.4(POS打印机直接操作接口文件
- VB写DLL和调用dll
- VB.NET中的DLL编写和调用的最简单
- crc16校验dll(含vb调用)
- VB Modbus RTU源码其中协议部分已生成
- vb代码---仿MSN右下角弹出窗口文件带
- VB6CHS.DLL
- 更改 打印机 自定义 纸张类型 强大
- WIN7旗舰版 uxtheme.dll_themeservice.dll_the
- SkinH_VB6.dll 最新完美破解版
- VB6+libMysql.dll连接Myql 支持5.0以上.终
- vb.net编写dll给其他语言调用源码.rar
评论
共有 条评论