У меня есть следующий 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 String, я думаю ,, использование LPCSTR
extern "C" __declspec(dllexport) LPCSTR func(LPCSTR a)