トップページ⇒tech
1001コメント254KB

Win32API質問箱 Build63

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2008/03/04(火) 12:15:58
スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。
やさしいお兄さんやお姉さんたちが答えてくれるかも。

過去スレ、関連リンクは>>2-10くらい。

■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。英語版(http://msdn2.microsoft.com/library/)の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで

- Win32API質問箱 wiki
http://wiki.livedoor.jp/program1/d/FrontPage

【前スレ】
http://pc11.2ch.net/test/read.cgi/tech/1202060403/
0331デフォルトの名無しさん2008/03/15(土) 20:57:36
Dでないとダメ
0332デフォルトの名無しさん2008/03/15(土) 21:40:39
細かいなw
0333デフォルトの名無しさん2008/03/15(土) 21:52:43
>>328
見てて気持ち悪いw
0334デフォルトの名無しさん2008/03/16(日) 10:47:07
CreateCompatibleDC() に CreateCompatibleBitmap() を SelectObject() して
オフスクリーンで描画して、元のDCの BITMAP と切り替えるなんてことはOK?
BitBlt するより早くなると思うんだけど。

SelectObject() の説明に

「この関数は、指定されたのと同じタイプで、それまで選択されていたオブジェクトを返します。
アプリケーションは新しいオブジェクトを使い終えたら、必ず元の(既定)オブジェクトに置き換えるべきです。」

と書いてあるから駄目かな?
0335デフォルトの名無しさん2008/03/16(日) 10:52:10
やってみればわかるけど物凄く無駄な行為
0336デフォルトの名無しさん2008/03/16(日) 11:03:01
BitBltすればええやん
0337デフォルトの名無しさん2008/03/16(日) 11:09:14
>>334
ビットマップを選択できるのは、メモリDCだけ。
0338デフォルトの名無しさん2008/03/16(日) 11:51:21
>>334
DCを物凄く誤解してる。
DCがビットマップデータを持っているわけじゃないよ。
0339デフォルトの名無しさん2008/03/16(日) 21:22:16
>>334
ならないよ。
てかね、Windowsの製作者はお前さんより数段上だと思っときな。
そんなこた考慮済みで作ってんだよ。

ちなみにならない理由は物理的な問題なんでどうやっても回避不可よ。
OSの癖で多少の違いは出るかもだけど。
0340デフォルトの名無しさん2008/03/17(月) 01:03:01
ツリービューコントロールで、チェックボックスがチェックされたときに
その hItem ハンドルを取得するにはどうすればよいのでしょうか?
0341デフォルトの名無しさん2008/03/17(月) 01:23:50
>>340
How To Know When the User Clicks a Check Box in a TreeView Control
http://support.microsoft.com/kb/261289
0342デフォルトの名無しさん2008/03/17(月) 02:00:38
>>340
WM_NOTYFYを受け取ったら通知IDをチェックする
0343デフォルトの名無しさん2008/03/17(月) 02:33:36
>>341
そのサンプル、TVN_KEYDOWNへの応答が抜けてるし
Spaceキーを押してチェックマーク付けた時はスルーかよ
相変わらずいい加減だなぁ

そういや昔VirtualPC2004で設定ダイアログのリストビューを↑↓キーで行き来するとバグってたのを思い出した
最近は直ってるのかな。もう使ってないから知らんけど
0344デフォルトの名無しさん2008/03/17(月) 16:41:31
恥を忍んで質問させていただきます。
UNICODE文字がアルファベットか数値かなどを調べる方法が分かりません。
GetStringTypeWという関数を見つけたのですが、デバッグしてみたところ
第4引数のLPWARDに格納されたのは644という数値で16進表記でもC1_DIGITなどに
の定数の値に当てはまりません。教えてください。
お願いします。
0345デフォルトの名無しさん2008/03/17(月) 16:56:02
iswdigit と iswascii とかどうかな
0346デフォルトの名無しさん2008/03/17(月) 16:58:13
WideCharToMultiByteでASCIIに戻して文字コードを調べるとか
0347デフォルトの名無しさん2008/03/17(月) 16:59:00
>>345
早々とありがとうございます!
0348デフォルトの名無しさん2008/03/17(月) 16:59:15
ASCIIに戻さなくてもそのまま文字コード調べればいい
iswasciiの実装がそれ
0349デフォルトの名無しさん2008/03/17(月) 17:00:59
644=0x284=C1_DEFINED | C1_XDIGIT | C1_DIGIT
GetStringTypeWの説明ぐらい嫁
0350デフォルトの名無しさん2008/03/17(月) 17:02:08
>>346>>348
こんな関数が搭載されているとは思いませんでした。
mbstowcs_sとかUNICODE企画ってうざいですね。
0351デフォルトの名無しさん2008/03/17(月) 17:08:37
>>349
すみませんでした。たくさん定数あったんで読み逃してましたorz
0352デフォルトの名無しさん2008/03/17(月) 17:09:21
むしろ俺はMBCS捨てたいよ
まぁしばらく無理だけど
0353デフォルトの名無しさん2008/03/17(月) 17:10:40
>mbstowcs_sとかUNICODE企画ってうざいですね。
恥を忍んだ割には随分な物言いだな。
0354デフォルトの名無しさん2008/03/17(月) 17:12:51
お前らに言ったわけじゃないだろハゲタコが
0355デフォルトの名無しさん2008/03/17(月) 17:18:39
恥を忍んだというよりは、恥を晒したようだな。
0356デフォルトの名無しさん2008/03/17(月) 17:33:18
恥を忍んでるんだから、恥なのは判るってるだろユデダコが
03573402008/03/17(月) 17:34:26
>> 341 のサンプルを参考に、以下のようにしてみましたが...
lpnmh->idFrom の値が 0 になってしまいます? ちなみに BCC32 なのですが
分かる方いますか?

  case WM_NOTIFY:    /* TreeView control からの通知メッセージ */
    lpnmh = (LPNMHDR)lp;
    if((lpnmh->code == NM_CLICK) && (lpnmh->idFrom == IDC_MYTREEVIEW))
    {
      .
      .
      .
0358デフォルトの名無しさん2008/03/17(月) 17:42:00
>>356
だから、忍んでねぇじゃん。
0359デフォルトの名無しさん2008/03/17(月) 17:45:14
"晒した"に突っ込んでんだろタコ。恥は元々晒してんだよ。
0360デフォルトの名無しさん2008/03/17(月) 17:48:38
だから、恥を忍んでないんだから嘘を書くなよ。
0361デフォルトの名無しさん2008/03/17(月) 17:49:06
はいはい落ち着きたまえ
0362デフォルトの名無しさん2008/03/17(月) 17:57:46
>>357
IDC_MYTREEVIEWが0って落ちはないよね?
lpnmh->codeはちゃんとNM_CLICKになってる?
0363デフォルトの名無しさん2008/03/17(月) 19:01:30
>>357
バグのあるソースを参考にするのは(ry
0364デフォルトの名無しさん2008/03/17(月) 22:27:29
typedef std::map<std::string, std::vector<std::string>> > data;

なんでVC6は > を一個多く付けないと怒られるんだぜ?
VC7は普通にエラーと申しておるし、どういうことですか?
0365デフォルトの名無しさん2008/03/17(月) 22:29:35
スレタイを見て深呼吸
0366デフォルトの名無しさん2008/03/17(月) 22:31:12
>>365
すまん、>>363見てた。
0367デフォルトの名無しさん2008/03/17(月) 22:54:45
>>364
typedef std::map<std::string, std::vector<std::string> > data;とするとどう?
テンプレートを閉じるときには>>と書けない。>>という1つの字句と解釈されるから。
C++0xで改善されるみたいだけど。
0368デフォルトの名無しさん2008/03/17(月) 23:09:17
>>367
スレ違いに回答する阿呆はお帰りください。
0369デフォルトの名無しさん2008/03/17(月) 23:10:58

    _, ._
  ( ・ω・) now shibakaring ...
  ○={=}〇,
   |:::::::::\, ', ´
、、、、し 、、、(((.@)WWWWWWWWWWWWWWWWWWWWWWW (26%)
0370デフォルトの名無しさん2008/03/17(月) 23:12:26
>>369
激しくワロタ
0371デフォルトの名無しさん2008/03/17(月) 23:12:47
>>370
自演はお帰りください。
0372デフォルトの名無しさん2008/03/17(月) 23:13:40
お帰りなさいませ、ご主人様
0373デフォルトの名無しさん2008/03/17(月) 23:14:08
>>371
そうだよね。
0374デフォルトの名無しさん2008/03/17(月) 23:15:06
>>373
自演乙w
0375デフォルトの名無しさん2008/03/17(月) 23:15:13
>>371
だから帰ってきたのさ。このスレに。
0376デフォルトの名無しさん2008/03/17(月) 23:18:18
なにこれ
0377デフォルトの名無しさん2008/03/17(月) 23:19:22
>>376
これはね…


    お前を食べるためだぁ〜〜
0378デフォルトの名無しさん2008/03/17(月) 23:20:57
自演UZEEEEEEEEEEEEEEEEEEEEEEEEE
0379デフォルトの名無しさん2008/03/17(月) 23:22:47
>>378
激しく同意
0380デフォルトの名無しさん2008/03/17(月) 23:23:47
自演だと思われるから俺にレスつけるんじゃねえよ
0381デフォルトの名無しさん2008/03/17(月) 23:25:50
>>380
自演必死だなw
0382デフォルトの名無しさん2008/03/17(月) 23:27:50
以下日付が変わるまで書き込み禁止
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
0383デフォルトの名無しさん2008/03/18(火) 00:06:05
>>367
言ってみるものだ、地味に助かったわ。 �d
0384デフォルトの名無しさん2008/03/18(火) 00:47:42
>>383=>>364-383
解決できて良かったね^^
0385デフォルトの名無しさん2008/03/18(火) 00:52:49
自演 The End
0386デフォルトの名無しさん2008/03/18(火) 01:26:23
�dじゃねーよそんなのC++やってりゃ常識だろうが
軽口叩く前にベッドの中で入門書でも読んでろよこのHP3の雑魚グラマが
0387デフォルトの名無しさん2008/03/18(火) 01:29:50

           _, ._
          (・ω・ ) now shibakaring ...
          ○={=}〇,
           |:::::::::\, ', ´
wwwwww、、、、、、し 、、、(((.@)wwwwwwwwwwwwwwwwwwwwwww (19%)
0388デフォルトの名無しさん2008/03/18(火) 01:58:36
>>383
お前は俺か

俺も丁度コンパイルエラーで悩んでいた所だったから助かったよ。
0389デフォルトの名無しさん2008/03/18(火) 02:48:39
なにこの自演地獄

とレスすると自演だと思われる地獄
0390デフォルトの名無しさん2008/03/18(火) 02:51:17
いい加減自演うざい
0391デフォルトの名無しさん2008/03/18(火) 02:52:29
>>389
>>390
自演乙
0392デフォルトの名無しさん2008/03/18(火) 03:33:35
自演がキモイのでやめてもらえません?
0393デフォルトの名無しさん2008/03/18(火) 03:45:12
自演ど
0394デフォルトの名無しさん2008/03/18(火) 06:32:19
>>393
ワロタw
0395デフォルトの名無しさん2008/03/18(火) 06:49:31
>>393-394
>>385で相手にされなかったので今度は自演でフォローとは情けない
0396デフォルトの名無しさん2008/03/18(火) 09:21:58
ちんこ
0397デフォルトの名無しさん2008/03/18(火) 13:03:39
何書き込んでも自演になると聞いて飛んできました
0398デフォルトの名無しさん2008/03/18(火) 13:05:40
インプレースアクティベーションがさっぱり分からん。
クライアント側はどうやって実装すりゃ良いの?
0399デフォルトの名無しさん2008/03/18(火) 13:05:54
そうですかお帰りください
0400デフォルトの名無しさん2008/03/18(火) 14:31:11
パソコンの前でしかいきがることができない人がいるスレはここですか?
0401デフォルトの名無しさん2008/03/18(火) 15:25:21
超伸びてるなと思ったらなんだこれwww
0402デフォルトの名無しさん2008/03/18(火) 17:56:35
ダイアログに List ボックスを貼り付けて LB_ADDSTRING した場合
ダイアログ破棄時に LB_DELETESTRING しないと メモリーリーク
するのでしょうか?
0403デフォルトの名無しさん2008/03/18(火) 17:59:35
しない
0404デフォルトの名無しさん2008/03/18(火) 18:37:58
実は std;;string の文字列を
.c_str() で LB_ADDSTRING していると、メモリーリークするようです。
ダイアログ破棄時に、ちゃんと LB_DELETESTRING すると直るんです。
0405デフォルトの名無しさん2008/03/18(火) 19:28:55
>>404
:と;を間違えるぐらいだから他の部分でトチ狂った事してるんだろ
0406デフォルトの名無しさん2008/03/18(火) 22:42:27
>>400
「しかいきがる」って何?
そんな日本語ねーよ。
国 へ 帰 る ん だ な。 お 前 に も 家 族 が い る だ ろ う。
0407デフォルトの名無しさん2008/03/18(火) 22:45:12
>>406
司会気軽
鹿息がる
しか、粋がる
0408デフォルトの名無しさん2008/03/18(火) 22:46:31
つまらんレスしてる奴はVIPあたりに帰ってくれないか
0409デフォルトの名無しさん2008/03/18(火) 22:53:02
>>406
そんな品詞分解する日本人いねーよ。
国 へ 帰 る ん だ な。 お 前 に も 家 族 が い る だ ろ う。
0410デフォルトの名無しさん2008/03/18(火) 22:54:37
>>409
> お 前 に も 家 族 が い る だ ろ う。

いません… orz
0411デフォルトの名無しさん2008/03/18(火) 22:56:53
Win32APIがこの先生きのこるには
0412デフォルトの名無しさん2008/03/18(火) 23:14:25
ひらがなの句読点問題は十分認識されているから気にしないのだが
分かち書きしないハングルとか何故普通に読めるのかナゾ杉る
0413デフォルトの名無しさん2008/03/18(火) 23:16:51
How should Win32API mushroom this teacher?
0414デフォルトの名無しさん2008/03/18(火) 23:35:03
    _, ._
  ( ・ω・) now shibakaring ...
  ○={=}〇,
   |:::::::::\, ', ´
、、、、し 、、、(((.@)WWWWWWWWWWWWWWWWWWWWWWW (26%)
0415デフォルトの名無しさん2008/03/18(火) 23:38:19
now mowing
0416デフォルトの名無しさん2008/03/19(水) 00:07:41
おい、>>364以降ネタスレ化してるじゃねーか
責任取れ>>364
0417デフォルトの名無しさん2008/03/19(水) 00:09:15
>>412
実は普通に読めてないようだが。
つ 機能性文盲
0418デフォルトの名無しさん2008/03/19(水) 00:14:04
それは別の問題なんだよ
0419デフォルトの名無しさん2008/03/19(水) 01:37:02
>>412
ハングルは、日本語のカナと違って漢字一文字で一文字だからな。
勿論、同音異義語は山の数。
0420デフォルトの名無しさん2008/03/19(水) 01:48:34
じゃ別に漢字そのまま使ってりゃ良いじゃん
なんでわざわざ暗号化したんだろ?
0421デフォルトの名無しさん2008/03/19(水) 01:59:10
表音文字の方が覚える文字の数が少なくて済むからだよ。
仮名もアルファベットも同じ趣旨の元に生まれた文字。
0422デフォルトの名無しさん2008/03/19(水) 04:20:41
当時の愚民は漢字教育なんて受けられなかったからな。
419の言う様にそのまま置き換えたから、表音文字の癖に縦横に
組み合わせないといけないややこしい物になっちまってるが。
0423デフォルトの名無しさん2008/03/19(水) 07:03:45
3月18日 「自演は誰だ?」
3月19日 ハングル講座 -歴史編-

もはやWin32APIスレとは言えないな・・・
0424デフォルトの名無しさん2008/03/19(水) 07:44:38
ハングルはまぁ機能障害云々や簡略化した筈が一万文字出来たニダ等で問題外としても
カナ文字ってかなり変な仕組みな文字だと思わね?
0425デフォルトの名無しさん2008/03/19(水) 07:59:13
他所でやれ
0426デフォルトの名無しさん2008/03/19(水) 08:37:25
嫌です
0427デフォルトの名無しさん2008/03/19(水) 08:42:13
他所でやれ
0428デフォルトの名無しさん2008/03/19(水) 08:48:02
いい加減にしろ
0429三木支2008/03/19(水) 08:51:03
「ハングル」板へいらっしゃ〜い。
0430デフォルトの名無しさん2008/03/19(水) 09:31:34
SetRectとかCopyRectって何のためにあるんですか?
わざわざ専用の関数用意しなくてもいいような気がするんですが…
こういうのがあるってことは、できる限りこれらを使った方がいいんですか?
■ このスレッドは過去ログ倉庫に格納されています