- 1 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 09:56:18 ]
- スレ立てるまでもない、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質問箱 Build75 pc11.2ch.net/test/read.cgi/tech/1231423602/
- 196 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:41:13 ]
- >>174
自分が幸せになれんのに 他人が幸せになれるわけないじゃないか・・・・ チクショー
- 197 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 19:28:25 ]
- DDCAPS_ALPHAの対応マダァ-? (・∀・ )っ/凵⌒☆チンチン
- 198 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 20:27:36 ]
- 他の人が作成したdllを呼び出すプログラムを作成したんですが
あるdllをLoadLibrary()したらエラーリターンしてエラーコードが998(ERROR_NOACCESS)でした。 なのでdll作成側にDllMainのDLL_PROCESS_ATTACHでメモリ破壊してると、このエラーコードになると報告したのですが こっちでも呼び出し元に不備がないか調査して日々報告するように言われております。 呼び出し元の不備でこのエラーになるケースはどのようなものが考えらるでしょうか? 動作環境はXPのSP2です エラーになるdllがなにしてるかは不明で、そのdllをもらうこともできません
- 199 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 20:28:30 ]
- WH_GETMESSAGEにてのメッセージフックでWM_MOVEを検知して移動先の座標を得ようと
しているんですが、pt.x,pt.yにでたらめな座標が入ってしまいます。何故でしょうか? LRESULT CALLBACK HookProc(int nCode,WPARAM wParam,LPARAM lParam){ CWPSTRUCT *cwps; cwps=(CWPSTRUCT *)lParam; if(nCode<0) return CallNextHookEx(hMyHook,nCode,wParam,lParam);; if( nCode == HC_ACTION ){ if(cwps->message==WM_MOVE){ POINT pt; pt.x=LOWORD(cwps->lParam); pt.y=HIWORD(cwps->lParam); } } return CallNextHookEx(hMyHook,nCode,wParam,lParam); } あと同じようなので if(cwps->message==WM_WINDOWPOSCHANGED)LPWINDOWPOS pos=(LPWINDOWPOS)cwps->lParam; もpos->xとかにもでたらめな数字入ってしまう。 MSDNも何度も調べたし、色々な組み合わせを何時間もトライ&エラー繰り返してたんですが やっぱり分かりません。教えてください
- 200 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 20:31:28 ]
- >>198
LoadLibraryするだけの単純なプログラムを書いて渡すっていうのじゃダメなの? それともそれだけでは再現しないの?
- 201 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 20:35:32 ]
- >>199
マウス座標が cwps->hwnd が示す ウィンドウ相対だからとか?
- 202 名前:デフォルトの名無しさん [2009/02/06(金) 20:37:21 ]
- 符号なしの値を符号付きの変数に代入してこけてるとか?
- 203 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 20:45:14 ]
- >>199
WH_GETMESSAGEでかけたフックのコールバックのlParamはMSG構造体なんだが
- 204 名前:198 mailto:sage [2009/02/06(金) 20:47:13 ]
- >>200
>>198です。 エラーが発生する条件が不明でエラーの発生頻度もあまり多くないんです LoadLibrary()するだけのプログラムでも環境しだいでは再現するかもしれないんですが 再現するかもしれないから、ちょっと試してみてください、って言える関係じゃないんです
- 205 名前:デフォルトの名無しさん [2009/02/06(金) 20:50:20 ]
- どっかに不定が紛れ込んでいるに1000ペリカ
- 206 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 21:45:10 ]
- >>202
ありがとうございます。まったくその通りでした。 MSDNに「1 個の 構造体へのポインタ」としか書いてなかったからCWPSTRUCTでいいと思ってた 今後のために教えてください。そういうのってどこに書いてます? でも、これだとWM_MOVEが引っかからないから他のフックタイプ使うべきなのね
- 207 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 21:48:01 ]
- >>206
msdn.microsoft.com/en-us/library/ms644981(VS.85).aspx 確かに日本語ソースには「1 個の 構造体へのポインタを指定します。」とあるのなww こやつめハハハ
- 208 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:05:21 ]
- 英語の方には書いてあったのね。楽だからついつい日本語の方ばっかり見ちゃうけど
やっぱり英語の方も見たほうがいいですね
- 209 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:17:05 ]
- WH_CBTにしてHCBT_MOVESIZEを見るようにしたらいけました。
このまま教えてもらわなかったらまた何時間も悩み続けるところだったよ。ありがとう
- 210 名前:デフォルトの名無しさん [2009/02/07(土) 01:18:37 ]
- なるほど
ありがとうございました
- 211 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 04:18:34 ]
- wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
- 212 名前:211 mailto:sage [2009/02/07(土) 04:20:05 ]
- あ…スマン…Janeの裏技とか言うのみて試してたら書き込まれた(;´Д`)
- 213 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 07:18:02 ]
-
ヾヽヽ (´▽`) おっさんチュンチュン ミ_ノ ″″
- 214 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 07:28:09 ]
- 複雑だと思うならつかわなきゃいいんじゃねーの?
なんでアホはあるもの全部使わなきゃ気がすまねーの?
- 215 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 08:58:01 ]
- Before:
ttp://admins.fxdm.net/cmsware/resource/img/h000/h22/img200608041621414.jpg After: ttp://art3.photozou.jp/pub/921/204921/photo/14320292.png
- 216 名前:デフォルトの名無しさん [2009/02/07(土) 09:27:24 ]
- 質問です。
(A) ツリービューで↓を書くと TreeView_InsertItem(HWND hwndTV, LPTVINSERTSTRUCT lpis); BorlandC++ が ”警告 W8019 : コードは効果を持たない”と と吐くのですが、どういう意味なんでしょうか? (B) また、 SendMessage(hwndPB, PBM_SETRANGE, 0, MAKELPARAM(0,files_read)); と書くと ”警告 W8084 : 優先順位を明確にするためにカッコの使用を推奨” と吐きます。どう括弧をつければいいのでしょうか?
- 217 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 09:46:22 ]
- ttp://docs.codegear.com/docs/radstudio/radstudio2007/RS2007_helpupdates/HUpdate4/JA/html/devwin32/wrnnoop_xml.html
ttp://docs.codegear.com/docs/radstudio/radstudio2007/RS2007_helpupdates/HUpdate4/JA/html/devwin32/compile_wrnprecedence_xml.html あとはbccスレで聞け
- 218 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 10:48:40 ]
- まさか
TreeView_InsertItem(HWND hwndTV, LPTVINSERTSTRUCT lpis); ↓ TreeView_InsertItem(hwndTV, lpis); ってことじゃないよなw
- 219 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 11:27:08 ]
- GetDC BeginText
で得たhdcの値は変わることってありますか? あるとするならどんな時に変わりますか?
- 220 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 11:31:57 ]
- 確保しっぱなしにしようとしてるのかもしれんが
その使い方が間違い
- 221 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 12:37:17 ]
- 普通のウィンドウだと、DCはGetDC等が呼ばれた時にシステムから提供される。
毎回設定がリセットされるのはそのため。 Windows9x系だと、スレッド辺り5つまでしか貰えないから持ちっぱなしはあり得ない。 だがNT系なら多少メモリ喰う程度だけで済むので、今の時代なら構わないのかも。 まあ、CS_OWNDC付けとけばReleaseDCしても設定内容は維持されるから、 そっちを検討した方が良いとは思う。
- 222 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 13:18:49 ]
- MSDNの日本語版は構造体のページが作成されてないからリンクも貼れない
記述文の中の構造体名ごと一斉に消しちゃってるというやっつけ仕事 文中に「構造体」とあればその前に構造体名が省略されてると見るのが吉
- 223 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 14:26:04 ]
- ひでーぶー
- 224 名前:216 mailto:sage [2009/02/07(土) 14:51:27 ]
- >>217 サンクスコ。
>>218 ? 返り値を受け取ってないってことですか? SORTの属性付けてるので返り血は捨ててます。
- 225 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:04:40 ]
- hwndTVとlpisが実引数なら型の記述は要らないってことだろ
- 226 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:05:11 ]
- 関数の呼び出しと宣言がごっちゃになってるんじゃないかと言ってるんじゃ?
- 227 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:11:54 ]
- ありがとうございました
- 228 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:54:59 ]
- >>221
お!だからいちいち開放しなきゃいけなかったのか 今更だけど理解した
- 229 名前:デフォルトの名無しさん [2009/02/07(土) 18:11:32 ]
- あるチェックボックスをチェックを入れたら
別のチェックボックスのチェックを外すにはどうしたらいいですか?
- 230 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 18:14:29 ]
- BN_CLICKEDでも見張っててうんちゃらかんちゃらする
- 231 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 18:17:47 ]
- すなおにラジオボタンを使う
- 232 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:09:57 ]
- 全部のチェックが外れた状態も欲しいんです
(常に1個または0個選択)
- 233 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:14:41 ]
- ラジオボタンをチェックする関数の引数に、
チェックするボタンの ID として -1 を指定すれば 全部チェックが外れるよ。
- 234 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:34:45 ]
- ラジオボタンにしてdisable的な項目を増やせば解決するような単純なものではないって事かな
- 235 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:22:02 ]
- 押してチェックを外したいのであれば、
ラジオボタンに期待されてるような処理ではないので チェックボックスにした方がいいかもね。 チェックボックスにも CheckRadioButton 関数って使えるんだっけ?
- 236 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:47:33 ]
- リストボックスのアイテムをダブルクリックするには PostMessage を使うの?
- 237 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:39:59 ]
- いまさらだけどWindows7βで遊んだ。
Windows7のエクスプローラ、 とうとうSysListView32じゃなくなったな
- 238 名前:デフォルトの名無しさん [2009/02/08(日) 00:34:39 ]
- アイコンセットは少し気を遣うな
匹数に幼虫異です
- 239 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 03:32:09 ]
- >>237
な、なんだってー
- 240 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 08:40:47 ]
- >>236
Mouseを使います。
- 241 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 10:35:06 ]
- ありがとうございました
- 242 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 14:04:06 ]
- >>237
タスクバーがTabやToolbarじゃなくなってたのは確認した そろそろカスタマイズ系の常駐ソフトもお終いか?
- 243 名前:デフォルトの名無しさん [2009/02/08(日) 14:30:08 ]
- char tt[256];
byteOutPut=(BYTE)GetPrivateProfileInt(_T("test"),_T("valuets"),1,_T("test.ini")); wsprintf(tt,"%d",byteOutPut); MessageBox(NULL,tt,"チェック",MB_RTLREADING); test.ini [test] valuets = 7 としても、値が常に「1」がかえってしまいます。 test.iniに記載されている「7」を取得したいんですが・・。
- 244 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 14:33:19 ]
- 文字コードは〜?
- 245 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 14:34:14 ]
- >>243
説明は省くけどtest.iniをフルパス(C:\...\test.ini)で指定しても駄目かな?
- 246 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 14:36:14 ]
- >>243
ttp://msdn.microsoft.com/en-us/library/ms724345(VS.85).aspx >If this parameter does not contain a full path to the file, >the system searches for the file in the Windows directory.
- 247 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 15:36:42 ]
- >>243
こういう奴は大人しくレジストリ使っとけばいいのに……
- 248 名前:デフォルトの名無しさん [2009/02/08(日) 19:50:43 ]
- 文字コードは、マルチバイト文字セットを使用する にしています。
フルパスで指定してもダメです。 _Tをなくしてもダメです。。
- 249 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 20:09:46 ]
- >>246に答え書いてるのに……
>>245が解決法書いてるのに…… >>247が代替案まで出してるのに…… なにこの子?
- 250 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 20:11:54 ]
- もうだめだこのスレ
- 251 名前:デフォルトの名無しさん [2009/02/08(日) 20:14:11 ]
- 自己解決しますた。
- 252 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 20:37:04 ]
- どの辺りが自己解決なのか…?
事故解決の変換ミス?
- 253 名前:デフォルトの名無しさん [2009/02/08(日) 21:37:27 ]
- あなた方では役に立たないので他のサイトで教えてもらいました。
- 254 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 21:41:03 ]
- どの辺りが自己解決なのか…?
- 255 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 21:54:20 ]
- ×自己で解決
○自己を解決
- 256 名前:デフォルトの名無しさん [2009/02/08(日) 22:19:40 ]
- つーか性格悪い奴が多すぎだろ、ここ
- 257 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 22:33:13 ]
- >>256
例えばどのレス? 多すぎってからには10レスくらいすぐに安価出せるな?
- 258 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 22:42:45 ]
- このスレ限定でIDが欲しくなるな
- 259 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 22:45:14 ]
- ネットワークの回線の速度って
どう検出するのでしょうか? ラン内・ネットのロード量など。 また、よく、ダウンロードのインジケータなど 不思議に感じます。 APIで解決できるのでしょうか?
- 260 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 22:59:47 ]
- >>257
お前のような奴の事だよ。
- 261 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 23:03:01 ]
- >>259
速度=単位時間に流れるデータ量
- 262 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 23:05:10 ]
- >>259
パフォーマンスカウンタ カテゴリ名:Network Interface インスタンス名:有効なNIC カウンタ名:Received Bytes/Sec とか見れば
- 263 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 23:15:58 ]
- >>259
APIにこだわるなら IP Helper Functions あたり
- 264 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 23:17:17 ]
- >>260
予想の範疇のレスすんな。 そう突っ込まれるだろうから10レスくらい挙げてみろって加えたんだよ。
- 265 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 23:36:28 ]
- GetProcessHeap()で取得したヒープハンドルを利用していたら
いきなりハンドルの値が変わってHeapAllocで落ちました。 この現象に心当たりある方はいませんか?
- 266 名前:265 mailto:sage [2009/02/08(日) 23:41:06 ]
- 値を初期化すべきところに初期化してませんでした。
にらんだとおりオーバーフローだったみたいです
- 267 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 23:45:34 ]
- >>261
>>262 >>263 ありがとうございます。
- 268 名前:デフォルトの名無しさん [2009/02/09(月) 10:20:41 ]
- Windowsで一番簡単なディザ処理を行うにはどうすればいいですか?
- 269 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 11:03:21 ]
- 何に対して?
- 270 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 11:23:02 ]
- 向かいのタバコ屋の婆さんに対して
- 271 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 11:39:38 ]
- タバコ屋の婆ちゃん逃げて! ><;
- 272 名前:デフォルトの名無しさん [2009/02/09(月) 11:46:03 ]
- 32ビットビットマップに対して1ビット、4ビット、8ビットカラーへのディザ処理。
- 273 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 12:03:55 ]
- 悪いけどそんなもんない
- 274 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 12:06:06 ]
- settimer が killtimer されたのってどーやって検知すればいいですか?
- 275 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 12:07:39 ]
- もう一個タイマー作ってイベントが発生し続けてるかどうか見てれば
- 276 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 12:54:49 ]
- >>275
ありがとうございました。
- 277 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 13:01:46 ]
- ・・・KillTimer するのは自分じゃないのか?
- 278 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 13:05:49 ]
- そういう突っ込みは、野暮というものだよ
- 279 名前:デフォルトの名無しさん [2009/02/09(月) 22:02:44 ]
- → int i,j;
の様に「→」が表示されるようになってしまったんですが これをなおすにはどうしたらいいですか?「→」は青っぽいやじるしです
- 280 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:05:35 ]
- >>279
そのコードを書いているソフトのスレで聞きなさい。
- 281 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:06:09 ]
- エスパーさん、出番ですよ
- 282 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:06:36 ]
- 不定値のまま色使ってるとか。
- 283 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:12:06 ]
- >>279
→は改行文字が文字化けしてるんだろうね だとしたら文字コードの問題
- 284 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:14:48 ]
- そのエディタではタブが矢印で表示されるんだろ
>>280だな
- 285 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:46:47 ]
- 釣れた釣れた
- 286 名前:デフォルトの名無しさん [2009/02/09(月) 23:31:53 ]
- どんなネタでも必ず釣れるスレですね
- 287 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 23:36:18 ]
- そ・・・壮大な釣りだった。。。
- 288 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:09:47 ]
- 簡単に釣れるので、釣りの練習に使うといいよ
特に初心者の釣り師にオススメ
- 289 名前:デフォルトの名無しさん [2009/02/10(火) 01:13:17 ]
- ここで釣り釣り言ってるのは小学生かなんか?
釣りの意味分かってないんだろうね 「ぷろぐらみんぐ」は小学生にはまだむずかしいから、おとなしくおうちでかめんらいだーごっこやってな?
- 290 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:41:24 ]
- ここまで俺の自演
- 291 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 02:52:50 ]
- すっかりキチガイ坊やになつかれたな
どんな糞にも丁寧に罵声を浴びせた結果がこれだ
- 292 名前:デフォルトの名無しさん [2009/02/10(火) 03:42:52 ]
- 宿題スレでもマルチしてた香具師だな
- 293 名前:デフォルトの名無しさん [2009/02/10(火) 10:21:37 ]
- WM_CHAR他WM_IME_CHARから送られてきた文字をUTF-8に変換して保持し、ウィンドウ内に描画するには
WM_CHAR.WM_IME_CHAR ↓ 文字コード変換 ↓ ☆配列等へ保持 ↓ ☆から文字コード変換 ↓ ウィンドウ内に描画 しか方法はありませんか?
- 294 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 10:25:42 ]
- WM_CHAR時にはバッファに保存とInvalidateだけして後でまとめて描画だな
- 295 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 12:45:22 ]
- >>293
9xを捨ててUNICODEにしても良ければ、 WM_IMECHAR無視してWM_CHAR 1つでも困らないと思う。 もっと言えば、中でUTF-8にして保持するなら、WM_CHARよりも UTF-32でやってくるWM_UNICHAR 1つのほうがやりやすいはず。ただしXPからだけど。 それとIMM API関数などを使って変換文字列を取得するのとどっちがいいかは微妙なとこだが。
- 296 名前:デフォルトの名無しさん [2009/02/10(火) 14:17:39 ]
- MDIアプリで、フォーカスを持ってる子ウィンドウのハンドルを取得するにはどうすればよいでしょうか。
GetActiveWindow()、GetForegroundWindow()的なのがあるとありがたいのですが…
|

|