2010-12-15 91 views
0

我已经尝试了很多东西,但是我无法得到它的工作。我可以向C++传递并接收普通字符串(char *),但我无法接收C++中的Unicode字符串(w_char_t *)。将unicode字符串从VB.net传递到C++ dll

下面是C上的码的一些比特++

__declspec(dllimport) int __stdcall readFile(const w_char_t *file_path) 

上VB.net

Public Declare Function readFile Lib "MyDll.dll" Alias "[email protected]" (ByVal file_path As String) As Integer 

当我改变w_char_tchar我收到正确的字符串。

我发现在VB6了大量的素材,而不是VB.net

任何帮助极大的赞赏。

莱昂

回答

0
Public Declare Unicode Function readFile Lib "MyDll.dll" Alias "[email protected]" (ByVal file_path As String) As Integer 

另外,你的C++代码有dllexport没有dllimport,对不对?

+0

这有帮助。非常感谢。 (也称dllexport) – Leon 2010-12-15 07:53:31

0

尝试变换的UnicodeString到字符串(通过使用一些系统定义的功能),并且然后将该字符串或字符*到C++ DLL。

希望这会起作用。

相关问题