掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
C++で作成したDLLとVBAとで文字列の受渡しをするには? (ID:62344)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
WinAPIのように文字列バッファを渡す方法が簡明です。 ' VB Declare Sub Test Lib "xxxx.dll" (ByVal str As String) 〜 Dim str As String str = String(256, vbNullChar) Test str str = Left$(str, InStr(str, vbNullChar)-1) ' VC void WINAPI Test( char* str ) { strcpy( str, "てすと" ); } 文字列バッファを渡したくないのであれば、SysAllocString関数を使うことになります。 ' VB Declare Sub Test Lib "xxxx.dll" (ByRef str As String) 〜 Dim str As String Test str ' VC void WINAPI Test( BSTR* str ) { SysFreeString( *str ); *str = SysAllocString( L"てすと" ); // SysAllocStringByteLenの方かも }
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.