易截截图软件、单文件、免安装、纯绿色、仅160KB

vb调用vc编写的DLL,问题!

我想实现这样一个效果:
我用VC编写了个DLL ,VB 调用里面的一个函数,返回给VB一个字符串,
目前要不就是乱码,要不就是崩溃!我查了网上很多资料,都没有成功 !
请大虾们99999我啊 !
例子如下:
VC:
SQLCE3_DRIVER_API BSTR TestString(LPCTSTR InStr)
{

CString Buf;  
  Buf = "测试用例";  
  return Buf.AllocSysString();  
   
}
VB:
Private Declare Function TestString Lib "Sqlce3_Driver.dll" Alias "?TestString@@YAPA_WPB_W@Z" (ByVal strS As String) As String
  Dim a As String
  a = TestString("这个参数没有意义")

输入一个已经初始化好的字符串缓冲区地址,及其长度.

然后DLL里向那个缓冲区写入内容,并返回实际写入的长度.

参考GetComputerName的用法.

能不能帮我写个例子呢 ,我很少用VB。谢谢了 ~

SQLCE3_DRIVER_API 是什么?VC我不熟.

但一般是声明为WINAPI,VB只支持stdCall.

把例子里的Buf内容复制到输入的InStr指针里.

再加个参数,大约如下:

C/C++ code:
WINAPI INT TestString(LPCTSTR InStr,int StrLength)
{

CString Buf;
Buf = "测试用例";
memcpy instr,&buf,sizeof(buf); '这里要复制,语法不知道对不对
return sizeof(buf);
}

VB里面:


相关问答:

【急求】VB中使用WScript调用外部命令 - VB / 基础类

在下是vb的新手,想写段程序,在vb中,使用wscript调用一些外部的命令,但是程序执行一直有错误,请各位高手帮忙解答下,谢谢。
代码如下:
VB code:

Private Function getFile_CMD(filename, filepath) As Bo ......

vb - VB / 基础类

在vb中如何读取Word内容(包含表格,图片,等)
竟然不是zero。

不知道怎么实现的不要说话

这个只能读文本,
VB code:
Private Sub Command1_Click()
Dim WordApp As Object
Set WordApp = CreateObject(& ......

vb crystalreport - .NET技术 / VB.NET

Private Sub btnPrint_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPrint.Click
  MouseWait()
  Dim ClearTempTabelSQL As String
  'If Not ......

vb - VB / 非技术类

怎么把已知的数据保存成xml文件,现在已知的数据是
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:o=& ......

vb操作excel - VB / 基础类

问题:
现在Access数据库中有两张表TableA和TableB
TableA中有记录如下:
字段1(Name) 字段2(Num)
  A 3
  A 4
  B 6
  ... ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号