Win32API質問箱 Build47

このエントリーをはてなブックマークに追加
952デフォルトの名無しさん:2006/12/14(木) 01:26:52
>>948
sei.lpIDList
953デフォルトの名無しさん:2006/12/14(木) 01:28:38
>>917
WM_CLOSE、WM_COMMANDを拾えないのホント不便だよな。
954デフォルトの名無しさん:2006/12/14(木) 01:30:07
>>951
omanko.cppをよく見ろ

#if AGE <= SYOUGAKUSEI
#include "ochinchin.h"
#else
#error doutei ga yurusareru noha syougakusei made dayone
#endif
955デフォルトの名無しさん:2006/12/14(木) 09:05:51
SendMessage(GetDlgItem(hWnd,CTR_LIST),LB_ADDSTRING,0,(LPARAM)"TEST");
で、LISTBOXにアイテムを追加したいのですが、
Windowプロシージャの中に書かないとLISTBOXにアイテムが追加されません。
Windowプロシージャの外からはできないのでしょうか
956デフォルトの名無しさん:2006/12/14(木) 10:07:32
Windowプロシージャの外ってどこだ?
その場合ちゃんとウィンドウハンドルはとれてるのか?
957デフォルトの名無しさん:2006/12/14(木) 10:40:57
フロントエンドアプリを作りたいのですが、
コンソールアプリを実行して、コンソールに表示される文字列を拾ってくるには
どうやったらいいのでしょうか?
958デフォルトの名無しさん:2006/12/14(木) 11:01:53
>>957
パイプ
959デフォルトの名無しさん:2006/12/14(木) 13:48:22
ShellExecuteでホームページを
960デフォルトの名無しさん:2006/12/14(木) 13:51:34
その後>>959の姿を見た者は誰もいなk
961デフォルトの名無しさん:2006/12/14(木) 13:57:14
httpプロトコルに関連付けられたブラウザを調べるにはどうすればいいですか?
962デフォルトの名無しさん:2006/12/14(木) 13:59:43
>>961
>httpプロトコルに関連付けられたブラウザ
意味不明
963デフォルトの名無しさん:2006/12/14(木) 14:02:03
>>962
例えば
ShellExecute(NULL, "open", "http://www.google.co.jp/", NULL, NULL, SW_SHOWNORMAL)
ってやったら漏れの場合operaが開くんですが、
開く前にどのブラウザが関連付けられているか調べたいのです。
964デフォルトの名無しさん:2006/12/14(木) 14:10:32
>>963
HKEY_CLASSES_ROOT\http\shell\open\command
HKEY_CLASSES_ROOT\http\shell\open\ddeexec\Application

このへん
965デフォルトの名無しさん:2006/12/14(木) 14:21:38
>>964
ありがddd
966デフォルトの名無しさん:2006/12/14(木) 14:36:57
個人的にはFindExecutableの方が好み。

レジストリのHKEY_CLASSES_ROOT\http\shell\openとかいう部分は
95からvistaまで同じなんだろうか?
967デフォルトの名無しさん:2006/12/14(木) 14:46:36
>>966
それ、試してから言ってる?

ローカルの.htmlならそれでいけるだろうけどねー
968デフォルトの名無しさん:2006/12/14(木) 14:51:00
勘違いスマソ
969デフォルトの名無しさん:2006/12/14(木) 16:37:15
デフォルトのVerbがopenでない可能性もあるよね。
HKEY_CLASSES_ROOT\htmlfile\shellの既定の値も見ないと。
970デフォルトの名無しさん:2006/12/14(木) 16:39:21
間違えた。
HKEY_CLASSES_ROOT\HTTP\shellの既定の値。
971デフォルトの名無しさん:2006/12/14(木) 17:15:28
>>955
hWndが適切な値になってないだけとか。
972デフォルトの名無しさん:2006/12/14(木) 17:32:49
>>969-970
>>963は"open"と指定してるから既定値みる必要ないんでない?
973デフォルトの名無しさん:2006/12/14(木) 22:02:58
タブ付?リストボックスの作り方がいまいちよくわからないのですが
教えていただけませんか?

