- ベストアンサー
VBAからDLL呼び出し
vbaからC++で作成したDllファイル内関数を呼び出し、使用しているのですが、dllファイル内に記述してあるprintfが出力できません。 何か良い方法があるのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
printfとは、「標準出力に対して文字列を出力する」関数であり、当然標準出力がないと何も起こらない。 ところで、VBAは何のVBAを使っているのだろうか? 一般的にはExcelかAccessだと思うのだが・・・・。 正直、VBやVBAからコンソールをオープンするのはめちゃくちゃ面倒だ。APIを駆使して行う事になる。さらに、恐らくそれでもDLLのprintf()は使えない。コンソールをVBAでオープンして、自前でパイプを作りその入力側をDLLに渡してfprintf()に出力してもらう事になるだろうな。
その他の回答 (1)
- taka_tetsu
- ベストアンサー率65% (1020/1553)
回答No.2
printfは、標準出力(特に指定しなければコマンドプロンプトのような画面)に出力する関数ですので標準出力を持たないOffice製品では無理です。 sprintf等を使用してMessageBoxで表示させるとか、fprintfでファイルに出力させる等、別の手段をとってください。