掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB,VC++にまたがるプログラムで,データの値を追跡(いわゆるデバッグ)する方法を教えて下さい. (ID:55059)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
RAPTさんどうも有難うございます.おそらくそれが原因だと思います. VB側に,値が渡されるようになりました. ところで,多少腑に落ちないのが,もともとVBでは以下のように宣言していたのですが,このときは,VBのFFTWoutは確かに0のままでした. ただし,FunctionをSubに訂正済みです. ↓ Private Declare Function dft_1d Lib "FFTW.dll" _ (ByVal n As Long, FFTWin As fftw_complex, FFTWout As fftw_complex, ByVal sign As Long) 宣言文で,ByValとかByRefとか指定しなければByRefになりましたよね. 少なくとも,ByValだと,「ユーザー定義型はByValでは渡せません」というエ ラーメッセージが出ます. Option Explicitを宣言していたので,ByRefと明記しないといけないと思 い,ByRefを明記するとPARTさんの言うようにVBのFFTWoutに値が渡されるよう になりました. ところが,今度は逆にもう一度,ByRefを除くと,さっきまではうまく FFTWoutに値が渡っていなかったのが,今度はきちんと渡るようになりまし た.こんなことってあるのでしょうか. あと,一連のデバッグ過程でもうひとつだけ変なことがありました. VBのFormなどが入っているフォルダにSample.txtを入れて Open "Sample.txt" For Input As #1 としていたのですが,「実行時エラー'53':ファイルが見つかりません」と出ました. ところが,そのフォルダを,c:の直下に持ってきて実行させると,うまく Sample.txtを認識し,そのあと,c:\xxxxx\xxxxx\xxxxx\と順番に階層を下げ 元の場所にまで戻ると,それらのどの階層でも,うまくSample.txtが読み込ま れました.こんなことってあるのでしょうか. 多少謎は残りましたが,本題「VB,VC++にまたがるプログラムで,データの 値を追跡(いわゆるデバッグ)する方法を教えて下さい.」は解決しました. 結局のところ,VB,VC++上での単なる私の構文ミスが原因のようでした. これまで,私の質問に対して親身になって回答してくださった,皆さん本当 にどうも有難うございました.また,何かあった際にはどうぞよろしくお願い 致します.
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.