エクセルでいうなら一番上のA,B,Cとかいう選択できるタブみたいな奴なんですが
うまく言葉で表せれないorz
974973:2006/12/14(木) 22:19:08
975デフォルトの名無しさん:2006/12/14(木) 22:23:03
>>973
ListViewでググれ
976デフォルトの名無しさん:2006/12/14(木) 22:26:52
>>927
ヒント: ウィンドウステーションとデスクトップ
977973:2006/12/14(木) 22:30:33
>>975,976
うおおおおう!!
ありがとうごぜぇますだ!!!リストビューって名前だったのね
978610:2006/12/15(金) 00:22:48
>>976
ヒント:対話的?
979デフォルトの名無しさん:2006/12/15(金) 08:48:46
閉じたウィンドウの、ウィンドウハンドルの値って、他のウィンドウが生成される際に再利用されるんでしょうか?
というか、されると思うのですが、それって、直ぐに再利用の対象になるのでしょうか?それともずっと後になるのでしょうか?
980デフォルトの名無しさん:2006/12/15(金) 09:42:30
デバッガ持ってないの?
981デフォルトの名無しさん:2006/12/15(金) 10:54:23
>>979
システムによるし、そういうのを前提としたものを作ってはいけない
982デフォルトの名無しさん:2006/12/15(金) 14:59:13
MSDN見てたら

Microsoft is conducting an online survey to understand use of MSDN Online.
We’d like to see which pages you visit today and then have you complete a
survey when you leave MSDN Online. Would you like to participate?

ってウインドウが突然上から降りてきて死ぬほどびびった〜

ええかげんにせえよ心臓止まるかと
983デフォルトの名無しさん:2006/12/15(金) 15:14:07
メインウィンドウに貼り付けてあるリストボックスで、
項目がダブルクリックされたときにだけイベントを発生させるにはどうすればいいのでしょうか
984デフォルトの名無しさん:2006/12/15(金) 15:31:53
WM_COMMAND
LBN_DBLCLK
985デフォルトの名無しさん:2006/12/15(金) 15:41:42
>>984
case WM_COMMAND:
  switch(LOWORD(wParam)) {
    case .....
となっているのですが、switch(LOWORD(wParam)){
のcaseに
case LBN_DBLCLKを書くんですか?
それとも、case リスト:内にif文を書くんですか?
986デフォルトの名無しさん:2006/12/15(金) 15:50:32
987デフォルトの名無しさん:2006/12/15(金) 16:54:28
988デフォルトの名無しさん:2006/12/15(金) 17:19:58
ほんとにウィンドウ降ってきてワロタ

>>990
次スレよろしく
989デフォルトの名無しさん:2006/12/15(金) 17:20:37
駄目だ・・・・キレそう・・・プチッと。
990デフォルトの名無しさん:2006/12/15(金) 17:41:42
次スレ

Win32API質問箱 Build48
ttp://pc8.2ch.net/test/read.cgi/tech/1166172047/
991デフォルトの名無しさん:2006/12/15(金) 17:49:28
992979:2006/12/15(金) 17:51:29
>>980
デバッガなどで表示して、しばらく確認した感じだと、
うちの環境(XP SP2)では、再利用されているのは無かったんですが、
そのへんの仕様が知りたいなと思いまして・・・

>>981
ごもっともです。。
他プロセスのウィンドウを区別するのに、一番手軽なので、
ウィンドウハンドルをキーにしていたのですが、考え直そうと思います。
今後の参考に、「システムによる」の部分を教えていただけると嬉しいです。
993デフォルトの名無しさん:2006/12/15(金) 18:33:35
いつ128ビットモードで動くんだ?
994デフォルトの名無しさん:2006/12/15(金) 18:40:50
>>992
Win16とWin32でメモリ空間の扱いがかわったからね。
995デフォルトの名無しさん:2006/12/15(金) 20:16:18
>>992
GetWindowThreadProcessId()
ただしIDもプロセスが終了してすべてのハンドルが閉じられると再利用されるので
それが困る場合はプロセスハンドルを1つは開いておくように
996デフォルトの名無しさん:2006/12/15(金) 20:53:14
1000ならバグが3個減る。
997デフォルトの名無しさん:2006/12/15(金) 20:56:33
絶対無理。
998デフォルトの名無しさん:2006/12/15(金) 20:59:04
998ならバグがあと998,998個
999デフォルトの名無しさん:2006/12/15(金) 21:01:08
1000なら1ヶ月ぶりに休みが取れる…
1000デフォルトの名無しさん:2006/12/15(金) 21:07:22
if(line==1000)goto 次スレ
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。