★初心者にVisual C++を教えるスレ★ Part4
952 :
デフォルトの名無しさん:03/03/24 19:57
vb6.0で作ったexeを、vc6.0でデバッグするしたいのですが、
プロパティのコンパイル設定で最適化なし、シンボリックデバッグ情報を作成、
した後、どのように関連付けていいのかわかりません。
まことに恐れ入りますが、教えていただけないでしょうか?
>>954 確かに言いたいことつたわらないどころか、まともな文章になってないですね。すいません。
つまり、VB(EXE)のソースをVC(DLL)側からデバッグ中にトレースしたいのですが、なんとかなりませんでしょうか?ということです。
いいたいこと、わかりますでしょうか?
VBではデバックできんの?
>>955 DLLをビルドしたプロジェクトを開いて、
プロジェクト→設定→(設定の対象を適当に選択)
→デバック・タブのデバックセッション実行可能ファイルでVB(EXE)を指定する。
→実行(F5)
でデバックスタート。
>>956 957
thx。でも、すでに957氏の方法でやっているんですよ。
だけど、VBではVCのDLLはうごくんですけど、VBのソースだけトレースできなく、
DLLがこけてもどこでこけたか、いまいちわかりづらいし、
VCではVBのEXEは動くんですけど、VCのDLLの部分しかトレースできないから、
EXEのどこでこけてるかわかりづらい。
VBのボタン押したら起動、終了するプログラムをVCの方でマルチスレッドでゴリゴリ書いてて、
例外処理 (初回) は Hoge.exe (KERNEL32.DLL) にあります: 0xC0000005: Access Violation。
とでてきて、どこでこれが起きてるか場所特定できないなかったので、
両方のソースを同時にトレースする方法でもないものかと思い尋ねてみたんです。
(なんかできっるぽいようなことがちらほらとWEB上に書いてあるんですけど、具体的方法が書いていないの。)
まぁ、原因はmutex(クリティカルセクション)の設定が悪かっただけなんですけど。
くだらん質問に答えていただき、どうもありがとうございますた。それでは失礼いたします。
(ちなみに、バグの個所わかってもなかなか全部消えてくれない。。。)
新人用にVC.NETの入門書探してたんですが
結局日経ソフトウェアの5月号が一番わかりやすそうでした。
初心者はどうぞ
>>958 そりゃ出来んわな。元のソースを工夫汁。
961 :
デフォルトの名無しさん:03/03/25 11:33
hoge.frm(VBのソース?)をVCのプロジェクトに追加したら、VCでhoge.frmをデバッグできるようになってますた。
vbのコンパイルオプションは
>>953 です。
>>962 すげー、出来るんだ~。勉強になりますた。
CTreeViewの中でアイテムテキストエディット中に、
アクセラレータキーを無効にするにはどうしましょう?
BeginLabelEditとEndLabelEditで編集の開始と終了をハンドリングして
編集中はアクセラレータキーをtranslateしないようにすりゃいいのか。
すみません、STLでの質問ですが
メモリ確保に失敗したとき例外が投げられてるみたいですけれど
上手くcatchできません
vector<BYTE> b;
try{
b.reserve(1 * 1024 * 1024 * 1024);
}
catch(***){ // ←ここの***にクラスの参照入れるんでしょうけど、どのクラスか分かりません
...
}
他のスレできくべきかと思いましたけど
VisualC++を使ってること、初歩的な内容の質問だと思われたのでここで質問しました
自己解決できました
catch(...){
}で捕まえることができました
お騒がせしました
>>968 catch(std::exception& e){
std::cout << e.what() << std::endl;
}
とかやると、詳細をダンプしてくれて便利。
971 :
デフォルトの名無しさん:03/03/26 03:48
スタートメニューの整理をしてたら誤まって
Visual C++ 6.0 Professional のショートカットを
消してしまい場所がわからなくなってしましました。
申し訳ありませんが、VC++6.0のショートカットの場所を
お教え頂けないでしょうか?
OSはWinMeです。
Visual C++ は catch ( ) で特定の例外を
キャッチすることはできなかったはず。
できるがな
構造化例外とC++例外がちゃんと切りわけられてないな
>>972 どうもありがとうございます。
おかげさまで復旧できました。多謝!
VC++のC++例外は構造化例外で実装されています
978 :
デフォルトの名無しさん:03/03/26 14:49
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
★ウゼェキエロ!!!★ウゼェキエロ!!!!!!!!!!!!!!!!!!!!!!★
超厨な質問すみません。
いま、作ってわかるVISUAL C++6.0という本を読んで勉強中ですが、
本の中にコードを追加してくださいとあって
そのなかに星みたいな記号がありました。
*なら打ち込めるのですがなんかちょっと違うみたい・・・・・
もしよろしければ、その記号の入力の仕方を教えていただきたく存じます
>>980 それじゃあ何の文字が入力できないのか分からない。
でも多分、アスタリスク * の事か?
だとしたら、あなたが 980 に書いたものを半角で打てばいいはずだ。
印刷物だとたまに*が線5本で描かれてたりするから紛らわしい。
/************** (゚Д゚)ハァ? *****************/
984 :
かえるのおっさん:03/03/26 17:31
984
985 :
かえるのおっさん:03/03/26 17:32
985
☆★
次スレ、もうそろそろ作るべき?
>>982 多分それです。線が5本の星でした。
じゃぁ、アスタリスクなのですね。
みなさま、本当に厨質問にレスありがとうございます
990 :
デフォルトの名無しさん:03/03/27 01:08
CComboBoxで入力もできるタイプのリスト(ブラウザのアドレス入力欄みたく)にした時、現在選択(入力)
されている文字列を取得するにはどうしたら良いのでしょうか?
CComboBoxのメンバ関数には選択されてるセルのインデックスを取得する関数はありましたが、文字列
を取得する関数がなさげでしたので・・・
なお、ファイル名等に限定して取得する関数はCWinクラスにありましたが、それを実行するとゴミが余計
についてきてしまいます
>>990 >文字列
を取得する関数がなさげでしたので・・・
あるだろ。GetLBTextは違うのか?
993.
994
995!!!!
996
997
998
999
1000 :
デフォルトの名無しさん:03/03/27 12:45
久しぶりに1000ゲット
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。