- 1 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 23:33:42 ]
- スレ立てるまでもない、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質問箱 Build65 pc11.2ch.net/test/read.cgi/tech/1208847084/
- 51 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 11:53:45 ]
- >>50
DrawMenuBarしてみた?
- 52 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 19:34:14 ]
- ホットキーとkeybd_event使ってJoyToKeyみたいなん作ってみたんだが
オンラインゲームではJoyToKeyみたいに発動しないんだ なんで?
- 53 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 19:46:21 ]
- keybd_eventは古臭いから使うなアホ。
SendInputでKEYEVENTF_SCANCODE使って送れ。 DirectInputでも使える。 //実は昔JoyToKeyを調べたことがあって、JoyToKeyはkeybd_eventを使っている。 //ドキュメント化されていないが、第二引数にスキャンコードを渡すと、 //SendInputでスキャンコードを渡したのと同じ動作をする。 //ただし、ドキュメントにない仕様だから絶対使うな。SendInputを使え。 酷いゲームは、チート防止機能と称して、ルートキットまがいのことをやっているがな。 まあそんなWindowsがバージョンアップしたら自爆するようなゲームは無視していいだろ。
- 54 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 20:05:11 ]
- ありがとう
別プログラムで、IEプロパティ内の「**削除」をキー操作でやらせてるんだけど 削除中もキー送信してしまう 削除処理が終わるまで待つのって可能?
- 55 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 20:46:29 ]
- ネイティブなSendMessageの方がよくね?
- 56 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 21:33:00 ]
- こんばんは。
テキストかバイナリのベクタデータを、 一エレメントを長方形にしてベクタを連続して表示させ、 かつエレメントの値を色で表現・表示したい(短期ゴール)のですが、 どのようにコーディングすれば、またどのような関数を使えばいいのでしょうか。 例: 8ビット幅のエレメントについて、これを8ビットグレースケールに対応させて、 0h0000 0h0001 0h0002 ...... 0hFFFF で256個のエレメントを256個のモノトーン長方形 □ . . . ■ で表示させたいのです。参考になるサイトや本をご存知でしたら教えていただけないでしょうか。 よろしくお願いいたします。
- 57 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 21:47:18 ]
- ベクタデータって具体的に何?truetype?
エレメントって何?ベクタデータを構成する部分曲線ってこと?
- 58 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 21:53:12 ]
- >ベクタデータって具体的に何
単なる値をエレメント、同じビット幅(レンジ)でその連続したデータをベクタといっています。 ベクトル演算とかのベクタです。 曲線データではなく、単なる値です。
- 59 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:08:49 ]
- わかった。間違い探しだな。
- 60 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:22:18 ]
- APIの質問なのか・・・
宿題スレに行った方がよくね?
- 61 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:24:36 ]
- SendInputの使い方msdn見てもわからんorz
サンプルplz
- 62 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:28:20 ]
- >>60
はじめそう思いましたが、上記は第一歩目ということで。。。 はじめは単なるプロットするだけですが、 それを最終的に各エレメント(要素)毎に操作できるようにしたいので、 よろしくお願いいたします。
- 63 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:34:47 ]
- 貴方の考えを反映できるのは貴方だけ
- 64 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:36:52 ]
- っていうか配列って言えばいいじゃん紛らわしい
SetPixelでも使えばいいよ
- 65 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:41:35 ]
- SetPixelは遅い
- 66 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:43:55 ]
- 第一歩目なら遅くても問題ないだろ
- 67 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:49:37 ]
- >>61
MSDNを読め。構造体と共用体を深く学べ。 ここでサンプルを与えてしまうのはためにならん。 実際、それほど難しくない。 戸惑うとしたら、Cの知識が十分ではない場合だけだ。 スキャンコードはMapVirtualKeyで取得できる。
- 68 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 22:57:00 ]
- >>67
SendInputが宣言されてるヘッダ見た →構造体とさらにunionが使われてるのを知る →それらの値を設定 →キーストローク設定 →SendInput呼び出しでストローク実行 INPUT name[N]; SendInput(N, name, sizeof(name)); ありがと、なんとかなりそう
- 69 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 23:11:32 ]
- すみません、ハード屋なのでベクタといってしまいます。
SetPixelですか。調べてみます。最低数千の長方形(内側色付き)をプロットすることになるのですが、 その遅さはネックにならないでしょうか。 正直遅いと聞いたら使う気にはなれませんが・・・。
- 70 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 23:25:30 ]
- 名無しには要件の詳細なんぞわからんのですよ
- 71 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 23:28:51 ]
- だったら、メモリ上にDIB(聞いたことない言葉ならBMPのことだと思え)を
作ってそれを描画するって形にすればいい。
- 72 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 23:45:48 ]
- 仕事ならこんな所で聞くなよ
- 73 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 23:57:47 ]
- こんなんやってみたけど無理だったorz 1/2
#include<stdio.h> #include<windows.h> #define NUMBER 2 int main(void) { int i; MSG msg; INPUT SendKey[NUMBER]; for(i=0;i<NUMBER;i++) { SendKey[i].type = INPUT_KEYBOARD; SendKey[i].ki.wVk = 'A'; SendKey[i].ki.wScan = MapVirtualKey('A', 0); if(i == 0) { SendKey[i].ki.dwFlags = 0; } else { SendKey[i].ki.dwFlags = KEYEVENTF_KEYUP; } SendKey[i].ki.time = 0; SendKey[i].ki.dwExtraInfo = 0; } RegisterHotKey(NULL,0,NULL,'B'); RegisterHotKey(NULL,1,NULL,'A'); while(0<GetMessage(&msg,NULL,0,0)) {
- 74 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 23:58:36 ]
- 2/2
switch(msg.message) { case WM_HOTKEY: switch(msg.wParam) { case 0: i=SendInput(NUMBER, SendKey,sizeof(SendKey)); printf("B %d\n",i); break; case 1: puts("A"); i=1; break; } break; } if(i==1) break; } UnregisterHotKey(NULL,0); UnregisterHotKey(NULL,1); return 0; } SendInputが0を返してしまう、なんで?
- 75 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:07:13 ]
- ソース貼るな馬鹿
どこかにうpしろ
- 76 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:13:05 ]
- じゃあテンプレにソース貼るなって入れろよ
なんであかんのかkwsk
- 77 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:17:40 ]
- 知らないならレスしないでください
- 78 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:21:21 ]
- とりあえず変数の使い回しは止めようよ
バグが怖いから
- 79 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:23:31 ]
- 世の中にはソースコードを貼り付けられる、無料のWebアプリがたくさんあってだな。
dwFlagsにKEYEVENTF_SCANCODEを忘れている。
- 80 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:27:10 ]
- 貼るにしても最小コードにして貰いたいものだ
- 81 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:30:43 ]
- そうすると、そこだけ張られても分からねえってなる予感。
話逸らしてすまんが。
- 82 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:38:37 ]
- 回答以外のレスは不要です
- 83 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 00:57:35 ]
- >>74
puts("A"); ↑ なにこの顔、ふざけてるの!?
- 84 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 01:03:12 ]
- >>83
ちょwww
- 85 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 01:18:35 ]
- >>83
不覚にもワロスwwwwwwwwwwwwwwwww
- 86 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 02:44:45 ]
- while('A') { }
- 87 名前:74 mailto:sage [2008/05/17(土) 02:55:03 ]
- >>75
ごめん次から気をつける >>78 わかった、この場合は大丈夫と思って >>79 ありがとう >>80,81 悩んだ
- 88 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 03:16:08 ]
- 'A'
'c' 'o' '-' こういうのが顔文字に見えないようなフォント誰か教えてくれ
- 89 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 04:05:01 ]
- いっそのこと歌舞伎にしか見えないフォントとか
- 90 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 04:06:34 ]
- 馬鹿にしか見えない文字?
- 91 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 07:20:14 ]
- ボタンとかリストビューとかのコントロールで、
Set/GetWindowLongPtr を使って GWLP_USERDATA をいじってよいのでしょうか? MSDNには一応 「This data is intended for use by the application that created the window.」 と書いてあるのですが、WM_USERと同じで使っちゃいかんと言う人もいるみたいで……
- 92 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 07:36:55 ]
- 気になるならSetProp/GetPropを使えばいい
サブクラスならSetWindowSubclassが安全
- 93 名前:91 mailto:sage [2008/05/17(土) 11:43:21 ]
- >>92
ありがとうございます SetPropを使ってみます
- 94 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 16:56:51 ]
- SendInput使ってコマンド登録してもオンラインゲームでは発動しなかったorz
- 95 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 17:02:25 ]
- だまれ
- 96 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 17:15:26 ]
- だからSendInputなんて使わないでSendMessage使えよって話
- 97 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 17:23:47 ]
- >>96
ありがと 次それやってみる
- 98 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 17:36:28 ]
- 結局BOTかよ芯でこい
- 99 名前:94 mailto:sage [2008/05/17(土) 18:11:43 ]
- 別にいいんじゃね?「使う事」より「作る過程」の方が
楽しいと思えるならBOTでもなんでもいいと思うんだがな。(勉強という意味で) 実際俺がそうだったわけだしフック、APIフック、逆汗は そういった「目的」があったからこそ覚えたわけで。 まあ、全てが俺みたいな考え方してるわけじゃないし、 やる上でどう感じるかは人それぞれか。
- 100 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 18:14:49 ]
- 明確にBOTだと言い切ってしまうとローカルルールに触れるかもしれない。
ま、俺はどうでもいいがね。
- 101 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 18:16:15 ]
- >>99
アンカミス?
- 102 名前:96 mailto:sage [2008/05/17(土) 18:24:05 ]
- >>101
ミスってた 94× 96○
- 103 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 19:43:46 ]
- オンラインゲームではなぜ反応しないのか
どうやれあ反応するのか これに興味持ったからやってるだけだよ JoyToKey+PPJoyじゃないとうまく動作しないのも関係あるんかな
- 104 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 19:44:59 ]
- >どうやれあ ×
>どうやれば ○ ホットキーしてたかB認識しなかった
- 105 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 19:48:02 ]
- 俺なら例え知ってても教えないわ
- 106 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 19:54:20 ]
- たまに独り言言うウザイ奴沸くけどスレに貼りついてるんか?
当事者以外にも不快感与えるから独り言は書き込むなよ 精神年齢幼いの曝け出してるようなもんだぞ
- 107 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 19:58:01 ]
- うわ、あのキ●ガイが質問してたのか
- 108 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 20:09:05 ]
- >>86
それ今度から使うわw
- 109 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 21:30:23 ]
- >>106
それが独り言
- 110 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:34:32 ]
- >>106は独り言ではない
>>109が独り言
- 111 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:36:21 ]
- >>110
という独り言ですね。 わかります。
- 112 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:37:12 ]
- ここまで俺の独り言
- 113 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:45:46 ]
- 指定したウィンドウを不可視状態にする(最小化ではなく、タスクバーからも消える)関数って作れますか?
- 114 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:47:17 ]
- >>113
簡単に出来るよ。
- 115 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:48:16 ]
- とりあえずこれでも実行してストレス溜めろ
while('A'){ BlocInput(TRUE); Sleep(500); BlocInput(FALSE); Sleep(500); }
- 116 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 22:59:33 ]
- >>113
MSがだいぶ前にそれ作ってるよ
- 117 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 23:08:07 ]
- >>113
ShowWindow(hwnd, SW_HIDE); >>115 BlocInput(笑)
- 118 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 23:59:20 ]
- BlocInputは引数に笑も取れるのか
- 119 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 00:04:33 ]
- >>109-111
ワロスwwwwwwwwwwwwwwwwwwwwwwwww
- 120 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 00:10:44 ]
- お前らそんなしょうもない事してる暇あるなら
社会に貢献するようなソース書けよ
- 121 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 00:30:18 ]
- >>120
ExitWindowsEx(EWX_SHUTDOWN, 0); 実行すると自動でPCをシャットダウンしCO2削減に貢献 (SeShutdownPrivilegeの取得等は省略)
- 122 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 01:01:58 ]
- 指定されたフォルダ内のファイルが作成、削除、更新されたら
そのファイルの名称等を知りたい。 検索してみたところ、ReadDirectoryChangesW() や SHChangeNotifyRegisterあたりを使えば良さそうな感じ。 winXP+vb6.0でもいけるだろうか?
- 123 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 01:38:25 ]
- ためしてみればわかるだろうか?
- 124 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 01:58:06 ]
- ためしていただけないだろうか?
- 125 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 02:41:22 ]
- ( ゚ω゚ ) お断りします
- 126 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 04:24:08 ]
- >>120
TerminateThread( pc11.2ch.net/test/read.cgi/tech/1210775622/ );
- 127 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 04:40:24 ]
- >>126
コンパイルエラー: 引数が足りません
- 128 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 11:34:43 ]
- おまいら好きだwwwwwwwwwwwwwwwww
- 129 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 13:50:13 ]
- VIP臭いんだけど
- 130 名前:デフォルトの名無しさん [2008/05/18(日) 13:53:22 ]
- お前がな
- 131 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 14:50:29 ]
- ふうん
- 132 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 17:24:37 ]
- AbornThread( "pc11.2ch.net", "tech", "1210775622.dat" );
- 133 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 18:57:10 ]
- タスクバーとスタートメニューのプロパティってどうやれば開ける?
コンパネからショートカット引っ張り出して.lnkアクセスするしかない?
- 134 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 19:05:51 ]
- すみませんDCOMについて質問させてください。
リモートPCのCOMを呼び出す簡単なコードを作成したんですが、 思ったように動いてくれませんでした。 CoCreateInstanceEx()にリモートPCのIPを渡してやるんですが この関数から戻ってくるのに時間がかかって失敗します。 ためしにローカルのIPを渡してやると成功するんですが。 以下にソースを記載します。 どこかおかしなところがないか教えていただけないでしょうか。 ::CoInitialize(NULL); COSERVERINFO serverInfo = { 0, "192.168.1.2", NULL, 0 }; MULTI_QI qi = { &__uuidof(ITest), NULL, S_OK }; HRESULT hr = CoCreateInstanceEx( __uuidof(Test), NULL, CLSCTX_REMOTE_SERVER, &serverInfo, 1, &qi); ITestPtr p; p.Attach(reinterpret_cast<ITest*>(qi.pItf)); p->func(); p = NULL; ::CoUninitialize();
- 135 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 19:13:00 ]
- >>133
Shell32.Shell.TrayProperties
- 136 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 19:34:42 ]
- >>134
サーバ側の用意ができていないんじゃね? 時間がかかって失敗といえば、たいてい接続のタイムアウトだし。 サーバ側のDCOM関連の設定を見直しだな。
- 137 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 19:38:46 ]
- それじゃ使い方わからんと思うけど
- 138 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 19:49:24 ]
- DCOM関連の設定というのがあるんですか。
そのあたりの詳しいやり方が説明されてるサイトとか知りませんか?
- 139 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 20:12:11 ]
- dcomcnfg
- 140 名前:デフォルトの名無しさん [2008/05/18(日) 20:59:40 ]
- Vistaで追加されたBeginBufferedPaint等のAPIって何のために使うんでしょうか?
MSDNで探してもリファレンスは見つかるけど これを使う目的やメリットがわからなくて・・・・
- 141 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 21:03:32 ]
- >>133
START shell:::{0DF44EAA-FF21-4412-828E-260A8728E7F1}
- 142 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 22:32:40 ]
- >>140
多分GDIがソフトウェアレンダラになったから、これまでみたいにGDIだけで同じ事をすると XPより重くなるので専用のAPIを用意して誤魔化したのだと予想
- 143 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 22:50:05 ]
- >>140
自動ダブルバッファリングみたいな感じ? Vistaだとパフォーマンス上げるのに必須だから、楽に使えるAPIを用意した、ってところかな。 一通り目を通してみたが、Animation系は結構使えそうだ。
- 144 名前:140 mailto:sage [2008/05/18(日) 23:56:23 ]
- >>142,143
一応使ってみた感じだと画像がちらつかないのでダブルバッファリング用のAPIだと思うのだけど、 今までのようなメモリDCを使わずに、専用のAPIを用意した、という認識でいいのかどうかちょっと不安。 メモリDC使うのと大して手間はかからないような気がしないでもない。 Alpha値セット用のBufferedPaintSetAlphaとかも用意されてるみたいだけど。 こういう時に使うと便利!っていう説明が欲しいなぁ。
- 145 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 00:01:15 ]
- >>143>>144
従来の方法(CreateCompatibleBitmapで作ったDDBに描画してからBitBltする)だと XP以前のDDBは大抵VRAM上に確保されてVGAの恩恵を得られたが、Vistaではそうは行かなくなったので その辺を解決する専用APIを用意したのじゃないかと
- 146 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 13:35:23 ]
- >>145
なるほどね。 Animation系のも使ってみた。 アニメーションの前後のDCを一度のAPI呼び出しで取得できるんだ。 実際に描画してみたら軽いフェードアウト効果?みたいなぼわっとした残像も描画された。 VistaっぽいちゃぁVistaっぽいな。
- 147 名前:デフォルトの名無しさん [2008/05/19(月) 23:22:49 ]
- SetWindowsHookEx して注入したDLL内でCOMコンポーネントを使いたいのですが、
CoInitialize / CoUninitialize しても大丈夫なのでしょうか? 注入先のプロセス内ですでに呼ばれていたらまずそうな気がします。
- 148 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 23:31:09 ]
- それらの関数は、上手くネストするように同じ回数だけ呼べば問題ない。
全く問題ないわけではないけど。
- 149 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 23:36:03 ]
- ListViewで選択したリストが青くなってわかりやすくなるけどそのウィンドウがフォーカスを失うとき(Tab押下、windowsボタン押下など)灰色になるのですが、
これがフォーカスを失っても青のままにしたいのですがどのようにすればよいのでしょうか? 普通のWM_NOTIFYではフォーカスを失ったときブレークポイントにかからなくて、 WM_ACTIVATEではNMHDR構造体がなくてカスタムドローできません。 いい方法があったらご教授願います。
- 150 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 23:58:14 ]
- 別スレッドのキャレットを変更したいと思い
GetGUIThreadInfo(GetWindowThreadProcessId(NULL, &fwid), >info); HideCaret(gtinfo.hwndCaret); CreateCaret(gtinfo.hwndCaret, NULL, widht, height); ShowCaret(gtinfo.hwndCaret); とやってみましたが上手くいきません、 hwndCaretまでは取れいるようだし、 自プロセスであれば変更されます。 何が間違えているのか教えてください。 やはり、いくつかあるキャレット変更ソフトのように DLLをフックさせなければ無利なのでしょうか?
- 151 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 00:28:13 ]
- 全然知らんから適当だが、
別スレッドのUIを操作するのは無理だと思う
|

|