1 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 17:44:23 ] Visual C++入門者・初心者からの質問を、 お兄ちゃんお姉ちゃん達が優しく、時には厳しく回答してくれるスレッドです。 ■質問するにあたって ・エラーや警告のときはエラーメッセージを書きましょう。 ・開発環境も書きましょう、特にWindowsForm、MFC、Win32アプリケーションの区別。 ・できるだけ具体的に。 質問の仕方については次のページが大変参考になります。 www.hyuki.com/writing/techask.html ■回答するにあたって ・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。 (MSDNのどの項目だとか、何のキーワードでGoogleするとか) ・ネタや煽りは軽く流しましょう。 過去スレ、関連スレなどは>>2-5 辺り。
528 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:23:56 ] MFCなら値を代入しなくてもいいし、パラメータにウィンドウハンドルは存在しない。 すべては「オブジェクト」単位で管理する。 Aというダイアログのオブジェクトを DlgA、BというダイアログのオブジェクトをDlgBとすれば、 ダイアログBにある IDC_STATIC1 は、DlgB.GetDlgItem( IDC_STATIC1) でアクセスできる。 テキストを変更したいなら、DlgB.GetDlgItem( IDC_STATIC1)->SetWindowText( _T("テキスト")); だ。 DlgAのメンバ変数としてDlgBのポインタを保持しておけば、DlgAからDlgBにはすぐにアクセスできる。 上記の文中にでてくる用語の意味が不明なら、ここで質問する前にC++について勉強しろ。
529 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:24:20 ] C/C++の入門書でファイルハンドルの使い方でも勉強すれば 一般的なハンドルの概念が理解できると思う。
530 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:28:10 ] こんなウザいのをよく根気強く相手するなぁ
531 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:34:25 ] もう女房はいいからwww
532 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:37:10 ] >>530 暇なんだよね。不景気でw
533 名前:455 mailto:sage [2009/05/12(火) 13:37:46 ] >>528 だって、>>471 は、MFCなんだろ? ()の中であろうが外であろうが、CWnd::って、c++として記法だろうが、 とにくハンドルみたいなもんじゃないの? ハンドルとは呼ばないかもしれんが。 1,で、とにかく、Cwndの実数はどこでどうやって取得するのか? 2,またそのCWndの使いかた(値が代入された後のCWnd)は、どう使用 すればいいのか。 つまり>>471 のような記述の仕方なのかどうか? 単に「Cwnd::*****」(>>471 )でいいのか? ってことだよ。>>472 では「CWnd::*****」ではないわけだから。 ま、そりゃc++の記法だろうけどさ。 >>472 はc++でなかったら、どう記述する?
534 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:38:40 ] PL/Iだろ
535 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:39:57 ] あれ?やっぱりクラスすらわかってないんじゃね?
536 名前:455 mailto:sage [2009/05/12(火) 13:41:07 ] >>534 文字として書けばそうらしいな。俺は夫婦の会話用語で言ってただけ。
537 名前:455 mailto:sage [2009/05/12(火) 13:49:42 ] >>535 CWndが「クラス」っていうことはわかったよ。だけど 何にせよ、ディスティネーション(例。コントロールの固有アドレスを示すもの。)値 がなきゃ、他のプロシージャからは、目的のコントロールに、exeファイルは到達できない わけでしょ。 だから、そのハンドル(つまりはオフセット・アドレスポインタ)の値の取得(代入) の仕方と、使い方を教えろって言ってるんだよ。
538 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:52:44 ] だからここで質問する前にC++を勉強しろって言ってるんだよ。
539 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 13:54:42 ] だめだ。いくらなんでもここでC++教えるのは無理だw
540 名前:455 mailto:sage [2009/05/12(火) 13:58:00 ] vc++では、IDはワークスペース(プロジェクト)としてはは固有ではないから、 (別なダイアログのコントロールが、同じ”IDC_STATIC1"というID名を持つことはありうるから) ↓これは、やはりスタティックコントロールを持ってる外部プロシージャ(ダイアログ2)から ↓ダイアログ1のIDC_STATIC1を参照したい場合は意味のない記述でしょ。 CWnd* pStatic = GetDlgItem( IDC_STATIC1); >>472
541 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:00:16 ] 中途半端な知識で抽象的で意味不明な用語ならべて質問するから 本題からどんどん遠ざかってるような気がする。
542 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:02:47 ] そのGetDlgItemはAPIじゃなくてCWndのメソッドのほうのGetDlgItem
543 名前:455 mailto:sage [2009/05/12(火) 14:04:27 ] なんだって? ますますわかんなくなってきた。
544 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:11:37 ] ここ無駄な時間をすごさずVB.NETに行ったほうがいいのでは?
545 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:14:55 ] 開発環境 やりたいこと これだけ書いて質問すればすぐにまともな回答もらえたかもな
546 名前:455 mailto:sage [2009/05/12(火) 14:15:10 ] >MFCは・・・パラメータにウィンドウハンドルは存在しない。 >>528 ()の中でのハンドルの指定はない、ていうことは、うすうすは、わかったような 気がする。うすうすだけど。 では、外部プロシージャから(例えば、ダイアログ2に貼ってあるBUTTONが押されたとき、 ダイアログ1のスタティックコントロールを参照したい場合。 ダイアログ2にもスタティックコントロールは貼ってあって、両方が同じID名の場合。
547 名前:455 mailto:sage [2009/05/12(火) 14:17:25 ] 結局、>>478と>>479の質問には誰も答えてないんだよな。
548 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:20:06 ] その答を書くにはC++のクラスの基本から書かなくちゃいけない。だから答えない。 「C++を勉強しろ」というのが回答。
549 名前:455 mailto:sage [2009/05/12(火) 14:22:32 ] ハンドルはC++関係ないでしょ
550 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:23:15 ] 外部プロシージャ ダイアログ1 ダイアログ2 唐突にこんなものが出てきたって誰も関係が理解できない 外人 かばん1 かばん2 これで関係理解できるか?
551 名前:455 mailto:sage [2009/05/12(火) 14:25:52 ] ↓俺には「外部参照の仕方はわかりません。単一ダイアログの遊びのソフトしか造ったことありませんが、 ↓一流プログラマーのように威張りたいです。」ってしか聞こえない。 548 :デフォルトの名無しさん:2009/05/12(火) 14:20:06 その答を書くにはC++のクラスの基本から書かなくちゃいけない。だから答えない。 「C++を勉強しろ」というのが回答。
552 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:27:22 ] じゃ、何を言ってもムダだな
553 名前:455 mailto:sage [2009/05/12(火) 14:36:17 ] 「ダイアログ」でなく「ダイアログボックス」って書けってか? 「プロシージャ」という言葉は許すけど、「外部」がつくとわからん、っていうのは 「++」以前、「C」言語の基本がわかってないというか、それ以前、プログラムの基本 がわかってないとしか言いようがないけどな。 「スタックって何?」とかって聞いてる人が先生ぶってるのと同じでさ。 >hDlg はわかるよな。ダイアログプロシージャの第一引数だ。>>464 >504 :デフォルトの名無しさん:2009/05/12(火) 12:16:49 >スタックってなんだよ
554 名前:455 mailto:sage [2009/05/12(火) 14:38:00 ] 「スタック」「外部参照」の言葉の意味が理解できないのが「C(++)の先生」やってるわけ?
555 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:39:44 ] GetDlgItem( IDC_STATIC1) は this->GetDlgItem( IDC_STATIC1) と同じ
556 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:41:28 ] VBでもなんでも、てっとり早くスタックサイズ大きくしたいなら editbin で /STACKオプションつければいい
557 名前:455 mailto:sage [2009/05/12(火) 14:44:46 ] >>555 さんくす
558 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:46:02 ] >>546 ダイアログ1にスタティックコントロールを公開するメソッドを作る ダイアログ2からはダイアログ1->そのメソッド() という形でアクセスする
559 名前:455 mailto:sage [2009/05/12(火) 14:46:52 ] ↓これは間違いだと思うよ。最近のVB2005とか2008わどうかわからないけどさ。 >VBでもなんでも、てっとり早くスタックサイズ大きくしたいなら >editbin で /STACKオプションつければいい
560 名前:455 mailto:sage [2009/05/12(火) 14:48:58 ] VCは、当初からコンパイル時のオプションとして当初からあったけどね。
561 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:58:06 ] dumpbin /headersしてみりゃわかる
562 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 14:58:57 ] 間違いってやってみたのか? editbin は使ったことあるのか?
563 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:01:41 ] ↓これを間違いだと言われても困るわな
564 名前:563 mailto:sage [2009/05/12(火) 15:02:38 ] すまそ、抜けた msdn.microsoft.com/ja-jp/library/35yc2tc3 (VS.80).aspx
565 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:02:50 ] AからBにアクセスしたい場合に外部じゃ全然説明になってないだろ AとBが全然関係ないんじゃアクセスしようがない。
566 名前:455 mailto:sage [2009/05/12(火) 15:03:31 ] ++とハンドルの定義やハンドルの動作は関係ないでしょ。 ++は記法だけの問題であって。 VBは、やっぱSTACK拡大できないと思うよ。2008でも、STACKをヘルプのキーワードに入れても ヒットしない、あるなら、こんな基本的で重要なこと抜くわけないもの。 試しにヘルプでやっても、スタックフレームっていうことは出てくるが、メモリ朗域の拡大ではない¥ スタック怖かったから、2008に期待をかけてダウンロードして調べてみたが、 ↓のVB2008のヘルプで、"STACK"でヒットしたのは「実行中」の「検査」の話でね。 ↓そもそも実行中にスタックメモリ領域(コード領域も意味する)の大きさ変えれるわけないんだから(笑 スタック フレームの検査のサンプル このサンプルでは、任意のポイントでの呼び出し履歴の情報を、実行中のプログラムのコード内から取得する方法を説明します。呼び出し履歴を使用すると、現在のプロシージャに至るまでにアプリケーションが実行したプロシージャの順番を確認できます。
567 名前:455 mailto:sage [2009/05/12(火) 15:07:45 ] >>563 Cは「当初>>560 」からあったけど、マイクロソフトのVBはないって言ってるんだよ。 そのMSDNに書いてあるのは、CとかMASMの話だよ。
568 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:09:06 ] だから外部という認識だからアクセスできない 馬鹿だよな
569 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:09:55 ] こいつ人の言ったこと何も聞いてないのな。
570 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:11:58 ] スタックサイズはリンク時に決定される。 コンパイルは関係ない。 リンク後でもEXEのヘッダー書きかえればサイズは変更できる。 そのためのツールがeditbin
571 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:12:22 ] あれあれあれだよ あれってどれだよ
572 名前:455 mailto:sage [2009/05/12(火) 15:13:14 ] ↓「スタック」も理解できないおまえらは他人にいつも何を言ってるの? 569 :デフォルトの名無しさん:2009/05/12(火) 15:09:55 こいつ人の言ったこと何も聞いてないのな。 568 :デフォルトの名無しさん:2009/05/12(火) 15:09:06 だから外部という認識だからアクセスできない 馬鹿だよな
573 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:13:53 ] >571 これじゃないのがあれだろ 日本語も知らないのか?
574 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:16:00 ] 良いページ見つけた。 mail2.nara-edu.ac.jp/~asait/visual_cpp/intro_cpp.htm ここのダイアログベース読めばいいんじゃね?
575 名前:455 mailto:sage [2009/05/12(火) 15:16:11 ] ↓とにかく、VBではできない 570 :デフォルトの名無しさん:2009/05/12(火) 15:11:58 スタックサイズはリンク時に決定される。 コンパイルは関係ない。 リンク後でもEXEのヘッダー書きかえればサイズは変更できる。 そのためのツールがeditbin
576 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:20:54 ] で、結局この人はなにをやりたいの?
577 名前:455 mailto:sage [2009/05/12(火) 15:23:20 ] ↓>>568 と>>569 は、異なるダイアログボックス間で、別のダイログボックスにある、同じ名前のIDC_STATIC1を ↓参照できるって言ってるのと同じこと。C++とかなんとかの問題でなくプログラムの基本がわかってないと ↓思うけどね。 GetDlgItem( IDC_STATIC1)
578 名前:455 mailto:sage [2009/05/12(火) 15:24:53 ] 俺は、同じこと何度も答えてるよ。
579 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:29:51 ] >>455 の最初の質問を読んでみた。 一番の近道はMFCを使わないで CでWindowsプログラミングをすることだと思った。 多少記述は多くなるけど問題ないと思う。
580 名前:455 mailto:sage [2009/05/12(火) 15:31:22 ] ↓これはあくまでも、実行中のダイアログプロシージャ内で通用する話であって、 ↓別のダイアログプロシージャ(外部プロシージャ、つまり別のダイアログボックス) ↓のコントロ−ルを参照してることではないだろ。この言ってる意味がわからないかねえええ GetDlgItem( IDC_STATIC1)
581 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:34:04 ] 別のダイログだったらコントロールのIDが同じだって識別可能 使いまわすときにいちいち変えてたら面倒くさくてしょうがない。
582 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:39:32 ] 別のダイアログだろうがやることが同じなら 同じコードで実現できる。 というか同じでやった方がいい。
583 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:40:18 ] >>580 リソースファイルをテキストエディタで開いてみな
584 名前:455 mailto:sage [2009/05/12(火) 15:42:27 ] いくつも同じ名前(ID)のコントロールがある場合、実行ファイルはどうやって特定認識するの。 (通常はデフォルトの動作。つまり、カンレント(実行中)のプロシージャで動作するわけでしょ。) (じゃ別のダイログプロシージャ(別のダイアログボックス)につくられるコントロ−ルには、 どうやって参照するの?って聞いてるのよ。この質問がわからないのかねえええ) ↓はあくまでも実行中のダイアログプロシージャ(ダイアログボックス)が自分に貼られてる ↓コントロールのアドレスに関する値を渡すという関数でしょ。 GetDlgItem( IDC_STATIC1)
585 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:45:09 ] だから、>>528 の中盤に答が書いてあるだろ。
586 名前:455 mailto:sage [2009/05/12(火) 15:45:27 ] >>583 それで?
587 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:51:47 ] >>584 あー もう 考え方がCすぎるんだよ ダイアログにはクラスがひもづくでしょ ダイアログを表示するには そのクラスのインスタンスを作って表示するでしょ ってことはそのインスタンス内のIDC_STATIC1は一つでしょ だからダイアログのインスタンス->GetDlgItem()になるの!
588 名前:455 mailto:sage [2009/05/12(火) 15:54:52 ] 528? そうか。なんだ。すまん。 >>528 んじゃ、DlgBの値は、どこで、どうやって取得するわけ? 実際の記述は、取得したときにDlgBという変数を使ったら、 そのまま DlgB.GetDlgItem(IDC_STATIC1)→でいいわけ?
589 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 15:58:33 ] ダイアログB(DlgB)の実体を生成したときに、ダイアログA(DlgA)のメンバ変数(自分で定義)に値をぶちこむ。
590 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:01:36 ] やっぱりクラスという用語だけしってて中身を知らない感が ひしひしと伝わってくる。 Cだけ知ってれば他の言語は全部わかったも同然っていう 感じがする。
591 名前:455 mailto:sage [2009/05/12(火) 16:04:53 ] >>589 だから、その手法は、>>484 で聞いてたんだよな。俺。 DlgB.を先走って「ハンドル」って言ったのは間違いだったかもしれんが。 でもハンドルみたいなもんだろ。とにかく「固有」(結局はアドレスだから)の数値なんだから。
592 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:09:49 ] ハンドルで表わされる物がオブジェクト指向でのオブジェクトとなるのは 別に難しい概念じゃないと思うのだが それに何で関数のヘルプ読まないの? 芋蔓式にそれに必要な物とやり方がわかると思うんだけど
593 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:12:18 ] TBSの記者みたいなやつだな
594 名前:455 mailto:sage [2009/05/12(火) 16:14:17 ] >>592 ヘルプに書いてある? 「コントロールのアドレス(又はポインタ)はダイアログが実行中しか取得できません。」 とかって、どっか書いある?
595 名前:455 mailto:sage [2009/05/12(火) 16:16:41 ] 訂正 ・・・ダイアログが実行中しか取得できません。」 ・・・その親ダイアログが実行中(フォーカス中)しか取得できません。」
596 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:21:19 ] おまえはゆとりかw
597 名前:594 mailto:sage [2009/05/12(火) 16:21:45 ] >>592 >>594 は取り消し 根本的に質問が間違った。質問の本意は、 「ヘルプには、他のダイアログ(外部プロシージャ)にあるコントロールを 直接参照はできません。」とかって書いてある? だった。 」
598 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:27:27 ] >>597 だからね。そこはC++を勉強してたらそういう疑問は出ないの。 それが当たり前なの。 他のインスタンスの変数を直接参照できないように設計するのは オブジェクト指向の初歩の初歩なの。
599 名前:594 mailto:sage [2009/05/12(火) 16:30:08 ] >ダイアログB(DlgB)の実体を生成したときに、ダイアログA(DlgA)のメンバ変数(自分で定義)に値をぶちこむ。 とにかく、だから、俺は、そのことを>>484 で問い正していたんだよ。 そうしたら日記に書けとかなんとかって・・・・
600 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:32:31 ] ウィンドウハンドルだろうがオブジェクトのインスタンスだろうが、プログラムを実行中にしか取得できないわけだが、 ひょっとしてコード内に固定値でアドレスを書こうとしているのか?
601 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:44:48 ] 「実行中」の用語が間違ったな。 「生成中」、または「フーカスになったとき」だな。 vbだと共有変数にいちいち保存しなくても、プロシージャ(ダイアログやコントロール)の 名前だけで、その「擬似ハンドル」みたいなものは自動的に値は持ってるからね。 例えば、 Form2.Label1 って書けば別に、Form2のほうで共有変数(Public)に代入なんかしてなくてもいいわけで。
602 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:47:34 ] 別に共有変数でなくてもいいんだろ? 当然にパラメータで渡せばいいんだろ?
603 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:48:40 ] 455専用スレかよw 他の人が質問できない雰囲気になるぞ
604 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:49:30 ] すまん
605 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:51:28 ] >>601 だからVBは嫌われるんだよ
606 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:53:13 ] なんだ結局質問の内容は VBのForm2.Label1をどうやったらいい? たったこれだけか
607 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 16:55:03 ] >>606 !! やっぱりVB厨じゃんww
608 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 17:08:29 ] 455専用スレ立てようぜ
609 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 18:43:17 ] MFCだったらいちいちGetDlgItemしないで Form2.Label1みたいにメンバ変数にするのもありだな
610 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 18:48:57 ] アクセス頻度が高ければ当然そうする。常識だろ。
611 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 22:30:11 ] VisualC++でPro*Cの統合開発環境を整えたいのですが Oracleにのっているやり方が2002、2003等でのマニュアルなので開発環境の構築に手間取っています 誰かやりかたのわかるかたいますでしょうか? ぐぐっても出ないので質問しました
612 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 22:44:06 ] >>611 わかるけど全部教ええる気にはならん どこまでできてるんだ?
613 名前:611 mailto:sage [2009/05/12(火) 22:54:20 ] とりあえずは 実行ファイルのパス追加 インクルードの追加はしました その後の.pcを追加した時に出るなんたら規則の設定からマニュアルと違う風になっており止まっています
614 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 22:58:06 ] >>613 すまん。.pcファイルはいつもコマンドプロンプトで proc hoge.pc とかやって.cにプリコンパイルしてからVCでコンパイルしてたw つーわけで、他の人にまかす。
615 名前:611 mailto:sage [2009/05/12(火) 23:02:40 ] >>614 わざわざありがとうございます できないっていうことはないので何とか努力してみます
616 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 23:57:29 ] 150近くもレス使って>>455 から>>606 を引き出したおまいらに感動した
617 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 11:41:41 ] スタック領域を増やさないといけないロジックってどんなの? 俺はしがない業務系プログラマなのでそんなロジック組んだこと無い。
618 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 12:04:42 ] >617 たぶんVBの環境の話だから続きはVBスレでやってくれ
619 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 15:11:10 ] すたっっくぅ〜〜!
620 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 01:09:21 ] 実際に体験してやったことがある人が「こうすればできる。」って言うことと、 、やったことのないものが「こうすればできるはざずだ。」って権威を傘に 他人に受け売りで言うことを、同じレベルで考える人が多いけどさ、それが、 「未熟」っていうことなんだ。
621 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 01:40:30 ] >>616 本人は最初から言ってるわけだから、どの程度のレベルか。 ↓「引き出した」んじゃなく「忘れてた」んだろ。スレタイと同時に。 >土曜から日曜にかけて1日かかって、スタティックコントロールに文字列出すことに >成功した、ハンドル使わない方法でやっとだ。 455 :デフォルトの名無しさん:2009/05/12(火) 00:07:15 土曜から日曜にかけて1日かかって、スタティックコントロールに文字列出すことに 成功した、ハンドル使わない方法でやっとだ。 そこでだ、ものは相談だ。ハンドル使うSendMessage()とか、SetWindowText() のやりかた教えろや。
622 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 01:44:33 ] >>616 おまえの考えなら ★Visual C++を教えるスレ★ Part01 って別のスレを建てるか、又は、次からスレタイを ★初心者にVisual C++を教えるスレ★ Part33 ↓ ★Visual C++を教えるスレ★ Part34 にするか、どっちかだわな。
623 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 05:22:23 ] なんか必死になってるぞw 単なる初心者相手ならいいが、自己防衛の言い訳だけが多い奴の相手は時間の無駄だな。
624 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 09:07:28 ] そもそも尿簿の話が出てくるからわからなくなる 組んでるのは誰なんだと 尿簿の経歴はどうでもよくて組んでるやつの経歴を 言えっつーのw
625 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 14:23:11 ] にょうぼ、て何?
626 名前:デフォルトの名無しさん mailto:sage [2009/05/14(木) 14:25:42 ] 女房の新しい言い方
627 名前:625 mailto:sage [2009/05/14(木) 14:32:28 ] 嫁かぁ サンク^2
628 名前:デフォルトの名無しさん [2009/05/14(木) 23:36:07 ] 女なんてマンコがくせえビッチだろ。
629 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 13:06:48 ] 童貞乙
630 名前:デフォルトの名無しさん mailto:sage [2009/05/15(金) 16:34:40 ] >>628 お前のつきあった女はみんなマンコがくせえビッチだったのか。 かわいそうすぎるww
631 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 19:08:36 ] MFCでの作成していますが、 既存のチェックボックス、ボタン、ラジオボタンを自分の作成したイメージ(画像)に変更したいと思います。 チェックボックスやボタンのイメージを自作して、表示させる方法を教えていただけないでしょうか?
632 名前:デフォルトの名無しさん mailto:sage [2009/05/17(日) 19:11:05 ] 「オーナードロー」でググってみ
633 名前:631 mailto:sage [2009/05/17(日) 19:47:12 ] >>632 ありがとうございます。調べてみます。 ボタンに関してはCBitmapButtonが使えそうですよね。
634 名前:デフォルトの名無しさん [2009/05/19(火) 15:43:36 ] DOS窓に出力したいんですが、どうすればいいのですか?
635 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 16:05:03 ] AllocConsole()
636 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 21:13:11 ] ボタンの文字に色を付けるってのが鬼畜級の難易度だコレ
637 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 21:26:57 ] オーナードローの初歩だ
638 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 22:03:40 ] 最後のprintfでa,b,cの入力値を表示したいんですが、思い通りにいきません。 どうしたら表示出来るんでしょうか? #include <stdio.h> #include <math.h> main() { float a, b, c, d; printf("上底の長さを入力して下さい:"); scanf("%f", &a ); printf("下底の長さを入力して下さい:"); scanf("%f", &b ); printf("高さを入力して下さい:"); scanf("%f", &c ); d = ( (a+b)*c/2 ); printf("上底:%d、下底:%d、高さ:%dの台形の面積は、%fです。\n", a, b, c, d ); }
639 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 22:15:03 ] printf("上底:%f、下底:%f、高さ:%fの台形の面積は、%fです。\n", a, b, c, d );
640 名前:デフォルトの名無しさん mailto:sage [2009/05/19(火) 22:42:38 ] >>639 ありがとうございます。 すごく簡単な事だったんですね・・・半日掛かりきりだったのにorz
641 名前:デフォルトの名無しさん [2009/05/20(水) 00:43:48 ] お願いします。 VC++2008を使っています。 今、エディタの背景色やフォント色を変更しているのですが ソリューションエクスプローラの背景色やフォント色を変更する場所が見つかりません。 どこから設定するのでしょうか?
642 名前:デフォルトの名無しさん mailto:sage [2009/05/20(水) 21:58:28 ] VSC++使ってるんですけど、デバッグの時に出力メッセージが出なくなりました 成功、失敗、エラーなど一行も表示されません ソースをコピーして新しいファイルに貼り付けたら表示されるようになりましたが・・どこを触ってしまったんでしょうか?
643 名前:デフォルトの名無しさん mailto:sage [2009/05/20(水) 22:19:50 ] >成功、失敗、エラー はビルド時のメッセージ。 ソースに変更がない限り自動的にビルドされないから必ず出る必要はない。
644 名前:デフォルトの名無しさん mailto:sage [2009/05/20(水) 22:20:27 ] 文字列と数字の混じってる要素{1,2,3,4,5}があり、 配列[2]の時は1,2 配列[5]の時は1,2,3,4,5 と入りきらない分は単純に切り捨てたいときはどんな風に記述するのがいいでしょうか?
645 名前:デフォルトの名無しさん mailto:sage [2009/05/20(水) 22:31:48 ] >文字列と数字の混じってる要素{1,2,3,4,5}があり、 俺には全部数値に見えるが。
646 名前:デフォルトの名無しさん mailto:sage [2009/05/20(水) 22:43:22 ] >>644 すごい意味不明に見える。 コンパイル時に決定するものとしないものの違いとか分かってます?
647 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 19:19:32 ] VC++でstring変数を使って,文字列処理を山のようにしたら。 読込みー>+計算ー>””化 読込みー>+計算ー>””化 読込みー>+計算ー>””化 システムメモリーは、細かい断片化になってしまうのでしょうか?
648 名前:デフォルトの名無しさん [2009/05/21(木) 20:56:12 ] VC++2008ExpressEdition(CLR、Windowsフォームアプリケーション)で ネット上にあるhtmlファイルを取得して保存とか文字列操作して表示とか したいのですが、どういうクラスや関数を使ったらいいですか? イメージ的には2ch専ブラみたいに特定のウェブページを取得して テキストボックスとかに表示したいです。
649 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 20:59:07 ] WinInetとか
650 名前:648 [2009/05/21(木) 21:35:23 ] >>649 レスありがとうございます。 wininetについて今ネットで調べてみたのですがこれってwin32APIですよね。 win32APIはプログラミングが面倒だという印象を持っているんですが C++でもwebページの取得はwininetが常套手段なのでしょうか? VisualC++で使える便利なクラスみたいのはないのでしょうか? わがまま言ってスイマセン。
651 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 21:39:53 ] >>650 便利なMFCのクラスはあるけど、ExpressEditionじゃ使えない。 それに、Windowsプログラミングの基本はやはりWin32APIだから、それが面倒というなら VBなりC#なり、C++以外でプログラミングすればよろし。
652 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 22:39:22 ] >>648 boost::asioとかでいいんじゃないの?
653 名前:デフォルトの名無しさん mailto:sage [2009/05/21(木) 23:39:33 ] 特定のウェブページを取得してテキストボックスとかに表示だったら 特に難しい処理はないだろ やっつけで用が足りる
654 名前:デフォルトの名無しさん mailto:sage [2009/05/22(金) 00:13:42 ] >>648 WebClientとかSystem.Net名前空間の中あされ。 CLRアプリならC#スレでそれとなく聞くのがお勧め。
655 名前:648 mailto:sage [2009/05/22(金) 00:55:27 ] >>650-654 皆さんありがとうございました。 WebClientよさそうですね。あとWebRequestもいけるかな・・・ とりあえずこの辺りから勉強してみる事にします。 とは言っても正直VCもC++も全く解らなくてまず何から 手をつけていいのか混乱している状態です。
656 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 18:20:39 ] Microsoft Visual C++ 2008 Express Edition をインストールしたのですが、 コマンドラインからコンパイルできません。 clと入力しても 'cl' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と言われてしまいます。 どうすればコマンドラインからコンパイル出来るようになるでしょうか?
657 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 18:24:16 ] >>656 msdn.microsoft.com/ja-jp/library/ms235639 (VS.80).aspx
658 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 18:25:55 ] >>656 >>657 2005→2008に読み替え
659 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 18:31:29 ] ありがとうございます。 普通のコマンドプロンプトからは出来ないのでしょうか? g++と同じ感覚で使えると便利だと思っているのですが。
660 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 18:44:18 ] パス通せばできるだろ
661 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 18:58:20 ] VCVARS32 入ってないのか
662 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 19:01:11 ] VCVARS32というバッチファイルでコンパイルするんですか?
663 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 19:07:23 ] 少しは自分で調べたらどうだ? VCVARS32 でググりゃいくらでもでてくるだろ。
664 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 19:34:40 ] もちろん調べたんですが分かりませんでした。 確かにいくらでも出てきましたが 実行しても何もおこりません。
665 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 20:38:59 ] VCVARS32を実行したら、そのコマンドプロンプトではそれ以降clが使えるようになるよ・・・
666 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 20:51:42 ] ・・・もしかしてOSを再起動してないからclが使えないのでしょうか。 今度OSを再起動できるようになったら試してみます。 ありがとうございます。
667 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 21:12:09 ] >>665 見て俺も実行してみた が、アクセサリのほうのcmdからはclは使えなんだ
668 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 21:23:52 ] >>667 ちゃんとCALLしたのか?
669 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 21:25:55 ] >>667 「そのコマンドプロンプトで」って >>665 に書いてあるだろ? アクセサリのコマンドプロンプトで VCVARS32 を実行しなきゃ、アクセサリのコマンドプロンプトでは使えんよ。
670 名前:デフォルトの名無しさん mailto:sage [2009/05/23(土) 21:43:39 ] 初めてやったが問題なく使えた、edlin があるのに驚いた
671 名前:667 mailto:sage [2009/05/23(土) 22:23:52 ] あ、出来た
672 名前:666 mailto:sage [2009/05/23(土) 23:23:52 ] できました! ありがとうございました。
673 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 01:55:55 ] システムの環境変数に登録しとけば? てか、VC6の頃は自動で登録してくれたのになぁ
674 名前:デフォルトの名無しさん [2009/05/24(日) 10:51:09 ] 現在、Minimalist PSPSDKを導入し、 IDEとして、Visual C++を使用したいんですが、 どうもうまくいかない状況です。。 1>Project : error PRJ0019: ツールはエラー コードを返しました : "メイクファイル プロジェクト動作を実行しています。" sourceforge.jp/projects/dxlibp/wiki/ チュートリアル のやり方で、Makefileも作成しています。それに加え、 インクルードの検索パスに C:\pspsdk\psp\sdk\include を設定し、 環境変数のPATHに C:\pspsdk\bin としています。 ほかに何か不備があるのでしょうか? よろしくお願いします。
675 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 11:06:36 ] なぜそのwikiで質問しない? ここはそのサイトと関係ないだろ
676 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 11:10:21 ] >>675 頭がパーだからに決まってるだろw
677 名前:デフォルトの名無しさん [2009/05/24(日) 12:53:20 ] >>675 すみませんでした。。 そちらのお世話になってきます。
678 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 14:20:46 ] VisualStudio2005でMFCアプリをつくろうとしています。 それでコマンドライン引き数をプログラムに渡したいのですが、 スケルトンのままでビルドしてコマンドラインから、 ttt>hogehoge.exe test1(ret) と実行すると、test1というファイルをさがしに行ってしまい、 ファイルが見つからないというメッセージを出して終了してしまいます。 普通にコマンドラインを渡すにはどこをいじればいいのでしょうか?
679 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 14:28:30 ] CCommandLineInfo::ParseParam(); msdn.microsoft.com/ja-jp/library/bss6bxss (VS.80).aspx
680 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 14:57:25 ] その文章だと本人の思い込みの可能性が強く感じられるから アドバイスは遠慮する。
681 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 15:33:15 ] ___arg アンダーバーのついたargとかいうもんがあった希ガス
682 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 16:36:13 ] ヘルプのdocument explorerの文字を大きくするにはどうすればいいのですか? 初心者過ぎる質問ですがよろしくお願いします。
683 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 16:52:24 ] 「ヘルプに関するヘルプ (Microsoft Document Explorer ヘルプ)」を読め。
684 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 16:56:49 ] >>682 表示メニューか右クリックメニュー
685 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 17:07:54 ] 683の言われたとおりにヘルプからで探したところ、 インターネットオプションで「WEBページのフォントサイズを使用しない」を選択すればよいことがわかりました。 ありがとうございます。 >>684 オンラインのページだと、文字のサイズを変えても、ページ内の文字の大きさが変わりませんでした。
686 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 23:09:54 ] >>679 CCommandLineInfoでぐぐったら何とかなりました。Thxです。 >>681 それ以前にまったくアプリが立ち上がらなかったので。
687 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 23:23:45 ] アプリか 自分もいつか作ってみたいもんだね
688 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 23:50:48 ] >>686 ドキュメント/ビュー アーキテクチャを無理に使う必要はないんだぞ。:-)
689 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 00:59:35 ] >>688 ドキュメントビューアーキテクチャって何を作って欲しいのか不明だよね
690 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 11:16:32 ] >何を作って欲しいのか不明 それは君の経験不足だと思うが。
691 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 18:38:21 ] 最近VisualC++を使い始めたのですが、ソフトの特性を理解できていなくて困っているので一つ質問させてください。 main関数を含む単独のcppプログラムを2つ並行して使っているのですが、 それぞれ1つずつのVC++ウィンドウを開いて、それぞれにソリューションを表示してコンパイル(ビルド?デバッグ?)しています。 この2つを1つのウィンドウで開き、タブを切り替えてそれぞれ個別にコンパイルできるような構成にはできないでしょうか? 1つのソリューションに2つのプロジェクトを作って1つずつソースファイルを入れてCtrl+F5を押しても片方のソースだけが実行されてしまって悩んでいます。
692 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 19:19:32 ] Microsoft Visual C++ 2008 再頒布可能パッケージ (x86)をインストールしたいんだけど、インストーラーでドライブ直下に展開されちゃう。 どなたか保存場所の指定の仕方わかります?
693 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 19:26:33 ] >>691 後者の状況で、ソリューションエクスプローラ上のプロジェクトのアイコンを右クリック、 メニューの中の「スタートアッププロジェクトに設定」を選ぶと、 Ctrl+F5などを押したときに起動するのがそっちになる。 あと、ソリューションのプロパティで両方同時になどといった設定もできる。 頻繁に切り替えることを考えた作りに見えないし、 望みどおりになるのは難しいと思う。 本質的に別のなら、最初みたいに別々のソリューションにするほうがいいと思う。
694 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:16:43 ] クラスを使ってゲーム作成などをし始めたのですが、作ってるうちにこんがらがってしまいます 配列はとても扱いやすくいので何もかも配列で処理させれば問題なく出来るんですが、 こういう場合はどうすればいいんでしょうか 無理してクラスは使わなくていいんでしょうか?それとも僕はC++に向いてないんでしょうか?
695 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:52:06 ] >>694 その配列に処理するための関数がくっついていれば便利だと思うことはないかね?
696 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 22:58:05 ] >>694 たくさん作ればそのうちわかる
697 名前:694 mailto:sage [2009/05/25(月) 23:03:34 ] ありがとうございます! >>695 説明では何度も読んでいるんですが、どうしても使いこなせないんですよね。多分理解できてないんでしょう・・ 計算はmain関数、データは配列に格納って固定概念がいつまでも離れないんです >>696 ありがとうございます。とりあえずあまり考えずに何か色々作ってみます。 その内なにかひらめくかもしれませんね
698 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 23:09:24 ] プログラミングのノウハウ、作り方や設計等、デザインパターンもそう。 本だけの知識で修得できるものじゃない、体で覚える方が大切。
699 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 02:48:19 ] 判るなぁ、その気持ち 大きいのと小さいのは判るんだけど、それを使って何かやろうとすると ウゼーと思ってオブジェクト化崩しちゃう 最後まで設計するのが面倒でコーディングに走っちゃうのが 駄目なんだろうな
700 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 09:26:35 ] この人はグローバル変数やめるところから始めるべきだ
701 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 13:04:20 ] 質問です。 開発環境はVisual C++2005です。 静止画を連続表示してGIFアニメのように見せるソフトを考えています。 今、連続画像AとBがあって、同時に再生スタートして、 ずれないように毎画像(毎フレーム)ごとにお互いの同期を取りながら再生させるには、 どのようにすればよいでしょうか? よろしくお願いします。
702 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 15:18:17 ] >>701 すれ違いではあるまいか。 答えは、同期なんかとらなくても、同じスレッドで表示すればいいだけだろ。
703 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 19:33:33 ] >>701 ギャハハハw ダッセーw 以下、>>701 の発言を正当化する後付け設定の嵐どぞ↓w
704 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 19:46:28 ] ┌┐ / // [二 ] __ 〔/ / | |/,ー-、ヽ / / / _,,| | ./ レ1 | / o └、 ∠/ ∧_∧ .|__| ヽ_/^ ,/ ( ´∀`) )) __ / /つ( ̄`ヽO_ノ⌒ヽ [二二_ ] / ノ ) \ )) // {.. (__丿\ヽ :: ノ:::: ) / ∠__  ̄フ.. 丿 ,:' )) ∠___ / / (( (___,,.;:-−''"´``'‐' _ / / \ / o ヽ/ / / ヽ__ / \
705 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 21:59:51 ] VC++2008 MFCダイアログベースでアプリを作成しているのですが ダイアログにファイルをドロップした時に、 ダイアログ上に設置されたリストコントロール上にドロップされたのと、 それ以外のダイアログ上の場所にドロップされたのとで別の処理をしたいのですが、 どう判別したらいいのかわかりません。 教えてください。 よろしくお願いします。
706 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:12:35 ] ダイアログにファイルをドロップした時→ダイアログにWM_DROPFILESがポストされる。 リストコントロールにファイルをドロップした時→リストコントロールにWM_DROPFILESがポストされる。 むろん、ダイアログもリストコントロールも Accept Files を True にしておく。 [別解] ダイアログだけ Accept Files を True にしておき、ドロップされた時のマウス位置で判別する。
707 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:19:41 ] 最近プログラムの流れをノートに書いてるんですが、 こういう流れの図ってなんていうんでしたっけ?
708 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:21:03 ] フローチャート
709 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:22:28 ] \  ̄ヽ、 _ノ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ `'ー '´ ,. -- 、 ○ ,' , '⌒,ノ O .__ i/ ´ o ,,.. '"´ ̄ (__)r'ヽ と 。 / ` ´`ヽ 思 ,' ,、 ─- ', う ! 、 ,.i- i ハi,;-ァ!、 i i 神 i i i !,-;!、 ':,_rハiノ| .| .綺 レV!. i.ハ_r! 、 "" i |. | で i.八" _ ノ |. | あ l.|ゝ.>,,、__,,.. イノ レハ | っ レ| l | ,.イ-ーニノト.ー 、i | た .| l ,.ヘ、ニ_ノノ `ヽ! | / //不\ヽ `ヽ
710 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:34:16 ] >706 回答ありがとうございます。 >ダイアログにファイルをドロップした時→ダイアログにWM_DROPFILESがポストされる。 こちらはOKですが、 >リストコントロールにファイルをドロップした時→リストコントロールにWM_DROPFILESがポストされる。 こちらの場合の処理手順がわからないのでマウス位置判別の方法で試してみます。 どうもありがとうございました。
711 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:50:52 ] >こちらの場合の処理手順がわからない CListCtrl の派生クラスを作成して当該リストコントロールに結びつけ、 その派生クラスでWM_DROPFILESメッセージを処理する。
712 名前:710 mailto:sage [2009/05/26(火) 23:13:35 ] >711 試行錯誤しながら試したらうまくいきました。 ありがとうございました。
713 名前:デフォルトの名無しさん mailto:sage [2009/05/27(水) 23:39:01 ] デバッグ中にステップインでプログラムを進めているのですが、いつの間にか終わってしまいます 「何かキーを入力してください」の画面も出ません ウォッチ式のところも文字がグレーになってしまいます ループのところでハマっているかとも思いましたが、そういうわけでもありませんでした これはどういう状態なのでしょうか?
714 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 10:22:58 ] 出力ウィンドウには何か出てない?
715 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 12:26:06 ] リリースビルドだったら許さん
716 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 12:35:47 ] アクセスバイオレーションで続行して飛んでるとか オブジェクト残ってて実は終わってないとか
717 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 17:26:40 ] 猫でもわかるプログラミングさんのサイトを使っていたんですが、 WindowsSDKのプログラムを打ちこんだのですがVisual C++ 2008 EEではビルド出来なくて困っています Visual C++ 2008 EEのアプリケーション開発入門用のサイトで お勧めなのはありませんか?
718 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 18:19:08 ] ビルドできないってどんな理由で? ユニコード文字セットのせいじゃないの?
719 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 18:32:09 ] ttp://www.kumei.ne.jp/c_lang/sdk/sdk_00.htmのコードをそのままコピペして使いました そしてビルドしたところ以下のようなエラーメッセージが出ました sample01.cpp(38) : error C2664: 'CreateWindowExW' : 2 番目の引数を 'char [25]' から 'LPCWSTR' に変換できません。(新しい機能 ; ヘルプを参照) 1> 指示された型は関連がありません。変換には reinterpret_cast、C スタイル キャストまたは関数スタイルのキャストが必要です。 この他に二つエラーが出ましたが、 そちらは型変更のキャストを入れています
720 名前:717 mailto:sage [2009/05/28(木) 18:38:56 ] すみません、>>719 は>>718 の返答ですorz
721 名前:デフォルトの名無しさん [2009/05/28(木) 18:42:55 ] >>719 まさに>>718 マルチバイトとUNICODEが混在してる。 プロジェクトのプロパティと使用してる文字セットを見直して。
722 名前:デフォルトの名無しさん mailto:sage [2009/05/28(木) 18:57:36 ] >>721 助かりました Unicodeからマルチバイトに変更したら問題なく通りました 半日悩んでたので、ようやくすっきり出来ましたw
723 名前:デフォルトの名無しさん [2009/05/29(金) 02:03:34 ] mfcの求人がないお(;ω;) mFCこそしきょくの現代プログラミングだとおもうんだお(^ω^)
724 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 02:17:42 ] >>723 あー、わかる ホント仕事ないよなぁ・・・ っていうか別にこれに限らずプログラム組む仕事ならちょっとなれれば なんでもできるからどこへでもまわしてくれって思うけどね
725 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 08:04:27 ] MFCの求人がないお というレスに対してのレスとしてそれは正しいのか? 仕事がないおじゃなくてMFCの求人がないおだぞ 的外れにもほどがあるお
726 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 08:17:32 ] Webじゃ作れない業務に強くなるしか無いんじゃない? ムスレの話題じゃないなw
727 名前:デフォルトの名無しさん [2009/05/29(金) 16:36:55 ] ここで質問すべきなのか分かりませんが。 8FFFFFFFU と 1U では _BitScanForwardした結果を返すスピードは 変わらないのでしょうか? 上位のほうにあろうと下位のほうにあろうと関係ないのでしょうか。
728 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 16:52:55 ] 自分で試しても違いがわからなかったら変わらないと言える。
729 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 16:53:31 ] >>727 homepage1.nifty.com/herumi/diary/0811.html のページによると_BitScanForwardはアセンブラレベルでは bsfの1命令に落ちるみたいなので、変わらないんじゃないの 確実な答えがしりたいなら人に聞くんじゃなくて、Intelのサイトとかで 対象CPUの命令のスペックを調べること
730 名前:デフォルトの名無しさん [2009/05/29(金) 19:51:56 ] 今、学校の課題をやっているところなのですが、 「関数 'erfc' は定義されていません。」と出てしまいました。 erfc()はmath.hのエラー関数の関数で、 ぐぐったところ、標準ライブラリ(拡張)と出てきました。 どうすればいいでしょうか。お願いします。
731 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 20:20:17 ] なんだ、まだ解決してないのか 先生に聞いてみな
732 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 20:44:58 ] >>725 ないのはしょうがねぇじゃんw でもそれ以外不可ってのが俺的にネックだなぁ・・・ って感じでレス書いてる内に俺の都合レスになったw
733 名前:デフォルトの名無しさん [2009/05/29(金) 20:58:57 ] >729 1命令で収まりそうですね。 ビットを探すためにループ処理はしていませんね。 ありがとうございました。
734 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 22:38:59 ] >>724 畑違いだとめっちゃしんどいぞ。
735 名前:デフォルトの名無しさん mailto:sage [2009/05/29(金) 22:40:12 ] >>734 っていっても俺はじめゲーPGだしw
736 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 17:33:07 ] 関数を作ると、 関数に 2 個の引数を指定できません。 と出るんですが、どうすればいいでしょうか
737 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 18:00:51 ] 関数プロトタイプを見直せ。
738 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 18:01:23 ] それは作ったほうじゃなくて呼び出したほうのエラー 具体的にどうやったのか?
739 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 18:49:23 ] >>737 ,>>738 分かりました、ありがとうございます いままで関数のほうばかり見て、 関数プロトタイプの括弧の中を記述し忘れていました
740 名前:デフォルトの名無しさん [2009/05/30(土) 20:01:17 ] さっきVisual C++ 2008 Express Edition をインスコしたとこで、とりあえず簡単なプログラム実行させようとしたんだけど、 include ファイルを開けません。'iostream.h': No such file or directory って出てコンパイル通らんという状態なんだが Cygnusでは実行できたからソースコードが悪いわけではないと思うんだが・・・ それとも新規プロジェクトはWin32コンソールアプリケーションじゃあ駄目だったのか?
741 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:13:08 ] インクルードパスに追加すればいいだけでは?
742 名前:740 [2009/05/30(土) 20:16:25 ] #include <iostream.h>は#include <iostream>にしたらエラー吐かなくなった。 なんか新しい書式だと.hを付けないから古いほうだとエラーになるとかなんとか…? でも俺らの参照する文献(ネット上も含めて)には旧バージョンもまだまだあるだろ…迷惑な でも#include <iomanip.h>のほうはエラー吐き続けるんだが・・・
743 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 20:32:56 ] #include <iomanip>
744 名前:デフォルトの名無しさん [2009/05/30(土) 20:48:24 ] すみません。書籍スレと迷ったんですが、こっちで聞かせてください。 大分、MFCにもなれ、自作アプリを3個くらい手の込んだのを作りました。ある程度のアプリなら ネットやら書籍で検索しながら作れるような気はしてます。 書籍もオークションやらブックオフで色々あさって技術評論社とかAsCIIのを 12冊くらい持ってます。で、色々お勧め本をみるとハーバートシルトのMFC6.0という分厚いやつがお勧めらしいですが 本屋でぱっと見た限りほとんど知ってる事だと感じました。実際読んでないんでわかりませんが、 それでも含蓄あるから買ったほうがいいとか そういうことありますか?
745 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 21:00:59 ] 人それぞれだと思うよ。 もっとも、趣味範囲でのプログラミングなら、参考書に載っていない部分を、工夫しながら作っていくのが面白いのだけどな。
746 名前:デフォルトの名無しさん mailto:sage [2009/05/30(土) 21:13:51 ] 他に持ってる本で用が足りてれば買ってもしょうがないだろうけど そんなの全部内容比較しなきゃ誰にもわからんだろ
747 名前:デフォルトの名無しさん mailto:sage [2009/05/31(日) 01:45:45 ] プログラミングに限らず大抵の分野について初心者用の本ばかりなんじゃないの。 中級向けの本なんて作るの大変なうえに売れないし、作る人いないんじゃないかな。 雑誌でちょっとずつ高度な話を連載して書籍化ってパターンがあるけど雑誌が売れなくて消えてく時代だし。
748 名前:デフォルトの名無しさん [2009/06/03(水) 00:07:40 ] すいません。教えてください。 #include <string> #include <iostream> using namespace std; class User { private: public: User() { cout << "デフォコン" << endl; } }; int main() { User x; User y(); return 0; } User y();でデフォルトコンストラクタが呼ばれないのは何でですか?
749 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 00:16:32 ] >>748 User型の戻り値を持つ関数yのプロトタイプ宣言とみなされてるとか
750 名前:デフォルトの名無しさん [2009/06/03(水) 00:25:40 ] >>749 ありがとうございます cout << typeid(x).name() << endl; cout << typeid(y).name() << endl; してみたら、さらに納得がいきました。 てか、よんでる入門書にそういう記述があったので・・・ 本の正誤表に出てるかもしれないですね。 ありがとうございました
751 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 00:40:11 ] >>750 てか、このパターンはぱっと見関数宣言と変数定義の区別が つかないような気がするのでコンパイラによっては(VCでもバージョンによっては) 動作が異なるのかも知れない C++相談室スレとかにいけば、どう解釈するのか正しいのか教えてもらえるかも
752 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 01:10:44 ] Visual Studio 2008付属のVisual C++で、ダイロアグベースのMFCアプリケーションを 作り始めてみました。 エディットコントロールの使い方について教えてください。 エディットコントロールの使い方として、 ・変数の追加で、カテゴリControlの変数を追加する。 →GetWindowText()で内容を取得する。 ・同様にカテゴリValueの変数を追加する。 →UpdateData()で変数を更新して内容を取得する。 ・変数を追加しない。 →GetDlgItem()とGetWindowText()を使って内容を取得する。 このようにいくつか方法があると思っています。 それぞれの方法の長所や短所、使い分ける時の基準、みたいなものはありますか?
753 名前:750 [2009/06/03(水) 01:18:26 ] www.geocities.jp/bleis_tift/cpp/defaultctor.html こんなの見つけました。 コンパイラによっては警告を出してくれんですね ちなみに私が使ってたのはVC++ 2008です ありがとうござました いろいろ氷解しました
754 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 01:26:20 ] >>753 リンク先にもあるようにVisual C++は警告を出すコンパイラなんだけど気付かなかった? そうなら、警告もエラーと同じくらいよく目を通したほうがいいよ。
755 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 06:18:35 ] >752 数値の場合はDDX DDVが便利。 ただ複雑なことはできないのとUpdateDataが面倒 文字の場合は直にGetWindowTextが手っ取り早い 毎回GetDlgItemが面倒ならメンバ変数にしておく。 あとCEditのメンバ関数と使い分け
756 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 06:21:25 ] と思ったけどDDX DDVの中味を自作する方法もあったな
757 名前:デフォルトの名無しさん [2009/06/03(水) 19:24:40 ] 入門書を一通り読み終えて 簡単なアプリを作りながらVisualC++の使い方を覚える本をはじめたのですが 最初の方で String^ msg = now.ToString(); という記述が出てきました。 この^は見た覚えがないのですがなんか演算子なのですか? 今この書き込みかいててちょっと思いついたんですけど もしかしてクラス名が String^ ってことはないですよね?
758 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 19:39:37 ] それは、C++のようでC++でない.NET用の拡張C++/CLIの構文。
759 名前:757 [2009/06/03(水) 19:41:40 ] ありがとうございます。 すいません。取り除いてコンパイルしてエラー文検索で見つけました。 msdn.microsoft.com/ja-jp/library/ms235261 (VS.80).aspx ですね。
760 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 19:51:48 ] どっちみちC++とは違うものだし、.netがやりたいなら普通はC#にする。
761 名前:デフォルトの名無しさん [2009/06/03(水) 20:08:17 ] satou
762 名前:757 [2009/06/03(水) 20:51:42 ] >>760 C++を選んだのはオブジェクト指向でネイティブアプリが作りたかったんですけど CLIはネイティブじゃないんですよね。 C++でwindowsのネイティブアプリを作るとなるとVisual Studio 2008 Standard Editionあたりを買って MFCで作るのですか? そもそも見た目をグラフィカルに配置して、モデル部分やボタンなどのアクションをC++で書くというのを イメージしてたのですが、製品版買えば、MFCアプリをフォームエディタでのようにペタペタはって 作れるのですか? アマゾンでC++ MFCを検索すると2003年から新刊出てないようなのでMFCってもういまさらって感じですか? 何かをプラスでインストールしないと動かないアプリっていうのがいやなんですよね。 いろいろ聞いてすいません・・
763 名前:757 [2009/06/03(水) 21:12:16 ] なんか色々あってややこしいですね・・・ いろいろ見てみたけど 勉強するならWin32APIですかね?
764 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 21:13:51 ] とりあえずネイティブは無料版でも扱える(MFCは有料のみ) 俺的考えはビスタ以降は標準で.NETがインストールされてるからそこまで嫌う必要はないと思ってる
765 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 21:25:55 ] 757はなにをやりたいのかさっぱり分からん 例えばゲーム作りたいならC++とネイティブとDX、 ブラウザとかのツール系なら.NETのほうが開発しやすいし、 win系OS全部に対応させたいならWin32APIのみで開発するし 目的によって勉強する言語は変わってくるんだがなー
766 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 22:25:24 ] mfc使ってみようと思う時はribbon触りたくなった時くらい
767 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 23:06:10 ] そのリボンもWindows 7からWin32 APIの仲間入り。
768 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 23:41:00 ] ループを抜け出すときにはbreakを使いますが、これを自分で手定義した関数から実行することは出来ますか? void aaa() { break ;} int main(){ for(int i=0;i++;i>5) { aaa() ;} return 0;} のような感じです
769 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 23:44:04 ] 不可。
770 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 23:52:55 ] >>769 ありがとうございます
771 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 00:39:32 ] VC++2005でCStringを使おうとすると以下のエラーが出てしまいます。 何か設定など必要なのでしょうか? error C2065: 'CString' : 定義されていない識別子です。
772 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 00:48:17 ] #include <tchar.h> #include <atlstr.h>
773 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 01:01:37 ] >>771 VC++2005eeじゃね? 有料版じゃないとMFCは使えないよ
774 名前:771 mailto:sage [2009/06/04(木) 04:55:54 ] >>772 様 >>773 様 御回答ありがとうございます。 VC++2005eeにて文字列変数のコピーをするにはどうしたらよいのでしょうか?
775 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 07:11:09 ] lstrcpy
776 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 07:28:37 ] 文字列変数というのがchar*なら>>775 #include <string>してstd::string使うとか。 C++/CLIならSystem::Stringもあるけどまあ別物か
777 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 08:11:08 ] もしかして標準C/C++の基本がまだできてないなら C/C++スレへ行け
778 名前:757 [2009/06/04(木) 11:55:50 ] >>764 C++と.NETだとC++のランタイムがスタティックリンクができないので .NETが入ってたとしてもC++のランタイムのインストールが必要って聞いたんですけど そんなことないですか? プロジェクトのプロパティでランタイムライブラリを マルチスレッド デバッグ (/MTd) に変えてリビルドしたら コマンド ライン error D8016 : コマンド ライン オプション '/MTd' と '/clr:pure' は同時に指定できません。 と言われました。 マルチスレッド デバッグ (/MT)でも同じ感じです。 >>765 作りたいのは「ブラウザとかのツール系」です。 .NETなのかな〜 まあ、両方ザックリ本読んで考えて見ます。
779 名前:デフォルトの名無しさん [2009/06/04(木) 13:44:07 ] RPGゲームを作っています main関数の中でとりあえず作ってみたのですが、 これをそのままクラスにするいい方法はありますか? コード自体はたいした量ではないので、作り直すのは簡単なのですが 後学のためにも教えてください。 それとも戦闘画面をメインにし、フィールドを歩くときは別フォームを呼び出したりするほうが良いでしょうか
780 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 14:11:49 ] 地道に作り直せ
781 名前:デフォルトの名無しさん [2009/06/04(木) 14:29:42 ] VS2003で作成されたActiveXコントロールの更改をしているのですが、 最適化オプションが、 ・プログラムサイズ ・実行速度 の時は問題ないのですが、 ・無効 ・最大限の最適化 ・カスタム にして、リビルドを行うと、Regsvr32で以下のエラーが発生します。 「LoadLibrary("○○.dll")に失敗しました。指定されたモジュールが見つかりません。」 原因が全くわかりません。 どなたか原因をご存知の方教えて下さい。
782 名前:デフォルトの名無しさん [2009/06/04(木) 14:41:48 ] >>780 うーん、残念です ありがとうございました〜
783 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 15:18:13 ] >>781 Dependency Walker などを使って依存しているライブラリに違いが ないか調べてみるとか
784 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 16:12:10 ] 元々自分で作った物じゃないから作りを理解してないんだろ
785 名前:781 [2009/06/04(木) 18:13:26 ] >>783 素晴らしいToolの紹介をありがとうございました。 最適化無効でビルドされたDLLと最適化実行速度でビルドされたDLLを 調べてみたところ、Regsvr32が失敗する方(最適化無効)で開けないDLLがあるというようなエラーが出ました。 そのDLLをプロジェクトに配置してみたら、ビルド後イベントのRegsvr32が成功し、エラーはなくなりました。 リビルドではエラーはでなくなったのですが、コマンドでRegsvr32を実行すると、 やはり同様のエラーが出て登録はできません。(リビルド時に登録されたDLLを登録解除もできません。)
786 名前:781 [2009/06/04(木) 18:15:00 ] 続きです。 これは何がいけないのでしょうか…? 引き続き、ご存知の方教えてください。
787 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 18:55:51 ] class Test1 { virtual ~Test1() = 0 {} }; class Test2 { virtual ~Test2() = 0 {} }; class Test3 : virtual public Test1, virtual public Test2 { virtual ~Test3() = 0 {} }; これをコンパイルすると、 warning C4505: 'Test3::~Test3' : unreferenced local function has been removed という警告が出るのですが、何が問題なんでしょうか?
788 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 18:58:19 ] >>785 気になるのはDLLの配置場所かな 確かDLLのロードは - 環境変数PATHで指定されたディレクトリ - exeのある場所 - カレントディレクトル などを参照したと思うけど、 VC上からビルドして実行すると、たまたまカレントディレクトリが上記の <project> になるので、DLLは <project> 直下においても読み込んでくれる しかし、コンソールから実行する場合、カレントディレクトリやPATHに注意しないと うまくロードされないとか
789 名前:781 [2009/06/04(木) 19:25:52 ] >>788 まさにその通りでした。配置場所をバイナリファイルと同じ場所に配置することで解消しました。 (一層上のプロジェクトファイルに配置してました。) 本当にありがとうございました。 ただ、最適化オプションの違いでエラーになったり、ならなかったりするのが 不明のままなのが気になりますが…。
790 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 19:44:00 ] C++初心者です。 TextBoxを画面に表示したいんですが上手く作成できません。 プロジェクト作成でWIN32を選択してからテキストボックスを作りたいと思っています。 TextBox textBox1; textBox1 = gcnew TextBox; textBox1->Location = Point(100, 16); Controls->Add(textBox1); をソースに追加したのですが error C2065: 'TextBox' : 定義されていない識別子です。 error C2146: 構文エラー : ';' が、識別子 'textBox1' の前に必要です。 error C2065: 'textBox1' : 定義されていない識別子です。 error C2065: 'gcnew' : 定義されていない識別子です。 error C2146: 構文エラー : ';' が、識別子 'TextBox' の前に必要です。 error C2227: '->Location' : 左側がクラス、構造体、共用体、ジェネリック型へのポインタではありません。 型は ''unknown-type'' です。 error C3861: 'Point': 識別子が見つかりませんでした error C2065: 'Controls' : 定義されていない識別子です。 error C2227: '->Add' : 左側がクラス、構造体、共用体、ジェネリック型へのポインタではありません。 型は ''unknown-type'' です。 というコンパイルエラーが出ます。 テキストボックスはフォームでないと作成できないのでしょうか? 環境はMicrosoft Visual C++ 2005です。
791 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 21:02:55 ] いろいろ間違いすぎてどこから説明したものやら・・・ とにかく最初から最後まで間違ってる
792 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 21:32:30 ] >>790 そのTextBoxは.NETのWindows Formsの一部。 CLRプロジェクト以外では使えない。 おとなしく.NET Frameworkの世界にいなさい。
793 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:08:25 ] 一体どこからそういう情報もってきてんだ? 情報仕入れたとこに全部書いてるだろ
794 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:09:20 ] 入門書を4〜5冊はやらないと全体が見えないよな
795 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:11:38 ] >>793 は>>778 にレスね
796 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:17:58 ] VC6 での質問です 変数の値が変更された時にブレークポイントがひっかかるようにする方法って どのようにすればできるのでしょうか?
797 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:41:39 ] [編集] メニューの [ブレークポイント] をクリックします。 [ブレークポイント] ダイアログ ボックスで、[データ] タブをクリックします。 [評価される式を入力してください] ボックスに変数名を入力ます。 [OK] をクリックしてブレークポイントを設定します。
798 名前:デフォルトの名無しさん mailto:sage [2009/06/04(木) 23:53:07 ] >>797 できました ありがとうございます
799 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 15:50:52 ] VC2008EEでデバッグしています。 forのループ内にブレークポイントを置いてステップアウトしているんですが、 ループの回数が1000単位なので、1回ずつ変数の状態を見るのは手間がかかりすぎてしまいます。 例えば100回に1回だけ変数の状態を見たい場合、いい方法はないですか?
800 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 15:55:42 ] >>799 >>796-797 の応用
801 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 17:22:52 ] >>800 6と2008EEの違いのせいか、>>797 の項目が見つからず、 いろいろいじってたらヒットカウントというぴったりの物がありました。 どうもでした。
802 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 18:21:37 ] いまここに、Ansi C で書いたスタティックライブラリ c.lib があります。 そのライブラリをつかって、C++で書いたアプリケーション(GUIに依存しない部分を記述したもの)myapp があります。 GUI はお手軽に C# で書きたいので、アプリケーション部分 myapp を dll 化して、それを C# から呼び出したいです。 そこで、myapp.dll をつくりたいのですが、いざビルドしてみると、myapp から c.lib の関数を参照している部分でリンカエラーになります。 c.lib をスタティックリンクさせた状態で myapp.dllをつくるにはどうすればよいでしょうか? c.dll を作るのがめんどくさいので、myapp.dll が c.lib を内包してくれるとありがたいのですが。
803 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 20:22:08 ] できるはずだから、リンカオプションがまずいだけ。
804 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 22:17:43 ] extern "C" { #include "[c.libの関数のヘッダ]" } でもリンクエラーが出る?
805 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 22:19:15 ] リンカオプションですか.... c.lib をスタティックリンクするのって、もしかして myapp.dll のソースで #pragma comment(lib, "c.lib") だけではダメだったりしますか? (もちろん c.lib のあるディレクトリにパスが通ってるのが前提として)
806 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 22:34:56 ] それであっている。EXEでLIB使うときと同じ。 そういえば、そのLIBとDLLでCRTの設定は同じ? 異なっているといるとよくリンカに怒られる。
807 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 23:58:52 ] 現在デバッグビルドで試していますが、ランタイムライブラリの設定は c.lib と myapp.dll の両方で 「マルチスレッドデバッグ (/MTd)」で統一してあります。 呼び出し規約が c.lib だとデフォルトの設定のままで __cdecll に、 mydllではDLLのお約束(?)に従って __stdcall になっているのが気になりますが、 これは問題があったとしても実行時にでるものであって、リンカエラーとは関係ないですよね... 書き忘れましたが、リンカエラーというのは 未解決のシンボル "int __stdcall AAA()" (?AAA@@BBB@@CCC@D" が関数 "public: int __thiscall EEE::FFF() (?FFF@EEE@@GGG) で参照されました というのがつらつらでてくるものです。 myapp(C++)もともと exe として作っていて、そこから c.lib を参照するために、 cライブラリには既に extern "C" が記述してあります。 そしてその exe はきちんとビルドできて、実行できていました。 それでも念のため、ライブラリの #include をさらに extern "C" で囲んでみると、 なぜか Direct3D のヘッダ d3dx9math.h で大量の "operator *" Cのリンゲージ関数はC++のクラス D3DXVECTOR2を戻せません メッセージがでました。 もうすこし試してみます。
808 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 00:34:48 ] 呼び出し規約の違いはdefファイル使わねえとそのまま名前装飾に影響する
809 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 00:54:26 ] そういうことで惑うなら、呼出規約はソースコードに いちいち書いたほうがいいよ。コンパイラオプションにて一括で指定するのではなく。
810 名前:デフォルトの名無しさん [2009/06/06(土) 02:08:13 ] MFCのMDIで秀丸みたいなマルチドキュメントにしたいんだけど(タブ形式) 普通にEditビューじゃタブ形式にならないんだけど、どうすればいいの?
811 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 03:03:48 ] なるだろ? 2008のSP1限定だけど
812 名前:807 mailto:sage [2009/06/06(土) 11:32:31 ] なるほど、呼び出し規約を変えたら嘘のようにエラーがなくなりました。 いままで呼び出し規約を気にした事はなかったので、良い勉強になりました。どうもありがとう。
813 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 12:15:31 ] なるほどなるほど
814 名前:デフォルトの名無しさん [2009/06/06(土) 12:30:33 ] VC++でWin32プログラムを作成しています。 VS2008の雛形を元に、DialogBoxを追加しようとしているのですが上手く出来ません。 現在はファイルとヘルプの2個だけです。 やったこと (1)WndProc()のmessage引数で、WM_CREATEが渡された場合に DialogBox(hInst, MAKEINTRESOURCE(IDD_XXXBOX), hWnd, Xxx); と書いた (2)Xxxは以下のような関数です INT_PTR CALLBACK Xxx(HWND, UINT, WPARAM, LPARAM); コンパイルは出来たのですが、DialogBoxは増えませんでした。 どうかやり方を教えてください。
815 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 12:46:35 ] その手順で普通にやればできるから、コードがどこかおかしい。
816 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 13:02:13 ] ShowWindowしてないだけだったりして。
817 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 13:07:01 ] 通常はそれも不要だが。
818 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 13:21:55 ] モーダルで停止
819 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 13:26:23 ] ダイアログボックスなら「表示」と書くと思うが「追加」だとか「増えません」だとか表現している点が気になる。 ・・・見当違いのことをやろうとしているのではあるまいか?
820 名前:デフォルトの名無しさん [2009/06/06(土) 14:06:02 ] libjpegのライブラリにjpegtran機能も組み込みたいと思ってるのですが、 ソース・ヘッダファイルにjpegtranプロジェクトに入ってるもの(transupp等)を足しても、 そっちで宣言されている関数だけ、 ライブラリを呼ぶ側のアプリでリンクエラー(外部参照未解決)が出てしまいます。 その他の標準でlibjpegプロジェクト内で既に宣言されていた関数は(使えるかはともかく)エラー出ません。 ソースはIJGのではなく、VC++のプロジェクトファイルも入ってる高速化版(ソフトウェア工房α)です。 nasmも入れてあり、コンパイル自体はエラー吐くことなく成功します。 ビルドの仕組みを理解できてなくてSource/Header Files に入れるだけでは駄目っぽい以外解らず助言頂けませんでしょうか。 ただし、lib自体の容量は大きくなります。 VC++のバージョンは6.0です。Win32アプリ開発。
821 名前:デフォルトの名無しさん [2009/06/06(土) 14:36:50 ] しかし、 Vc6の開発者おおいね。。libjpegとかつかったなあ。VC6ってGDI+つかえるんだっけ。。
822 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 17:47:15 ] ライブラリの開発者に直接聞かないで全然関係ない掲示板で質問されてもな
823 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 18:52:55 ] >>821 使える。
824 名前:820 mailto:sage [2009/06/06(土) 19:40:49 ] ライブラリそのものは自分でビルドしてます。 また、ソースコードはほぼIJGそのままで、IJG提供のソースを、調べたnmakeでのコンパイルしても transupp等の組み込みが出来てないので、同様のエラーを吐きます。 日経ソフトウェアダウンロード からプロジェクトファイルを落として見たものの同様の状況で jpegtranに使用される関数をライブラリに組み込む事が出来ませんでした。 ただSource/Header Filesに入れるだけではライブラリ作成時にエラーが出なくとも呼び出し側でリンクエラー同じです。 bccでlibjpegライブラリを使ってjpegtranの無劣化回転処理を組み込んでいる方が居たので、 可能な事は確かなのですが・・・。(そのライブラリはVC++からでは使用できず)
825 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 20:05:58 ] すみませんひとりごとでした
826 名前:デフォルトの名無しさん [2009/06/06(土) 20:08:50 ] そこで#pragmaですよ。。
827 名前:デフォルトの名無しさん [2009/06/07(日) 07:29:11 ] Win32アプリケーションを選択してC++でプログラムを書いてるのですが、 std::cout<<message<<std::endl; とかやってもどこにもメッセージが出力されません。どうすればよいですか?
828 名前:デフォルトの名無しさん [2009/06/07(日) 08:01:24 ] AllocConsole()とかを使おうかと思ったのですが、よく分からなかったので HWNDをMessageBox()に渡して、メッセージを出すことにしました。 ありがとうございました。
829 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 10:41:00 ] 下のように、クラスAAのインスタンスを、メモリーに割り当てたときに。 コンストラクタとデストラクタをどうやって起動したらいいのでしょ? class AA { int i1,i2; AA(); ~AA(); } void func() { char dat[100]; AA *dat; dat = (AA *)dat; }
830 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 10:44:43 ] 割り当てたら勝手に実行されるんじゃないの 解放したらまた同じく
831 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 10:46:14 ] 上の場合、ポインターがセットされるだけなので、実行されないです。 この場合の実行の仕方を知りたいです。
832 名前:デフォルトの名無しさん [2009/06/07(日) 10:46:35 ] Win32アプリケーションとWindowsフォームアプリケーションでは、何が違いますか?
833 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 10:48:55 ] >>832 フォームの使用・非使用
834 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 11:46:45 ] WinMain/main
835 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 12:38:05 ] VisualStudio 2008 EEのVC++で公開ソースをビルドしようとしたのですが、 afxwin.hがないとエラーが出たので”Visual C++ 2005 Express Edition と Microsoft Platform SDK を一緒に使う” を見て設定しました。そして、ビルドをしたら error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません というエラーがでます。ソースは _AFXWIN_INLINE CMenu::operator==(const CMenu& menu) const { return ((HMENU) menu) == m_hMenu; } _AFXWIN_INLINE CMenu::operator!=(const CMenu& menu) const { return ((HMENU) menu) != m_hMenu; } _AFXWIN_INLINE HMENU CMenu::GetSafeHmenu() const { ASSERT(this == NULL || m_hMenu == NULL || ::IsMenu(m_hMenu)); return this == NULL ? NULL : m_hMenu; } となっており、2行目と4行目でエラーがでます。 どう書き換えればエラーが直るでしょうか。
836 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 12:45:37 ] MFCはEEじゃ使えないからダメ。
837 名前:835 mailto:sage [2009/06/07(日) 13:03:46 ] >>836 ということはソースを修正しても無駄ということですね。ありがとうございました。
838 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 13:57:38 ] >>829 の質問別スレで聞いて見ます。
839 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 14:10:05 ] 実体がないのにコンストラクタは働かない。
840 名前:デフォルトの名無しさん [2009/06/07(日) 14:53:27 ] 小生、昨日、サッカーを久しぶりにテレビ観戦して 試合後、ニュー速で試合を見て思ったことを、色々書いたら ぼっこぼこ馬鹿にされたなりよ。やっぱ小生がそこそこ偉い発言できるのはMFCしか無いと思ったなりよ。
841 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 10:00:06 ] DLLなど複数プロジェクトが含まれるソリューションを開発する時、 ソース内のincludeパスの指定どうしてますか? VC++の場合はProjectDirとSolutionDirの2つがデフォルトで 使えると思いますがこれの使い分けとか気にしてます?
842 名前:デフォルトの名無しさん [2009/06/08(月) 11:21:47 ] VS2008で、Cのプログラムをコンパイルするとき、CとしてコンパイルするかC++として コンパイルするかというのは、自分で決められますか?
843 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 11:27:48 ] できる。 IDE内ならオプションにあるべ。 コマンドラインでも指定できるし、何も指定しないと拡張子から区別される。
844 名前:デフォルトの名無しさん [2009/06/08(月) 12:40:49 ] >>843 ありがとうございます。 別ファイルにある double func(); というのをmain()から呼んでる時、main()のすぐ上でint func();という宣言があるので C++では呼び出せてたのですが、ふとこれがCだったら呼び出せてなかったっけ、と気になった ので…。
845 名前:デフォルトの名無しさん [2009/06/08(月) 14:15:29 ] ソースを書いてる時のコメントの色が見づらいので変更したいのですが色とかはどうやって変更したらいいですか?
846 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 14:19:03 ] ツール - オプション - 環境 - フォントおよび色
847 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 14:36:58 ] >>846 ありがとうございます!!
848 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 19:17:07 ] VC6 いまだに使ってますけど ゲーム作成にしか使わないんですがバージョンアップする必要ってあります? 値段とファイルサイズだけがバージョンアップされあまり期待できないのですが
849 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 20:00:50 ] >>848 VC6はもうC++対応じゃないと思った方がいい。VC6言語だと思った方がいいくらい、標準と違う。 それを踏まえると、標準C++を学びたいわけでもなく、 現状のゲーム作成で困ってないなら変えない方がいいんじゃないかな?
850 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 20:02:05 ] Microsoft Visual C++ 2008 Express Edition 無償で公開されているから体験してみるもよかれ!
851 名前:デフォルトの名無しさん [2009/06/08(月) 20:08:53 ] 便乗質問・・・ VC6のStandardでしこしこ アプリ作ってんだけど、 ぷろになりたいと思ってきた。その場合、Proffessional editionの方がいいのかえ?
852 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 20:17:07 ] VC6のサンプルプログラム見せるよりは、新しいVCのサンプルの方が可能性は高い
853 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 20:18:38 ] サンプル −> 自作ソフトのサンプル
854 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 20:21:19 ] >>850 EE版だとMFC動かないんだよね .netFrameworkは開発者のオナニーがたくさんつまった作品 オナニーたくさんやった挙句なにも便利になっていない 相変わらず細かいことをするにはいつもどおりの苦労を迫られるし 今度はやけにネットの情報が少ない
855 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 21:01:31 ] .NETで楽するならC#やVB.NETのような新言語でやらないとだめだ。 C++でやったら両方の悪いとこ同士が増幅されるだけ。 >>851 VC6の頃だと、Standardでは作ったものの商用利用が認められていなかった気がする。 そういう意味でProfesionalが必要だった。 あと、Stdでは最適化が使えない。 VC2005 (VC8)の辺りから、エディション問わず商用利用可能になっている。 最適化も基本的なものは全エディションで使えるし。
856 名前:デフォルトの名無しさん [2009/06/08(月) 21:05:55 ] Visual C++ Express Editionにboostを入れようとしています。 (1) boost のダウンロードwww.boost.org/ のWelcome - Download から boost_1_38_0.zip とboost-jam-3.1.17-1-ntx86.zip をダウンロード (2) boost_1_38_0.zip を展開し、内容をC:¥develop へ展開する。(他のディレクトリでも可) (3) boost-jam-3.1.12-1-ntx86.zip を展開し、bjam.exe をC:¥develop¥boost_1_38_0 へコピー (4) コマンドプロンプトを開き、ディレクトリを移動。 CD C:¥develop¥boost_1_38_0 (5) "C:¥Program Files¥Microsoft Visual Studio 9.0¥Vc¥bin¥vcvars32.bat" を実行 (6) bjam --build-type=complete msvc stage を実行 (7) Visual Studio を起動し、[ツール] > [オプション] を開き[プロジェクトおよびソリューション]>[VC++ディレ クトリ] を開く。 右上の「ディレクトリを表示するプロジェクト」で「インクルードファイル」を選び、新しい行を作って "C:¥develop¥boost_1_38_0" を追加する。おなじく「ライブラリファイル」に"C:¥develop¥boost_1_38_0¥ stage¥lib" を追加する。 と手順どおりにしているのですが、 fatal error C1083: include ファイルを開けません。'boost/array.hpp': No such file or directory というエラーがでてコンパイルができません。 どうしたらいいですか??
857 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 21:17:20 ] そのエラーメッセージに書いてある通り
858 名前:デフォルトの名無しさん [2009/06/08(月) 23:39:12 ] クリティカルセクションの質問なのですが、 main()でInitializeCriticalSection()やって、その後_beginthreadex()します。 その後以下の処理を行うスレッドを100個起動させます。 EnterCriticalSection() カウンターをインクリメント LeaveCriticalSection() そして、main()関数内でWaitForMultipleObjects()で全スレッドの終了を待ちます。 WaitForMultipleObject()の直後にカウンターの数を表示させているのですが、 これが100になりません。(95とか55とか) クリティカルセクションの使い方が間違ってるのでしょうか?
859 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 23:43:40 ] カウントの処理に問題があるのでは?
860 名前:デフォルトの名無しさん [2009/06/08(月) 23:58:22 ] WaitForMultipleObject()が全スレッドの終了まで待っていないようです。
861 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 00:12:24 ] >>858 それ以前に、そのスレッドちゃんと全部生成されていることを確認したか?
862 名前:デフォルトの名無しさん [2009/06/09(火) 00:21:34 ] >>861 確認しました。やっぱりWaitForMultipleObject()がスレッドの完了待ちをしてませんでした。 WaitForMultipleObjects(100, hThreads, TRUE, INFINITE); この形で呼び出していて、戻り値は-1でした。
863 名前:デフォルトの名無しさん [2009/06/09(火) 00:31:03 ] とりあえず自己解決しました。 main()の最後に while(count!=100) ; みたいなループを入れると動きました。なんとか動きそうです。
864 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 00:39:48 ] WaitForMultipleObject の第一パラメタ(最大ハンドル数)は 64 まで
865 名前:デフォルトの名無しさん [2009/06/09(火) 00:50:56 ] >>864 ええーっ、64ですか? そうか、MAXIMUM_WAIT_OBJECTSですか… じゃあ65以上のスレッドを待ちたい時はどうすんのかと思ってMSDN見たら、 64個のスレッドを待つまとめスレッドを作って、そのスレッドを待つようにしろ、 と書いてました。そんなの今からかけないよ〜 でもありがとうございました。
866 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 08:26:07 ] スレッドが100個とかどういうとき必要になるんだろう。
867 名前:デフォルトの名無しさん [2009/06/09(火) 10:37:05 ] HTTPサーバみたいなサーバプロセスを書いているのですが、コネクションが来るたびに スレッドを生成してWorker Threadパターンでやってます。今朝は100個のコネクション が一挙にキタ場合のテストをやろうとして、ああなってしまいました。
868 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 15:53:55 ] アルゴリズムってなんですか? 分かりやすい例えを教えてください
869 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 16:17:33 ] >>868 アルゴリズムすなわち解法 問題と答えをつなぐものがアルゴリズム。 たとえば「1〜10の総和はいくら」という問題に Aさんは 1+2+3+4+5+6+7+8+9+10 Bさんは 11×5 と考えるだろう。 Aさんの解法もBさんの解法も「1〜10の総和はいくら」の答えを求めるアルゴリズム。
870 名前:868 mailto:sage [2009/06/09(火) 16:19:35 ] 当然正しい答えが出なきゃならんし,有限の時間で答えが出なきゃならん。 ってかスレ違いだと思われ。
871 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 17:44:48 ] ググれ
872 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 19:37:15 ] MFCについて質問があります。 ダイアログ上のボタンを押下したときに、エディットボックスを追加する関数を加えたいのですが、 エディットボックスを追加する関数というのはあるのでしょうか? また、エディットボックスを追加すると同時にメンバ変数も追加することができるのでしょうか?
873 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 20:50:02 ] >エディットボックスを追加する関数 動的に追加するならCEdit::Create(); 動的に追加せずとも、非表示でエディットボックスを作成しておき、ボタンをクリックしたときに表示させる という手法もある。 >メンバ変数も追加することができるのでしょうか メンバ変数はあらかじめ用意しておく必要がある。
874 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 20:59:32 ] CObject は動的生成機能もサポートしています。これは実行時に特定のクラスのオブジェクトを作成する機能です。
875 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 21:03:27 ] >>873 さん ありがとうございます。
876 名前:デフォルトの名無しさん [2009/06/09(火) 22:09:10 ] 仮想関数やWindowsハンドラをオーバーライドして 基低クラスの関数を最後に呼び出すかどうかってオーバーライドする関数によって違うみたいなんだけど 初心者じゃそこらへんわからないよね(´・ω・`)
877 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 22:12:00 ] 「非標準の拡張機能が使用されています : 右辺値のクラスが左辺値に使用されます。」って警告ってどうやったら取れるんでしょうか めっちゃいっぱい出ていて困っています
878 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 22:12:48 ] >>876 何を...>>876 君、君が何を言っているのか分かんないよ
879 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 22:14:44 ] >>877 とりあえず再現するソースを公開しろ
880 名前:876 [2009/06/09(火) 22:17:22 ] たとえばPrecreateWindow関数をオーバーライドすると BOOL CMyNaviView::PreCreateWindow(CREATESTRUCT& cs) { // TODO: この位置で CREATESTRUCT cs を修正して Window クラスまたはスタイルを // 修正してください。 return CView::PreCreateWindow(cs); } って、最後にreturn CView::PreCreateWindow(cs);の一文が入るんだけど、 本を読んでるとこれをreturn TRUE;に変更するとか、初心者じゃわからないよね(´・ω・`)
881 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 22:30:54 ] PreCreateWindow()の戻り値の意味を知っていればわかるだろ。 で、君がわからないのか、それとも他人がわからないことを嘆いているのか、どっちだ?
882 名前:876 [2009/06/09(火) 22:34:36 ] わしがわからんのじゃけど。
883 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 22:38:24 ] PreCreateWindow()が FALSE を返すとウィンドウは作成されない。 じゃ、CView::PreCreateWindow() はどういう時に FALSE を返すのか、オーバーライドした関数ではどうすべきか、 なんてなことを勉強していくしかないな。AAAA
884 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 22:39:33 ] うう、すまぬ。最後のAAAAは無視してくれ。 Shiftキーと同時に押しちまった。
885 名前:876 mailto:sage [2009/06/09(火) 22:42:07 ] わかりました。ありがとう。 道は長そうだけど、そういうふうに意識して勉強していきます。 ありがとう。
886 名前:デフォルトの名無しさん [2009/06/10(水) 01:08:54 ] _beginthreadex()で作ったWindowsのスレッドに、各スレッドごとに独自のデータを 保持させることはできますか?
887 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 01:18:39 ] >>886 つTlsAlloc, TlsFree 等
888 名前:デフォルトの名無しさん mailto:sage [2009/06/10(水) 01:34:25 ] >>886 生成するスレッドにはパラメタを1つ渡せるので、スレッドの単位で作成したクラスや構造体の インスタンスアドレスを渡せば良い
889 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 23:29:45 ] フォルダごとコピーしてデスクトップに持ってきてデバッグしようとしたらデバッグ情報が読み込めません、シンボルが一致しません って警告が出るんですけどどういう意味ですか?
890 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 23:39:29 ] >>889 デバッグ情報にはソースファイル位置などがフルパスで格納されているから フォルダを移動すると正常にデバッグできない
891 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 23:40:12 ] >>890 じゃあ、どうすればいいんです?
892 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 23:42:49 ] 元の位置でデバックする
893 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 23:47:20 ] それじゃ意味ねええええっうぇwっうぇえww
894 名前:デフォルトの名無しさん mailto:sage [2009/06/11(木) 23:52:43 ] シンボルサーバ作ればいいだけだろ
895 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 00:02:50 ] /::::::::::::::::::( /::::::::::ヾ ヽ ヽゞ::::::::::::::::ヽ /::::::::::::::::::::::::::::::::::ヾ i i ソ::::::::::::::::: ヽ /:::::::::::::::::::::::::::::::::::::ゞ ! i ゞ::::::::::::::::::ヽ /:::::::::::::::::::::──< ̄● ̄>─ | i |─< ̄● ̄>─:::::::ヽ |:::::::::::::::::::::/  ̄  ̄ ─ 、  ̄  ̄ ヽ::::::::| . |:::::::::::::::::::/ / ヽ ヽ:::::::| ..|::::::::::::::::::/ i | \:::::|ぶぁぁか .|:::::::::::::::::/ ヾ 丿 _ \::::| ..|::::::::::::::::/  ̄ ─ _ ` ─ ̄ ' ─ ̄ ヽ:::| |:::::::::::::::: ─ ー | | ー─ ̄ ヽ:| ヽ:::::::::::::: | ━ ─ ─ ー ─ - | | ─ ー ⌒ ─ | ヽ:::::::::::::| _ _─ ─││ ──/ヽ_ヽ | ヽ::::::::::::| ─ ̄ _─ ̄ ノ /─ | ヽ:::::::::::| _ _ ─  ̄ / 丿 | ヽ::::::::::| ヽ ̄ / ̄ - -_ / / / \:::::::::| \ ノ -_ _ ) / / / \:::::::| \ ノ ─' ノ / \:::::| ─ _ __ ー ' /
896 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 00:06:23 ] リモートログインしちゃえよ
897 名前:デフォルトの名無しさん [2009/06/12(金) 02:02:02 ] MFCのために¥15000だしたいんだけど、金無いなりよ。
898 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 02:03:59 ] >>897 学生ならドリスパでタダでVS2008プロを落とせる
899 名前:デフォルトの名無しさん [2009/06/12(金) 09:55:20 ] VC++eeなんですけど プロジェクトフォルダで、自分の書いたソースファイルとかプロジェクトの設定が書いてあるファイルなどと、 ビルドした時の中間ファイル?とかビルドファイルとフォルダを変える事ってできますか? どこでも参照できるように自鯖のサブバージョンに入れてみたんですけど、容量がどんどん肥大化していく・・・
900 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 10:01:52 ] ドリスパって何?
901 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 11:19:53 ] サッカーのチーム
902 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 13:22:13 ] >>899 プロジェクトのプロパティの全般カテゴリに中間ディレクトリ指定できんだろ。 んまーそこで困ってるならsvnの無視プロパティ活用しろよとは思うが。