- 1 名前:デフォルトの名無しさん [2008/04/02(水) 10:21:31 ]
- スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。 過去スレ、関連リンクは>>2-10くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版(msdn2.microsoft.com/library/)の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで - Win32API質問箱 wiki wiki.livedoor.jp/program1/d/FrontPage 【前スレ】 Win32API質問箱 Build63 pc11.2ch.net/test/read.cgi/tech/1204600558/
- 449 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 13:57:23 ]
- new とか別にいいだろ・・・。
- 450 名前:デフォルトの名無しさん [2008/04/12(土) 13:59:53 ]
- >>447
具体的に
- 451 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:00:44 ]
- グローバルで問題になるのは
他の翻訳単位内にある初期化の必要なグローバル変数に依存する 処理を記述する(初期化前に使ってしまうかもしれない)ってところだな。 逆に言えば、それさえしなけりゃ大した問題は無い。
- 452 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:02:23 ]
- >>449
newが投げた例外をmain関数でもcatchできないのはマズいだろう。
- 453 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:03:32 ]
- >>452
その場で catch して abort しろよ・・・。
- 454 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:04:17 ]
- どうせ abort するしかないんだから
catch できなくても大した問題ではない。
- 455 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:07:43 ]
- 元の発言の常識によれば、
static std::vector<int> hoge(100);もダメ、 struct Point { int x,y; Point(int x_, y_) : x(x_), y(y_) {}; }; で、 static Point ptZero(0,0); もダメか。 こんなのも全部シングルトンにすんのかw
- 456 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:08:58 ]
- スマン static は良いのか・・・
- 457 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:10:29 ]
- シングルトンは初期化のタイミングをずらしたグローバル変数に過ぎない。
少ないに越した事は無いが、利便性を考えると欲しい事はあるな。
- 458 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:17:58 ]
- NTFS以外のファイルシステムも使えるから保証はないよな。
- 459 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:27:17 ]
- まとめてC++スレに移動してくださいです。。。。
- 460 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:38:40 ]
- 本格的に邪魔
- 461 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 14:42:15 ]
- >その場で catch して abort しろよ
何そのグローバル変数で配置されることを前提の実装
- 462 名前:デフォルトの名無しさん [2008/04/12(土) 15:10:12 ]
- どうせ二人ぐらいが言い争ってるだけだろ
次はgotoネタか?
- 463 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 15:19:03 ]
- breakもcontinueもifもgotoの一種だよな
- 464 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 15:21:08 ]
- だ ま れ
- 465 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 15:37:42 ]
- い や だ
- 466 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 15:49:34 ]
- 死ね
- 467 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 16:40:08 ]
- 死 に た く な い
- 468 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 17:21:43 ]
- >462
2人ではなく病気の彼1人だろ
- 469 名前:デフォルトの名無しさん [2008/04/12(土) 17:59:32 ]
- 最近の自演は高度化してるな
- 470 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 18:03:34 ]
- 従順な奴隷のように、期待した通りの回答を得られないと
逆恨みしてスレに粘着して荒らすなんて、もうね。 プログラミングを勉強する前に、勉強すべきことがあるでしょうに。 ま、コミュニケーション能力が低いまま就職して、痛い目にあえばいいんだよ。
- 471 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 18:13:12 ]
- >>470
答えられない屑は黙ってろ
- 472 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 18:16:26 ]
-
- 473 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 18:17:04 ]
- >>470
知ったかで回答して周囲から叩かれたのをまだ根に持ってるようだな
- 474 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 18:39:19 ]
- どう考えても粘着しているのは「知らないならレスしないでください」と言われた回答者です。
本当にありがとうございました。
- 475 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 19:04:24 ]
- あなたの代わりにMSDNで調べてあげるスレ
ってのを作って分離しようよ
- 476 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 19:05:32 ]
- グローバル変数の話は↓のスレを再利用してやってくれ
sizeof(char)が必ず1でも、省略すべきではない pc11.2ch.net/test/read.cgi/tech/1187521586/
- 477 名前:デフォルトの名無しさん [2008/04/12(土) 19:37:18 ]
- >>475
お前がそのスレ立てろ、今すぐに(笑)
- 478 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 19:49:11 ]
- ピクチャーボックス再描画について質問です.
状況は次の通りで, 2.の消える問題を解決したいです. 1. 他のウインドウが重なっても, 重なっているウィンドウを移動させると 隠れていた部分が再描画される. 2. 他のウインドウが重なっていて, 重なっているウィンドウを終了させると 隠れていた部分が消える. やっている処理はこんな感じです. 1. 裏画面に表示データをセット → InvalidateRect 2. WM_PAINT処理では, BeginPaint → BitBlt → EndPaint 何をトリガーに再描画指示を出せばよいか, アドバイスお願いします.
- 479 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 20:18:22 ]
- >何をトリガーに
WM_PAINTじゃね? 最近(Vista)のアエロじゃ発生しないらしいけど
- 480 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 20:20:43 ]
- >>478
> 何をトリガーに再描画指示を出せばよいか その発想が間違ってる。 表示内容が変ったらOSに伝える 再描画タイミングはOSが判断する WM_PAINTが適切に送られてこない、あるいは、 BeginPaintで適切な領域が指示されないために、 正しく表示されないのであれば、 OSに不適切な値を渡していると思われる。
- 481 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 20:21:53 ]
- アエロ…………プクク(笑)
- 482 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 20:25:06 ]
- >>478
ウィンドウを内容を表示したまま移動 → WM_PAINTを何度も受け取るので多少失敗していても気がつかない だったりして。
- 483 名前:デフォルトの名無しさん [2008/04/12(土) 20:25:32 ]
- WM_PAINT以外にも描画しないといけないメッセージがあるけど、
それ関係ない?
- 484 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 20:32:13 ]
- NTFSのアクセス権チェック方法として、ACEを取得する必要があるのがわかったのだが、
自身の権限と取得されたACEの中で一番有効なACEと比較しなければならないとおもうのだが、 どのACEが有効となっているかの判断はどうすればよろしいでしょうか? ※関連:GetFileSecurity、GetSecurityDescriptorDacl
- 485 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 20:51:24 ]
- >>478
ピクチャーボックスってVBか.NETの事か? それともStaticコントロールをそう呼んでるのか? いずれにしろピクチャーボックスなんてコントロールはWin32には無い Staticコントロールに描画したいならSS_OWNERDRAWスタイルにしてWM_DRAWITEMに応答しとけ
- 486 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 21:05:37 ]
- なんかおまいらひまだな。。。。
最近ニュースで話題の学校裏サイト状態w でも、ほんとはここはWin32APIスレですよ。
- 487 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 21:06:34 ]
- >>481
Aeroをローマ字として読むとアエロになるから別におかしくないだろ 無知は黙ってろよ
- 488 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 21:33:26 ]
- Googleはゴーグルって読むんだよ
無知は黙ってろ Yahooはヤホーって読むんだよ 無知は黙ってろ gooはゴーって読むんだよ 無知は黙ってろ
- 489 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 21:34:19 ]
- 煽りも煽られもいらないっす
- 490 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 21:39:41 ]
- 自作アプリで状況に応じて、BS入力の可否を制御するプログラムを作ってるところで、
少し聞きたいことがありまつ。 Viewで処理前にWM_CHARをとらえて、それでBSおよびCtrl+BSを禁止する方向で BSの場合は、VK_BS(0x09)で検知できた。<= OK BS+Ctrlが捕えられなかったので調べると、wparamに0x7fが入ってた。 <= これが不思議 0x7fを調べるとVK_F16。まずF16なんて使ったことないしF16ってなんなの?押せるの? 0x7fって昔の記憶ではDELETEボタンだったなあと思いつつ、それとは何か関係ある? 0x7fで処理してしまえばそれでプログラム的にはOKなんだけど、 詳しい人もけっこういるので質問させて。
- 491 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 22:09:25 ]
- WM_CHARだと仮想キーコードではなく、
ASCIIとかの文字コードだと見なすべきだと思う。 そういう意味では0x7f = DELに1票。 VK_BACK = 0x09もASCIIではBSだし。 仮想キーコードが出てくるのはWM_KEYDOWN/UP系だよ。
- 492 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 22:11:27 ]
- あああ、そうだった。VKで処理しちゃだめだったね。
どうもありがとう!
- 493 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 22:18:03 ]
- 491さんにごめんなさいな追加カキコ。
VK_BS(0x09)って書いたけど、厳密には0x08でした。 ASCIIでももちろん0x08です。
- 494 名前:デフォルトの名無しさん mailto:sage [2008/04/12(土) 22:25:46 ]
- 質問
SetRectの存在意義がわかりません
|

|