1 名前:デフォルトの名無しさん mailto:sage [2007/04/12(木) 23:25:17 ] 1 : ◆Manna2uCLg :2005/04/15(金) 13:33:14 Visual C++入門者・初心者からの質問を、 お兄ちゃん達が優しく、時には厳しく回答してくれるスレッドです。 ■質問するにあたって ・エラーや警告のときはエラーメッセージを書きましょう。 ・開発環境も書きましょう。 ・できるだけ具体的に。 質問の仕方については次のページが大変参考になります。 www.hyuki.com/writing/techask.html myu.daa.jp/osiete/ ■回答するにあたって ・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。 (MSDNのどの項目だとか、何のキーワードでGoogleするとか) ・ネタや煽りは軽く流しましょう。 過去スレ、関連スレなどは>>2-5 。
369 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 16:00:22 ] >>359 そいつは実装の問題だな。 色々やり方あるけど とりあえず CriticalSection あたりを利用してみれ # 当然コレだけじゃ出来んぞ まぁそもそも、全体的な構成が悪い気もするけど。
370 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 16:18:38 ] >>369 ありがとうございました。調べてみます。
371 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 22:48:53 ] ダウンにかなりの時間って、まさか今時アナログとかISDNとか言うんじゃないだろうな ADSLなら余裕だろ
372 名前:ちんこ mailto:sage [2007/06/24(日) 22:58:23 ] ダイヤルアップでちゅ
373 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:26:25 ] 音響カプラーでふ。
374 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 23:32:59 ] 脳内電波でちゅ
375 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 10:08:31 ] 伝書鳩
376 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 13:50:34 ] 矢文
377 名前:デフォルトの名無しさん [2007/06/25(月) 14:58:11 ] >>355 それは本当か?
378 名前:デフォルトの名無しさん [2007/06/25(月) 21:44:01 ] 助けてくれ〜。 当方初心者、Windows XP、Visual Studio 2005使用。 簡単なウィンドウアプリを書いて無事ビルドできたんだが、 いざ実行しようとしたら 「'C:\WINDOWS\system32\ほにゃらら.dll'を読み込みました。 シンボルが読み込まれていません」というメッセージがずらーってできた。 今まで同じようなアプリは普通に実行できたのに。 俺何もしてないはずなのになぜ、ひねくれるの?おしえておじいさん。
379 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 21:45:31 ] 気にするな。
380 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 21:45:40 ] ググレカス。お前より年下の方が多そう
381 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 21:55:04 ] help me お兄さん。 同じく初心者、WinXP VisualStudio2005使用。 フルスクリーンのウィンドウを表示してbmpを全画面に貼り付けようといじっててフルスクリーンのウィンドウは出るんですが、 全くいじらずデバッグ開始しているにも関わらず、bmpがキチンと画面全体に描画される場合と下に空白ができる場合があって悩んでます。 ちょっと曖昧過ぎて答えにくいかもしれませんがお願いします。
382 名前:デフォルトの名無しさん [2007/06/25(月) 22:46:00 ] main関数がないだけであたふたする僕
383 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 22:51:31 ] >>377 違うの?
384 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 01:27:54 ] >>381 もちろんWM_PAINTのタイミングで描画してるよな。
385 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 01:42:35 ] >>384 してます・・。
386 名前:381 mailto:sage [2007/06/26(火) 02:42:06 ] >>384 すみません、できているとは思うんですが自信がなくなってきたので質問・・。 それができていなかった場合>>381 で書いたような不安定な不具合が起こるんでしょうか?
387 名前:デフォルトの名無しさん [2007/06/26(火) 02:42:21 ] >>381 ちょっと曖昧過ぎて答えにくいな。
388 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 03:14:45 ] そんなに長いソースじゃないし どこにでもあるようなものだろ? 全部上げるか問題部分だけ上げれば?
389 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 09:40:32 ] 下の空白ってなんだ? タスクバー分?
390 名前:378 mailto:sage [2007/06/26(火) 13:37:30 ] 解決しました〜。Ctrl+F5ってすればいいんだな。 >>379 教えてくれてありがとう、おじいさん。 >>380 孫娘に「口笛はなぜ〜♪」って聞かれて「自分で調べろカス!」って、 おまいに人の心はないのか。・゚・(ノД`)・゚・。
391 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 13:59:09 ] 孫など出来るのは後何十年以上掛かる 孫娘でも知ってるような事を分からなくて孫娘に聞くって、 おまいはどんだけ〜。・゚・(ノД`)・゚・。
392 名前:デフォルトの名無しさん [2007/06/26(火) 15:43:02 ] マルチスレッドでclock関数を使っても大丈夫しょうか?
393 名前:デフォルトの名無しさん [2007/06/26(火) 17:12:50 ] ちょっとスレ違いかもしれませんが Visualstudio6.0を入れてるPCに2005Expressを入れてしまったのでアンインストしようと思うんですが 普通に2005をアンインストしても6.0の動作に問題はありませんか?
394 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 18:14:55 ] うん
395 名前:381 mailto:sage [2007/06/26(火) 19:25:52 ] 帰宅しました。 空白はタスクバー分の空白だと思います。
396 名前:381 mailto:sage [2007/06/26(火) 21:23:35 ] 長々とすみません、再描画処理を入れたらなんとか全画面化できました。 何故再描画入れないとタスクバー分空白ができるのか結局分からず仕舞いでしたがありがとうございました。
397 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 06:55:41 ] そんなこったろうと思ったよ
398 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 16:41:40 ] 空白ができるときとできないときで、描画範囲の数字が違ってると思うんだけど GetClientRectあたりで取ってきてんのかな
399 名前:sage [2007/06/27(水) 23:38:35 ] VC++6で作ったプロセスをWindowsのクラスタサービスの 汎用アプリケーションリソースにしています。 最近Windows2000からWindows2003にOSをアップグレードしたところ、 プロセスのオフライン時にデバッガが起動して、 オフラインに失敗する事象が頻発するようになってしまいました。 デバッガを見てもアセンブリが読めないため、難儀しております。 このような場合、考えられる問題は何がありますでしょうか。
400 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 23:41:29 ] >考えられる問題は何がありますでしょうか。 名前欄にsageと書くバカらしさ
401 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 00:46:16 ] ソースとpdbもちこんでは
402 名前:デフォルトの名無しさん [2007/06/28(木) 02:09:28 ] プログラム経験ない管理部門ですが、突然C++使えるようになれと命令 されたんですが、独学で可能ですか?いろいろ調べるとC言語が理解して いないと無理なように思えたんですが。
403 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 04:30:21 ] >>402 独学も可能だしC言語の知識がなくてもわかると思うけど… でもやっといてもいいんじゃないかな?
404 名前:デフォルトの名無しさん [2007/06/28(木) 08:09:23 ] >>402 基本的にCからやったほうがいいと思いますが センスがあればC++でも問題ないと・・・ しかし初心者にはC++は難しい 自分は入りやすいように DXライブラリというサイト利用してゲームを作っています。 グーグル検索してみて〜 後は本を買ったりして基本と必要なことだけを覚えていくこと
405 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 09:00:39 ] >>402 よし、替え玉2号の俺に任せろ!
406 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 13:14:59 ] どこまでやるかによるけど… プログラム経験ないんだろ? 変数とは何か、配列とは何か、演算子とは何かからはじめるわけだ。 使えるようになれと命令されたってことは猶予はせいぜい1ヶ月くらいか? もう無理と断言していいんじゃまいか。
407 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 13:39:02 ] そうでもない
408 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 13:39:03 ] もう不要と断言されたようなもの?402カワイソスw
409 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 14:06:25 ] >>402 上司に俺を紹介すればいいと思うよ
410 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 18:43:32 ] >>402 別にたいしたことやるわけでもないなら余裕だろ ポインタやらビット制御やらまでくると理解が難しいだろうが
411 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 20:36:10 ] 復習をしようと思ってとても簡単そうな #include "stdafx.h" #include <stdio.h> void main() { int a,b,wk; scanf("%d,%d",&a,&b); wk=a; a=b; b=wk; printf("a=%d b=%d\n",a,b); } を試してみたのですがaとbを入れ替えるプログラムがうまく動きません。 写し間違いはないと思うのでが何が原因なんでしょうか
412 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 21:14:57 ] ここVCスレなんだしデバッガ使って自分で調べりゃいいだろ
413 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 21:30:28 ] 入力でミスってるに1票。
414 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 21:40:34 ] C初心者スレへ行った方がいいと思うよ
415 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 12:47:13 ] BSTR型ってサイズの制限とか無いですよね? Base64でエンコードされたファイルをBSTR型文字列で受け取ることになっているんですが、 メモリの許す限り何MBでも入りますよね?
416 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 16:34:38 ] 有ります。
417 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 16:40:51 ] A four-byte integer 理論上は終了文字含まないで4GBだな。 バイナリ換算だと1GBか。
418 名前:417 mailto:sage [2007/06/30(土) 16:43:53 ] Win32だとUTF-16だから、文字数はその半分、 バイナリ換算すると512MBだった…… orz
419 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 17:21:59 ] 何で限界バイト数が減るのか理解できん。 #Win32ではまず連続1GBもメモリは確保できないけど。
420 名前:417 mailto:sage [2007/06/30(土) 21:03:50 ] Base64の一文字当たりの情報量は6ビットだから、バイナリ変換すると3/4、 4GBytes => UTF-16:2G => 1.5GBytes だろ、常識的に考えて。 ごめん、今日はボケてるみたいだ orz
421 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 21:07:37 ] いつもじゃね?
422 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 22:45:44 ] >>415 >>417-420 が4バイトといっているのは、 BSTRの先頭の文字列の長さを格納する部分の大きさを根拠にしている。 Win64でもこの大きさは変わっていない。 あと、言ったところでどうにもできないとは思うけど、 BSTR自体は直接バイナリデータを扱えるようにもなっている。
423 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 00:04:06 ] 残念ながら、BSTRは例え64bitWindowsでも2^32-1バイトをサポートしていない。 最大は2^29バイトとなるように実装されている。 BSTRは別段UNICODE (これはM$が勝手に決めたUNICODEであって、本来はいわゆるUTF-16に準拠したもの)を 格納するためではない。その気になればEUCだって代入できる。 現に>>422 も単なるバイナリデータとして扱えると言っている。 ところが、少なくともVB6のCComBSTRのメンバ関数は、2バイト文字を扱うように実装されおり、 かつ、null-terminal文字列として扱っている。 BSTRはどんな文字セットでも扱えるとM$は称しているが、実際のところ安全なプログラムを組むには UTF-16以外は代入しない方がいいと考えていい。 そして、文字列のバイト数は2^29-2であって、文字列は2^28-1文字(最後は`\0')しか代入できない。 ちなみに、Windows95系と互換性を持たせたかったら、4095バイトを限界にした方がいい。 うろ覚えだが、確かメガバイト単位までは実装されてなかったはず。
424 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 00:08:59 ] >VB6のCComBSTR >null-terminal文字列 ここは突っ込むところなのだろうか。
425 名前:423 [2007/07/01(日) 00:16:16 ] >>424 よく突っ込んでくれた!といいたいところだが、単なるミスです。 当方チューハイ4杯入ってますので。
426 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 00:26:40 ] SysAllocStringの > zero-terminated string to copy. The sz parameter must be a Unicode string >in 32-bit applications, and an ANSI string in 16-bit applications. についてはどう考える? まあ、インターフェースと内部実装でコードが違ってる場合もあろうけど。
427 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 00:52:36 ] >>426 非ヌル終端の文字列でBSTRを初期化したければSysAllocStringLen。 バイナリデータでBSTRを初期化したければSysAllocStringByteLen。
428 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 00:56:28 ] >The sz parameter must be a Unicode string こっちのほうだけど。
429 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 11:06:09 ] ありがとうございます。 まとめると、データがBase64文字列の最大100MB程度で OSがWinNT系なら、何も考えずにBSTRに格納できるということでしょうか。 ただ、格納されるBase64文字列はUTF-8かSJISのどちらか(未確認)です。 Base64文字列データを返値として提供してくれる関数の返値の型がBSTRになっているのですが、 そのまま格納してはまずいのでしょうか…。 CStringに入れれば大丈夫だったり? ※ 上の関数はライブラリで提供されてるので中身の実装は分からないのですが、中で 返値をBSTRに格納してるのなら一緒じゃないかと思ったり
430 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 11:28:49 ] >>429 それくらいだったら平気だろう。
431 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 14:12:29 ] VC++2005ってC99コンパイルできますか?
432 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 14:20:09 ] いいえ。
433 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 23:41:20 ] VisualStudio2005でC++のライブラリの追加がうまくいきません ツール>オプション>プロジェクト及びソリューション>VC++ディレクトリ でインクルードファイルとライブラリファイルのところに 追加してるんですがうまくいかない場合は他にどこに気をつけるべき?
434 名前:デフォルトの名無しさん mailto:sage [2007/07/01(日) 23:45:49 ] プロジェクトに追加しろよ
435 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 00:04:06 ] >>434 しょっちゅう使うつもりなんでできるだけ環境に入れときたいんですが……
436 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 00:22:21 ] ライブラリをインクルードファイルに追加する分際で何言ってんの? だからプロジェクトに追加しないとリンクされねぇっつーの。 プロジェクトなりソースでファイルをリンクするように設定しろや 環境にPATHを入れるのは自由だ
437 名前:デフォルトの名無しさん [2007/07/02(月) 00:53:23 ] visual C++ 2005 をインストールしようとしているのですが、 登録しなければインストールできないのですか? www.microsoft.com/japan/msdn/vstudio/express/visualc/
438 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 00:56:45 ] ううん
439 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 08:56:42 ] >>434 ,>>436 なんだい、えらそうに。このタコが。
440 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 09:15:15 ] うまくいかないで考えが終わってるから うまくいかないんだろう 猿の方が賢いかも
441 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 10:26:55 ] VC++なら、提供するincludeファイルに、#prafma comment(lib, "xxx.lib") をつけときゃ、あとはディレクトリの指定だけしときゃいい
442 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 19:12:19 ] 自作のクラスやメソッドをインテリジェンスで表示させるときに コメントも一緒に表示できるようにならないかねぇ・・・ 俺が知らないだけかもしれないけど・・・
443 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 20:26:37 ] New C++ Language Features - XML Documentation に何か書いてあるっぽい。C#のXMLドキュメントコメントと似たようなものか? でも、読むの('A`)マンドクセ
444 名前:デフォルトの名無しさん [2007/07/02(月) 23:10:07 ] >>441 いや、どうせなら #prazma ディレクティブの方が多少面白かったのに。
445 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 23:45:21 ] タブブラウザを作りたくて、手始めにタブ表示を実装しようと ttp://www.kumei.ne.jp/c_lang/sdk3/sdk_206.htm を参考に作ってみたのですが、 ttp://www.dsnw.ne.jp/~yasushi/donutr.jpg のページ切り替え用タブのような、タブ同士の間にセパレータが 入った格好良いタブ表示にするにはどうしたらよいのでしょうか?
446 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 00:02:42 ] タブに普通にあるスタイルに見えるけど
447 名前:デフォルトの名無しさん [2007/07/03(火) 00:13:30 ] >>445 www.kumei.ne.jp/c_lang/sdk3/sdk_206.htm の先頭に > さらにこのプログラムではタブコントロールから TCS_EX_FLATSEPARATORSスタイルを取り除いて > タブとタブの境界線を描画しないようにしています。 と書いてあるけどこれとはまた別のこと?
448 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 00:31:40 ] >>446-447 dwStyle &= ~TCS_EX_FLATSEPARATORS; の行をコメントアウトしたらできました。 大変下らない質問でスレを汚してしまい、 申し訳ありませんでした。 ありがとうございました。
449 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 03:44:25 ] ちょっと待て。それかっこいいのか?
450 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 07:26:00 ] >>449 まあまあ、主観の話なんだからケチ付けない。