2010-12-15 37 views
0

私はたくさんのことを試みましたが、これを動作させることはできません。私は普通の文字列(char *)をC++に渡して受け取ることができますが、C++ではUnicode文字列(w_char_t *)を受け取ることができません。ここVB.netからC++ dllにunicode文字列を渡します

は、C++

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

上のコードのいくつかのビットは、私がcharw_char_tを変更すると、私は、正しい文字列を受け取るVB.net

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

です。

私はVB6の材料の多くを発見したが、VB.net

のためにすべてのヘルプは大歓迎ではありません。

レオン

答えて

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

また、あなたのC++コードにdlllexportはありません。

+0

これは助けになりました。どうもありがとう。 (dllexportもそうだ) – Leon

0

(いくつかのシステム定義関数を使用して)文字列へのUnicodeStringを変換してみてください、そして次にC++ DLLにその文字列またはchar *を渡します。

これがうまくいくと思います。

関連する問題