繁体   English   中英

从C ++ dll返回字符串到vb

[英]Returning strings from C++ dll to vb

我有以下dll cpp文件

#include "stdafx.h"
#include <string.h>
#include <Windows.h>
#include <OleAuto.h>
using namespace std;
extern "C" __declspec(dllexport) BSTR func(BSTR a) 
{
BSTR buffer;
buffer = SysAllocString(a);
 return buffer;
}

在vb端

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim string1 As String
    string1 = func(TextBox1.Text)
    TextBox2.Text = string1
End Sub

上面的代码可以正确编译,但是在文本框中显示字符串之前,该窗体已关闭。 但是如果我以整数形式返回文本,则可以正常工作...

BSTR!= VB.NET字符串我认为,,,使用LPCSTR

extern "C" __declspec(dllexport) LPCSTR func(LPCSTR a) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM