■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
Win32API質問箱 Build21
251
名前:
デフォルトの名無しさん
:04/07/28 23:07
TLS使われるのが嫌とか?
252
名前:
デフォルトの名無しさん
:04/07/28 23:24
errno なんか使わないし、なんとか一つ API だけで許してもらえまいか、
というようなことでは。
253
名前:
デフォルトの名無しさん
:04/07/28 23:28
msvcrt.lib や libcmt.lib をリンクせずに
全て自前でやってるなら許す。
254
名前:
デフォルトの名無しさん
:04/07/28 23:30
やった。そのときはCreateThread使った。
255
名前:
デフォルトの名無しさん
:04/07/28 23:49
作成したワーカスレッドでは CoTaskMemAlloc で頑張るので、許しては貰えまいか。
256
名前:
デフォルトの名無しさん
:04/07/29 00:36
ランタイムライブラリ使わないのが俺のポリシー。
システムコール直叩き最高。
257
名前:
デフォルトの名無しさん
:04/07/29 00:44
APIをランタイムライブラリだと勘違いしてる馬鹿がいるスレはここですか?
258
名前:
デフォルトの名無しさん
:04/07/29 00:44
ランタイムライブラリを呼び出すインターフェイスと考えて差し支えなかろう
259
名前:
デフォルトの名無しさん
:04/07/29 00:45
CreateThread()は、マルチスレド用ライブラリとシングルスレド用ライブラリの両方に入ってますか?
260
名前:
デフォルトの名無しさん
:04/07/29 00:53
>>259
どちらにも入っていません。
261
名前:
デフォルトの名無しさん
:04/07/29 02:29
なんかどうでもいい話になっているな
262
名前:
デフォルトの名無しさん
:04/07/29 02:49
あたぼうよ
263
名前:
デフォルトの名無しさん
:04/07/29 07:23
CreateDesktopとは何の為にあるんでしょうか?
どのように使うのか教えてください
264
名前:
デフォルトの名無しさん
:04/07/29 08:17
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpwinui/html/_win32_CreateDesktop.asp
http://www.google.com/search?num=50&lr=lang_ja&q=CreateDesktop
265
名前:
デフォルトの名無しさん
:04/07/29 08:37
>>264
両方見ましたが
どういう風に使うのか書いてる物を探すのが困難なので訊きました。
一つの関数内でささっと終わらせるサンプルばかりで
関数をまたがって処理するサンプルがありません。
なので、どういう風な事をどういう風にするかサンプルだけでもください
266
名前:
デフォルトの名無しさん
:04/07/29 08:42
おい、お前。死ねよ
267
名前:
デフォルトの名無しさん
:04/07/29 10:15
Shell32.dll内の-31751番目の文字列らしき物を取得しようと思い
hModule = LoadLibrary("C:\\Windows\\system32\\Shell32.dll");
とやり
LoadString (hModule, -31751, Buffer, 64);
とやったのですが
何も返ってきません
このShell32.dllの-31751番目はどうやって得たかと云うと
レジストリをinfotextと検索して(既定)がマイ コンピュータのinfotextに入ってる数字です。
どうしたらこの文字列らしきものを取得できますか?
268
名前:
デフォルトの名無しさん
:04/07/29 11:13
>>267
hModuleはちゃんと有効な値を示しているのか?
っていうかロードタイムリンクしてあるからNULLが帰ってるんじゃないのか?
269
名前:
デフォルトの名無しさん
:04/07/29 11:51
>>267
NT系だとdllのパスが違うが大丈夫か?
LoadLibrary, LoadStringの戻り値確認はしたんだろうな?
270
名前:
デフォルトの名無しさん
:04/07/29 12:02
>>268-269
LoadLibraryはhModuleに格納してるので
if (NULL == hModule)〜と確認してましたが
LoadStringは確認してませんでした。
今やってみたら、LoadStringの戻り値もNULLでした
271
名前:
デフォルトの名無しさん
:04/07/29 12:15
>>270
Shell32.dll 開いてみたけど、そんな ID の文字列無いよ・・・?
272
名前:
デフォルトの名無しさん
:04/07/29 12:19
>>271
文字列じゃないみたいですね…
レジストリの名前がinfotextだったから文字列かと思ったんですが違うようですね。
失礼しました
273
名前:
デフォルトの名無しさん
:04/07/29 12:22
つうか、
> このShell32.dllの-31751番目はどうやって得たかと云うと
> レジストリをinfotextと検索して(既定)がマイ コンピュータのinfotextに入ってる数字です。
> どうしたらこの文字列らしきものを取得できますか?
ここの意味がまったくわからん。
LoadString以前の問題じゃないのか?
274
名前:
デフォルトの名無しさん
:04/07/29 19:03
CreateDialogで4つ目の引数にはダイアログボックスプロシージャへのポインタですよね?
LRESULT CALLBACK DlgProc(HWND , UINT , WPARAM , LPARAM );
こう宣言してるものだと、
CreateDialog(hInst,MAKEINTRESOURCE(IDD_DIALOG1),0,DlgProc);
こういう感じで呼び出せばよいのですよね?
error C2664: 'CreateDialogParamA' : 4 番目の引数を 'long (struct HWND__ *,unsigned int,unsigned int,long)' から
'int (__stdcall *)(struct HWND__ *,unsigned int,unsigned int,long)' に変換できません。 (新しい機能 ; ヘルプを参照)
スコープ内でこの名前を持つ関数でターゲット型に一致するものはありません。
と、エラーが出てしまいます。どうすればよいのですか?
275
名前:
デフォルトの名無しさん
:04/07/29 19:18
ダイアログの場合は
LRESULTでなくてBOOLです。
宣言の部分を
LRESULT CALLBACK DlgProc(HWND , UINT , WPARAM , LPARAM );
↓
BOOL CALLBACK DlgProc(HWND , UINT , WPARAM , LPARAM );
と直してみてください
276
名前:
デフォルトの名無しさん
:04/07/29 19:22
自己解決しました
277
名前:
デフォルトの名無しさん
:04/07/29 19:33
>>275
だめでした。
というか、サンプル落としてきて、それはコンパイルできるのに、
それ真似て一から作るとエラーがでるんです。
落としてきたサンプルはwin工作部屋のダイアログベースアプリのとこです。
278
名前:
デフォルトの名無しさん
:04/07/29 19:37
>>277
プロトタイプの方を実際に関数の方の両方の宣言を変更してみた?
279
名前:
デフォルトの名無しさん
:04/07/29 20:30
もしやと思って、拡張子cppだったのをcにしたら動きました。
というか、これじゃ解決になってないですよね…。
280
名前:
デフォルトの名無しさん
:04/07/29 20:33
なってる。
281
名前:
デフォルトの名無しさん
:04/07/29 20:39
書き込んで気づいたんですが、型変換ですね。
探したら(DLGPROC)というのがありました。
282
名前:
デフォルトの名無しさん
:04/07/29 22:28
Windowsの電源を切るにはどうしたらいいですか?
普通にやるとPCの電源まで切れてしまいます。
283
名前:
デフォルトの名無しさん
:04/07/29 22:31
ログオフってこと?
284
名前:
デフォルトの名無しさん
:04/07/29 22:32
原理の分かってない奴はゴタク並べてないで素直に(DLGPROC)使えっての。
議論・討論したきゃ↓へ行け。いくらでも相手してやる。
http://pc5.2ch.net/test/read.cgi/tech/1049790146/
285
名前:
デフォルトの名無しさん
:04/07/29 22:32
まずはWindowsに電源サブシステムを実装しろ
286
名前:
デフォルトの名無しさん
:04/07/29 22:48
>>282
Windowsの電源OFF と PCの電源OFF
何がどう違のか、どうしたいのかを述べてくれ。
287
名前:
デフォルトの名無しさん
:04/07/29 22:52
>PCの電源を切らずにWindowsの電源を切る
while(true{
GetDC((HWND)1);
}
288
名前:
デフォルトの名無しさん
:04/07/29 23:02
Windows 3.1までのDOSだけ状態へ戻るとかを想像した。
289
名前:
デフォルトの名無しさん
:04/07/29 23:17
>>282
SetSystemPowerState
290
名前:
デフォルトの名無しさん
:04/07/30 00:21
>>288
解読キボン
291
名前:
デフォルトの名無しさん
:04/07/30 00:22
昔はWindowsを終了してDOSに降りるコマンドがあったんだよ
292
名前:
デフォルトの名無しさん
:04/07/30 00:43
A:\>win
293
名前:
デフォルトの名無しさん
:04/07/30 02:17
ウインドウを作成した後でオーナーを変更する事は出来ますか?
294
名前:
デフォルトの名無しさん
:04/07/30 02:47
ふぁっきゅー
295
名前:
デフォルトの名無しさん
:04/07/30 02:52
>>293
SetWindowLong(GWL_HWNDPARENT)で一応できることはできるが
MSDNにはするなと書かれているのでどうなっても知らん
296
名前:
デフォルトの名無しさん
:04/07/30 02:52
SetConsoleCtrlHandler関数で設定したシグナルハンドラがCTRL_C_EVENTを受信する場合と、
signal関数で設定したシグナルハンドラがSIGINTを受信するのは
同じ意味でしょうか?両方設定した場合はどちらが有効でしょうか?
297
名前:
デフォルトの名無しさん
:04/07/30 02:56
>>295
Zオーダーとかがめちゃくちゃになるらしい
298
名前:
デフォルトの名無しさん
:04/07/30 07:01
>>295
ぬー,微妙ですね.
変更は初めの一度だけなんで作り直す事にします.
299
名前:
デフォルトの名無しさん
:04/07/30 07:47
>>293
SetParent
300
名前:
デフォルトの名無しさん
:04/07/30 10:58
画像編集ツールを作っているのですが、
どうもグリッドライン表示するのにてこずってます。(デバイスコンテキストがいまいち理解出来てない)
HDCを二つ取得するんだろうけれど、実際にどういう流れになるかがよく分かりません。
それと、背景となる画像についてはデバイスコンテキストハンドルを開いてる間はずっと開放しないのでしょうか。
概略でもいいので、助言していただけると助かります。。
301
名前:
デフォルトの名無しさん
:04/07/30 11:02
勉強しろとしか言いようが無い。
302
名前:
デフォルトの名無しさん
:04/07/30 11:38
>>300
301のとおり。「猫でも分かる」サイトでも見て自分でやれ。
それだけでもあんまりなのでひとつだけ言っておくと、DCは画面描画を行うときに一時的に借りてくるものだから
使い終わったらすぐ返すのが基本。
303
名前:
300
:04/07/30 12:03
分かりました。。
一応これでも猫でも〜や他のSDK系のサイトを見てやってみたんですが。。
もう何度か読み直してみます。失礼しました。
304
名前:
デフォルトの名無しさん
:04/07/30 12:17
>>303
まあがんがれ。ほとんどはDC取得->コンパチDC取得->描画->選択->Bitbltって感じだろ。
305
名前:
デフォルトの名無しさん
:04/07/30 12:18
お前は猫未満だ
306
名前:
デフォルトの名無しさん
:04/07/30 14:22
PathFindExtensionを使うとリンカエラーになるのですが
なにをリンクすればいいですか?
307
名前:
デフォルトの名無しさん
:04/07/30 14:23
お前の脳
308
名前:
デフォルトの名無しさん
:04/07/30 14:26
shlwapi.lib
とお前の脳
309
名前:
デフォルトの名無しさん
:04/07/30 14:37
お前の悩
310
名前:
デフォルトの名無しさん
:04/07/30 15:02
C++でクラスを作りたいんですけど
クラスを作るごとにクラスごとにクラスの中の変数の値を違うものにしたいのです
俺がやりたいのは、クラスのインスタンスを作るときに、引数にキーの引数を入れると、
クラスの中のRegisterHotKeyの第二引数のIDをクラスごとに自動で別々のものに割り振るには
どうやりるのがプロのやりかたですか、教えてください
311
名前:
デフォルトの名無しさん
:04/07/30 15:11
>>310
実にプロっぽくないコードだけど、コレで十分な場合っぽいのでこうする。
ついでに map にいれとく。
class hoge {
static int _CookieBase;
static std::map<int, hoge*> _Instances;
int _Cookie;
hoge() { _Cookie; = _CookieBase;++; _Instances[_Cookie] = this; };
~hoge() { _Instances.erase(_Cookie); };
};
32bit 環境だけで動けばいいとするなら、(int) this を ID にしてもいいし。
312
名前:
311
:04/07/30 15:12
>>32
bit 環境だけで動けばいいとするなら、(int) this を ID にしてもいいし。
あ、RegisterHotKeyの場合使っていい範囲が限定されてるからこれはダメか。
313
名前:
デフォルトの名無しさん
:04/07/30 15:14
>>307-309
知らないならレスするなよ厨房はゲームでもしてろ
314
名前:
デフォルトの名無しさん
:04/07/30 15:25
>>312
thisをIDにするのはいい考えなのでそうさせてもらいます
315
名前:
デフォルトの名無しさん
:04/07/30 15:32
>>313
分からないなら、口出すなよ
316
名前:
デフォルトの名無しさん
:04/07/30 15:40
class hoge {
static int _CookieBase;
static std::map<int, hoge*> _Instances;
int _Cookie;
hoge() { _Cookie; = _CookieBase;++; _Instances[_Cookie] = this; };
~hoge() { _Instances.erase(_Cookie); };
};
意味が分からないので僕にもわかるようにコメント付けてください
317
名前:
デフォルトの名無しさん
:04/07/30 15:51
当方、WindowsXPです。
外字エディタを使うことなく、外字ファイル(EUDC.TTE)に外字登録
したいのですが、方法がわかりません。
外字データはベクタデータです。
外字データは数が多いので、外字エディタを使っての登録は現実的
ではありません。
なにか、便利なツールとか、プログラミングの方法とか(VC++の開発
環境はあります。)ご存知の方、ご教示ください。
318
名前:
デフォルトの名無しさん
:04/07/30 15:58
>>316
C++ スレで聞いてみてはどうでしょう?
319
名前:
デフォルトの名無しさん
:04/07/30 16:42
I am Windows XP.
320
名前:
デフォルトの名無しさん
:04/07/30 16:44
I have a dream.
321
名前:
デフォルトの名無しさん
:04/07/30 16:45
GetWindowTextなどのテキストを格納するバッファを受け取る様な関数に
ATL、WTLのCStringや、std::stringを直接引数として渡すのは無理でしょうか
322
名前:
デフォルトの名無しさん
:04/07/30 16:45
>>320
はキング牧師
323
名前:
デフォルトの名無しさん
:04/07/30 16:58
>>321
CStirngならGetBufferとReleaseBuffer
324
名前:
デフォルトの名無しさん
:04/07/30 17:06
>>317
>現実的ではありません。
あなたの技術でツールの製作を行う方が現実的ではありません。
>便利なツールとか
板違いです
325
名前:
321
:04/07/30 17:16
>>323
無事にできました、必ずReleaseBufferも必要なんですね
レスありがとうございました
326
名前:
デフォルトの名無しさん
:04/07/30 18:35
VB6で作成したアプリのウィンドウが非アクティブ状態になっても、
キー入力を取得したいと思い、キーボードフックを使うべく
C言語でdllを作成しました。
VB側からこのdllを呼んで、他のアプリがアクティブになっても、
dll内でキー入力を捕まえることはできたのですが、
これをdllからVBアプリの方へ通知する方法がわかりません。
SendMessageなんかも、他のアプリのウィンドウがアクティブになった
状態だと通らないようです。
何か方法をご存知の方、お教えください。
327
名前:
デフォルトの名無しさん
:04/07/30 21:49
>>299
オーナーと親は違う。SetParentでは親しか変更できない
328
名前:
デフォルトの名無しさん
:04/07/30 22:23
>>327
どう違うの?
EnumChildWindowsで列挙できないとか?
329
名前:
デフォルトの名無しさん
:04/07/30 22:27
>>326
SendMessage自体は通ると思うけど。
ダメならCOM経由とかコールバック関数は?
330
名前:
デフォルトの名無しさん
:04/07/30 22:55
>>326
PostMessage
331
名前:
デフォルトの名無しさん
:04/07/30 23:03
自分の作ったメッセージループのウインドーがGetAncestor(hwnd, GA_ROOT)で得られるウインドーですか?
デスクトップウインドーだったらヤバいので教えてください
332
名前:
デフォルトの名無しさん
:04/07/30 23:42
>>328
MSDN嫁
333
名前:
デフォルトの名無しさん
:04/07/31 01:25
>>332
MSDNのどのカテゴリでしょうか?
あの膨大な量のドキュメントから探し出す事は無理っぽいです
SetParent/SetWindowLong/GetWindow
Window Relationships>Owned Windows
あたりを読んでみましたが、ParentとOwnerの違いはかかれてませんでした
334
名前:
デフォルトの名無しさん
:04/07/31 01:42
>>333
あるウィンドウに所有されているが、そのウィンドウの子ウィンドウでないウィンドウのこと。
335
名前:
デフォルトの名無しさん
:04/07/31 02:40
>>333
SetWindowPos で HWND_TOPMOST を指定するとよさげな感じ。
Parent は一つ上の親、Owner は一番上の親。
子→親 と 子→親→親→....→親の違いですね。
336
名前:
デフォルトの名無しさん
:04/07/31 02:47
違う
337
名前:
デフォルトの名無しさん
:04/07/31 04:11
>>333
CreateWindowでhwndParentを指定して、WS_CHILDなら子、ちがうならオウンド
338
名前:
326
:04/07/31 08:41
>>329-330
ごめんなさい。
SendMessage通りました。
ウィンドウハンドルの正常な値が渡されていなかったようです。
VBのフォームの表示後、すぐにハンドルを渡していたのを、
DoEventsを実行後に渡すようにするとちゃんと動きました。
339
名前:
デフォルトの名無しさん
:04/07/31 12:56
一般的には、child windowはowned windowでもあるからややこしく思われてるのかな。
340
名前:
デフォルトの名無しさん
:04/07/31 14:36
>>335
大嘘。
初心者には、書籍「APIで学ぶWindows徹底理解」の、
「ウィンドウについて詳しく学ぼう」の項がお勧め。
341
名前:
デフォルトの名無しさん
:04/07/31 17:03
BMPを左右反転して表示する関数ありますか?
342
名前:
デフォルトの名無しさん
:04/07/31 17:25
>>341
ある。それが何かは自分で探せボケ
343
名前:
デフォルトの名無しさん
:04/07/31 17:31
自力で反転させても大した手間じゃないと思うが
344
名前:
デフォルトの名無しさん
:04/07/31 17:44
>>341
あるらしいのでガンバレ
>>342
「ある/ない」を答えるだけのスレではないので
それが理解できるおつむを持ってないならこないでください
345
名前:
デフォルトの名無しさん
:04/07/31 18:03
左右反転ってBitBltに負数を与えることか?
実行できないバージョンもあるんでない?
346
名前:
デフォルトの名無しさん
:04/07/31 18:10
PlgBltでネーの?
347
名前:
デフォルトの名無しさん
:04/07/31 18:14
>>333
Child Windowsの説明も読んで自分でdiffを取れ
348
名前:
デフォルトの名無しさん
:04/07/31 18:25
>>344
(1) "「ある/ない」を答えるだけのスレではない" などとはどこにも書かれていない。
勝手な妄想で断定するな。
(2) 341が求めているのが実際に関数の有無だけかもしれない。
たとえば、各種ウインドウシステムのビットマップ関数の機能調査をしているかもしれないのだ。
何を調べたいのかも述べていない以上それに対する最も適切な回答は有無を答えることだけである。
(3) だいたい、341には必要なことが何も書いていない。
以上。
349
名前:
デフォルトの名無しさん
:04/07/31 18:28
StretchBlt なら確実。
350
名前:
デフォルトの名無しさん
:04/07/31 18:57
WindowsXP付属のサウンドレコーダーの起動中に、それが再生中・録音中のどちらか、
外部のアプリケーションからAPIで調べる方法はないですか?
ボタンのEnable状態を調べようかと思ったのですが、再生も録音もボタンの状態が
同じなので、区別できませんでした。
351
名前:
デフォルトの名無しさん
:04/07/31 19:00
そういうことするアプリ、嫌いです。
352
名前:
デフォルトの名無しさん
:04/07/31 19:22
>>351
ゴミレス (゚听)イラネ
353
名前:
デフォルトの名無しさん
:04/07/31 19:23
>>352
ゴミレスに対するゴミレス (゚听)イラネ
354
名前:
デフォルトの名無しさん
:04/07/31 19:30
>>1-1000
ゴミスレ (゚听)イラネ
355
名前:
デフォルトの名無しさん
:04/07/31 20:38
URLDownloadToFileでcgiファイルはダウンロードできますか?
356
名前:
デフォルトの名無しさん
:04/07/31 20:39
うん
357
名前:
355
:04/07/31 20:47
では可能と言う回答の元質問いたしますが、
cgiファイル(URLは
http://192.168.1.200/cgi-bin/test.cgi
と設定)をダウンロードしようとすると戻り値0は返されるのですが、
指定したダウンロード先にファイルがありません。何度実行しても同様の症状が出ます。
ちなみにtest.cgiをブラウザ上で開いた場合はちゃんと表示され、HTMLファイルやZIPファイルのダウンロードには成功します。(ファイルもあります)
URLDownloadToFileは以下のように記述しました。
URLDownloadToFile(0, sUrl, sFileName, 0, 0)
358
名前:
355
:04/07/31 21:05
微妙な手段ですが自己解決いたしました。
ありがとうございました。
359
名前:
デフォルトの名無しさん
:04/07/31 21:40
>>355
報告だけじゃなくて、その方法も記載しような。
360
名前:
デフォルトの名無しさん
:04/07/31 22:01
>>359
教えて君キタワァ━━━━━━(n‘∀‘)η━━━━━━ !!!!!
361
名前:
デフォルトの名無しさん
:04/07/31 22:02
夏全開だな
362
名前:
デフォルトの名無しさん
:04/07/31 22:02
>>360
が?
まったくだ。
363
名前:
デフォルトの名無しさん
:04/07/31 22:09
>>361-362
364
名前:
355
:04/07/31 23:07
>>359
cgiファイルを格納しているサーバの設定弄ってたらダウンロードできるようになりました。
だから微妙な解決orz
365
名前:
デフォルトの名無しさん
:04/07/31 23:35
cgiが一般人に読まれたら困るんでないかい
366
名前:
デフォルトの名無しさん
:04/07/31 23:50
>>365
まさかcgiファイルそのものをダウンロードするなんて思ってないよね?
367
名前:
デフォルトの名無しさん
:04/08/01 01:43
妙に気になる解決方法だな
368
名前:
デフォルトの名無しさん
:04/08/01 02:05
このスレはレベルが高そうなので教えてください。
IEの右クリックのメニューに自アプリを登録して
リンク先のURLを渡したいのですがやりかたがわかりません。
とりあえず、レジストリに登録してIEのメニューに.htmを
追加するところはわかったのですが、その.htmから
exeを呼ぶことができません。IriaなどはActiveXDLLを
作って対応しているようなのですが詳しくはわからず困っています。
もしご存知の方がおられましたら教えてください。
よろしくお願いいたします。
369
名前:
デフォルトの名無しさん
:04/08/01 02:27
>>368
WScript.Shell の Run メソッド
370
名前:
デフォルトの名無しさん
:04/08/01 02:28
オートメーション。
371
名前:
デフォルトの名無しさん
:04/08/01 11:54
>>396
そのメソッドは.vbsだと実行できるのですが
IEのメニューから実行するとHTMLとして実行されるらしく
エラーになってしまいます。
372
名前:
デフォルトの名無しさん
:04/08/01 12:03
>>368
.htm から任意の .exe なんか呼び出せたら危険でしょうがいないと思うが。
373
名前:
デフォルトの名無しさん
:04/08/01 12:10
>>372
やっぱりそうですよねー。そうだとは思ったんですけど
何かないかなーと。残念です。
374
名前:
デフォルトの名無しさん
:04/08/01 12:17
自アプリをActiveX Exe対応にしたらええやん。
375
名前:
デフォルトの名無しさん
:04/08/01 12:23
ActiveXの作れる開発ツールを持ってないんです。。・゚・(ノ∀`)・゚・。
376
名前:
デフォルトの名無しさん
:04/08/01 12:25
MinGWでも作れるべさ
377
名前:
デフォルトの名無しさん
:04/08/01 12:26
てか何で開発してるのさ?
378
名前:
デフォルトの名無しさん
:04/08/01 12:26
hsp
379
名前:
デフォルトの名無しさん
:04/08/01 12:26
fuck off
380
名前:
デフォルトの名無しさん
:04/08/01 12:28
Delスレにいる奴だろう
381
名前:
デフォルトの名無しさん
:04/08/01 12:30
Delスレの奴です。
382
名前:
デフォルトの名無しさん
:04/08/01 14:03
Delスレの奴でしたか。
383
名前:
デフォルトの名無しさん
:04/08/01 14:07
はい
384
名前:
デフォルトの名無しさん
:04/08/01 17:53
CreateCompatibleBitmapしたHBITMAPはDeleteObjectしますが、
(HBITMAP)LoadImageしたHBITMAPはDeleteObjectする必要は無いのでしょうか。
385
名前:
デフォルトの名無しさん
:04/08/01 18:00
必要だす。古いマニュアルには載ってないんだけど
(おかげでずっと未解放のままだった。ちゃんと書いといてくれよ)
MSDN には DeleteObject しろと書いてある。
http://msdn.microsoft.com/library/en-us/winui/winui/windowsuserinterface/resources/introductiontoresources/resourcereference/resourcefunctions/loadimage.asp
386
名前:
385
:04/08/01 18:04
でもよく読んだら、"不要になったらDeleteObject してもよい"
"プロセス終了時に自動で解放する" か。一応解放はされていたのか。
387
名前:
384
:04/08/01 18:10
>>385
(こことか)
ttp://www.users.yun.co.jp/~studiowing/win32api/win-04.htm
DeleteObjectを1回はしているけど、
それはSelectObjectで関連付けたものを離す為の物で、
HBITMAPを消す為にもう一度必要なのに、なぜしないのだろうと思っていました。
Win32APIを研究したわけではなく、ネットのいろんな講座を見ただけだったので、
正しいか正しくないかずっと引っかかっていたのですが、
やっとすっきりしました。ありがとうございました。
388
名前:
384
:04/08/01 18:13
>>386
リロードしていませんでした。
なるほど、例え消していなくても、危険というわけではないのですね。
でも、HDCと一緒でなんかすっきりしないので
(HDCは遅くなることもあったっけ?)、消していくやり方で行きます。
389
名前:
デフォルトの名無しさん
:04/08/01 18:31
Windowsのプロセス間通信てどんなものがありますか?
おしえて!
少量の情報をやりとりするだけで、軽いものがあれば
それがいいのですが。
390
名前:
デフォルトの名無しさん
:04/08/01 18:33
>>389
COM最高!
391
名前:
デフォルトの名無しさん
:04/08/01 18:37
>>390
COMてなんですか?googleで検索したら・・・・
"COM" は一般すぎる言葉のため、 検索には使用されていません。
(´・ω・`)
392
名前:
デフォルトの名無しさん
:04/08/01 18:38
Common Object Modelでぐぐろう
393
名前:
デフォルトの名無しさん
:04/08/01 18:42
PlaySound()とmciSendCommand()で同じWAVEファイルを再生しようとしたんですが、
PlaySound()のほうは普通に再生できたんですけどmciSendCommand()だと
パスがみつからないというメッセージがでます。これはファイルがみつからないってこと
ですよね?前者なら再生できるのに。どういう原因が考えられますか?
394
名前:
デフォルトの名無しさん
:04/08/01 18:49
>>392
サンクス。Component Object Modelの略だったのは、ギャグだったと
想像します。:−)
395
名前:
デフォルトの名無しさん
:04/08/01 18:51
あー、すまん。素で書き間違ったよ
396
名前:
デフォルトの名無しさん
:04/08/01 19:55
COM
socket
WM_COPYDATA
FileMappingObject
あたりだな。
軽いならWM_COPYDATAがよさげ
397
名前:
デフォルトの名無しさん
:04/08/01 20:02
Pipe,MailSlot,Clipboardもあるでよ
398
名前:
デフォルトの名無しさん
:04/08/01 20:12
>387
待ってくれ (;´Д`) DeleteObject って、SelectObject の関連付けを
離す事が出来たっけ?
漏れなんか、むしろ SelectObject で明示的に関連付けを離さないと
DeleteObject してもオブジェクトは解放されないつー話を
ずっと信じてるわけだが
399
名前:
デフォルトの名無しさん
:04/08/01 20:15
別に軽く無いよ。
楽なのはWM_COPYDATAだけど、
FileMappingObjectの方が軽い
400
名前:
デフォルトの名無しさん
:04/08/01 20:19
TCP/IPでプロセス間通信を実装するよりはCOMコンポーネントにしたほうが良い・・・のかな
401
名前:
デフォルトの名無しさん
:04/08/01 20:20
TCP/IPなんて一番重いよ
402
名前:
デフォルトの名無しさん
:04/08/01 20:26
CでCOMコンポーネント書いてる人居ますか?
403
名前:
デフォルトの名無しさん
:04/08/01 20:29
C++で書いて下さい
404
名前:
デフォルトの名無しさん
:04/08/01 20:38
普通はやりませんかね?<Cで
405
名前:
デフォルトの名無しさん
:04/08/01 20:52
>>399
軽いなら=軽いオブジェクトなら、だなスマソ
WM_COPYDATAなら、通知も気にせずできてお手軽だから、楽だよと。
406
名前:
デフォルトの名無しさん
:04/08/01 21:28
>>398
DCに選択されたHGDIOBJをDeleteObjectしても当然失敗する
Win9xだと悲惨なことになるだろうな
407
名前:
384
:04/08/01 22:28
あれ、かなり間違えてますかね。
自分のやり方はこんな感じです。
間違えている所があったら教えてください。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1086258254&res=4&fi=no
408
名前:
デフォルトの名無しさん
:04/08/01 23:24
普通 src dest
日本原理主義 moto saki
409
名前:
デフォルトの名無しさん
:04/08/02 01:12
>>398
私もそう思ってましたが、それであってるんじゃないですか?
SelectObject の戻り値は大切に保存して、描き終わったら必ず
元に戻すようにしてますが。
410
名前:
384
:04/08/02 06:05
かなり勘違いして覚えていたようです。
もう一度勉強しなおします。
411
名前:
デフォルトの名無しさん
:04/08/02 06:14
資料はまとなものを使ってください
412
名前:
384
:04/08/02 09:06
分かりました。
413
名前:
デフォルトの名無しさん
:04/08/02 19:23
ファイルのバックアップをするツールを作っていまして
サイズと更新日時を調べて重複コピーを避けようとしています。
CopyFile() でコピーした同じファイルの更新日時が、一秒前後ずれています。
いろいろ試したところどうやらNTFS(Cドライブ)からFAT32(Dドライブ)にコピーしたときにのみ
起こっているような感じですが、仕様上の問題でしょうか?
比較にはGetFileTime()→FileTimeToSystemTime()として各要素を比較しています。
・更新日時が違うので上書きしたときの出力例↓
Directoryコピー C:\Documents and Settings\Administrator\デスクトップ\
memo.txt
overwrite src 2004/07/30 09:24:03.010 size 1242436
dst 2004/07/30 09:24:04.000 size 1242436
414
名前:
↑
:04/08/02 19:25
あげさせていただきます
415
名前:
デフォルトの名無しさん
:04/08/02 19:26
FATは偶数秒単位でしか時刻を管理できないから。
416
名前:
デフォルトの名無しさん
:04/08/02 19:28
NTFS delays updates to the last access time for a file by up to one hour after the last access.
417
名前:
デフォルトの名無しさん
:04/08/02 19:29
>>413
FAT ファイルシステムの更新時刻の分解能は2秒。参照時刻にいたっては1日。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/getfiletime.asp
"Remark" のところ参照。
418
名前:
デフォルトの名無しさん
:04/08/02 19:31
物尻だな
419
名前:
413
:04/08/02 19:41
手持ちのMSDNにはそんなこと書かれてねー。
要するに互換性が無いよってことでいいのですね。
アバウトに比較しておきます。まあ簡易ツールなので。
>>416
英語力ぜろなんですが、NTFSでは更新されてもしばらくは更新日時を更新しない
ということですかね?ツール使用前に再起動必須でいいのかな。
ありがとうございました
420
名前:
デフォルトの名無しさん
:04/08/02 19:43
>>419
更新日時じゃない。
421
名前:
デフォルトの名無しさん
:04/08/02 19:43
>>413
サイズと更新日時で比較する他に、アーカイブ属性を使うという手段もあるけど、
どうなのだろう…
422
名前:
413
:04/08/02 19:45
>>420
あ、ほんとだ。指摘ありがとうございます。
423
名前:
413
:04/08/02 19:54
>>421
これは誰でも操作可能なようで少し不安になりますね。
コピーするときに自前のDBを作っちゃうのがもっとも確実でしょうか。
そこまで面倒かけるのもあれですが。
424
名前:
デフォルトの名無しさん
:04/08/02 20:01
アーカイブ属性ってのは本来こういう用途に使うもんなんだけどな。
変更があったらアーカイブ属性がついてバックアップ時に消す。
425
名前:
デフォルトの名無しさん
:04/08/02 20:05
バックアップ取ったときにMD5かなんかでハッシュ取っとけ
426
名前:
デフォルトの名無しさん
:04/08/02 20:11
MD5だと一致しちゃうかもよ
427
名前:
デフォルトの名無しさん
:04/08/02 20:37
>>426
なぜですか?
428
名前:
デフォルトの名無しさん
:04/08/02 20:41
>413
コピー後にSetFileTime()は?
429
名前:
デフォルトの名無しさん
:04/08/02 20:57
>>427
MD5ハッシュは128bitだろ。128bit(0.301x128=38.528桁)ぐらいなら一致しちゃうかもしれないじゃーん。
まあ、これが一致するならGUIDやUUIDも一致する危険性があると言えるけど。
430
名前:
デフォルトの名無しさん
:04/08/02 20:59
>>429
アフォですか?
431
名前:
デフォルトの名無しさん
:04/08/02 21:04
>>430
そう思った根拠をどうぞ。現実的でない話、というの以外で論理的にお願い。
432
名前:
デフォルトの名無しさん
:04/08/02 21:05
いちいち煽りに反応しない
433
名前:
デフォルトの名無しさん
:04/08/02 21:08
運のいい人なら一致するよ
おれは運が悪いから一生当たらないだろうけど
434
名前:
デフォルトの名無しさん
:04/08/02 21:15
ジャンボ宝くじ1等が当たる確率のほうが高い。
435
名前:
デフォルトの名無しさん
:04/08/02 21:33
通りすがりの者す。
まったく根拠がないので大嘘かもしれないが、概略計算してみた。
現在、56BitのDESが何とか解読可能らしいから、1台のPCで解読可能な限界が
64Bit程度とすると、128BitであればPC1台で解読不能な64Bit倍の組み合わせ
が残っている。
これを100億台のPCで分散して計算したとしても
2^64 / 10,000,000,000 = 1,844,674,407.
通りの組み合わせがまだ残ってる。
つまり100億台のPC をフル稼働して128Bitビットの暗号を解読して解析される
確立は 1/1,844,674,407 とかそんなオーダーじゃないのかな?
運のいい人なら一致するレベルではないような気がする。
436
名前:
デフォルトの名無しさん
:04/08/02 21:42
MD5が一致する確立と、暗号の解読云々に何の関係があるんでしょうか。
437
名前:
デフォルトの名無しさん
:04/08/02 21:44
俺も、MD5とファイルサイズが一致するのに、別ファイルなんて考える事はないと思う。
それに、アバウトなタイムスタンプも組合わせれば、故意にそんなファイルを作成しない
限り問題ないと思うけどなあ
438
名前:
デフォルトの名無しさん
:04/08/02 21:45
MD5の一致でファイルの一致としてしまって、
万が一間違って国家機密ファイルを消してしまったらどうするのだろう
439
名前:
デフォルトの名無しさん
:04/08/02 21:47
>>438
が国家機密ファイルを扱うような身分になることはない。安心しろ。
440
名前:
デフォルトの名無しさん
:04/08/02 21:47
つーかMD5の中にファイルサイズも含まれてるんだら、
MD5とファイルサイズ両方調べても意味無いだろ
441
名前:
デフォルトの名無しさん
:04/08/02 21:48
あと、CRC32とかも組合わせれば、まず問題ない。
でも、市販ソフトはそこまでやっていないと思うぞ。
442
名前:
デフォルトの名無しさん
:04/08/02 21:51
つーか頭悪すぎる人多いのね。
430の気持ちが少しわかった。
443
名前:
デフォルトの名無しさん
:04/08/02 21:51
>>435
どうでもいいけど、その確率は宝くじが2回当たる確率をはるかに上回るから、無いとは言えないんじゃ。
444
名前:
デフォルトの名無しさん
:04/08/02 21:55
MD5は特定の条件下で結果が偏るから実際はそんなに確率低くないよ
445
名前:
デフォルトの名無しさん
:04/08/02 21:55
もしMD5が核の発射ボタンだとしても使えますか?
446
名前:
デフォルトの名無しさん
:04/08/02 21:58
SHA-1にすればだいぶ安全になるよ
447
名前:
デフォルトの名無しさん
:04/08/02 21:59
>>443
>無いとは言えないんじゃ
通常のものなら問題ないと思うが、ないとは言えないね。
もちろん
>国家機密ファイル
などという重要なものにはまだ足りないとも思うけど。
少なくとも普通の人が適当に入力し世界で1人ぐらい当たってしまうほど、脆い
符号化でもないということ。
448
名前:
デフォルトの名無しさん
:04/08/02 22:01
SHA512くらいでやっと安心かな
449
名前:
デフォルトの名無しさん
:04/08/02 22:05
ミラー・ラビン法みたいな感じで、底を変えて複数回評価することでより一意性を高める方法が良いのかもね。
450
名前:
デフォルトの名無しさん
:04/08/02 22:17
そこまでするなら、
1.日時が等しい(もしくは極めて近い)
2.サイズが等しい
場合に、
3.バイナリ比較
すればいいだけの話のような気もする。
451
名前:
デフォルトの名無しさん
:04/08/02 22:22
>>450
1も2も弱すぎる
452
名前:
デフォルトの名無しさん
:04/08/02 22:30
バックアップでしょ?
バックアップされてないファイル名があったらコピー。
もし、そのファイルが既存のもののコピーであったとしても、
それを検出する必要ってあるのか?
453
名前:
デフォルトの名無しさん
:04/08/02 22:46
>>452
更新されてたらどうするの?
日付とファイルサイズが変わって無くても中身が更新されてたらどうするの?
454
名前:
デフォルトの名無しさん
:04/08/02 23:48
>>452
は視点がずれてる。
だれも新しいファイルの話などしてない。
というか、そろそろAPIの話題じゃないね。
455
名前:
デフォルトの名無しさん
:04/08/03 03:15
そろそろぬるぽの話ですね。
456
名前:
デフォルトの名無しさん
:04/08/03 03:21
そろそろガッの話です
457
名前:
デフォルトの名無しさん
:04/08/03 08:06
一致したらコピーしないんだから、そもそも上書きの心配はないだろ?
458
名前:
デフォルトの名無しさん
:04/08/03 09:36
(\ /)
(\\ //)
(\\\ ///)
/ ̄ ̄ ∧Ω∧  ̄ ̄\
(/// ̄ ( ´∀`) ̄\\\)
( \) ⊂ つ(/ )
\\) │││ (//
\) (_)__) (/
459
名前:
デフォルトの名無しさん
:04/08/03 22:03
教えて下さい。
IMEで現在変換候補選択中かどうかを知るにはどうしたらいいでしょうか?
460
名前:
デフォルトの名無しさん
:04/08/03 23:14
MD5が一致する確率は、HDDが壊れる確率の1/1000000000以下だよ。
もちろん確率だから、最初の1回でヒットする確率もゼロでは無い。
そういう意味では、地球に隕石が衝突して、人類が滅亡する確率のほうが100000倍も大きいのだがな…
なんと!Windowsがハングする確率は10回に1回以上だぞ!?
これは「ほぼ間違いなく」Windowsは異常終了する(何が起きてもおかしくない)ってコトなんだが(w
461
名前:
デフォルトの名無しさん
:04/08/03 23:18
100%成功する方法が存在するのに、失敗する可能性がある方法で
やろうとする神経がわからん。
462
名前:
デフォルトの名無しさん
:04/08/04 00:23
>>461
100%絶対に成功するが10万年かかる方法と、
10%しか成功しないが0.1秒でできる方法があったとしたら、
藻前は絶対、10万年かけろよ。絶対だぞ。自分から言ったんだからな。
せいぜい長生きしてくれ。
463
名前:
デフォルトの名無しさん
:04/08/04 00:34
死んで
464
名前:
デフォルトの名無しさん
:04/08/04 01:30
>>462
100%絶対に成功する方法が
10%しか成功しない方法より
時間がかかることを前提にされてもな。
100%絶対に成功するが10万年かかる方法と、
10%しか成功しないが同じく10万年かかる方法とじゃ
100%絶対に成功する方法を選ぶだろ。
特にMD5計算で単純なファイル読み込み以上に時間がかかる場合はなおさら。
ファイルを読み込んでMD5なんて無駄な計算をしてから比較するより、
ファイルを読み込んでそのまま比較した方がいい。
465
名前:
デフォルトの名無しさん
:04/08/04 01:30
プゲラ
466
名前:
デフォルトの名無しさん
:04/08/04 01:33
ゲラプシュ
467
名前:
デフォルトの名無しさん
:04/08/04 01:46
>>459
IME の動作を監視したいなら、対象のウィンドウで WM_IME_NOTIFY を処理する。
開いた時に IMN_OPENCANDIDATE、閉じた時に IMN_CLOSECANDIDATE が送られる。
実行時の瞬間に開いてるかどうかを調べるのは ImmGetCandidateWindow かな?
こっちは試してないのでよくわからん。
468
名前:
デフォルトの名無しさん
:04/08/04 02:47
>>464
片方はあらかじめ計算しておけば読み込みにかかる時間は半分になるだろ
469
名前:
デフォルトの名無しさん
:04/08/04 03:39
100%絶対に成功する方法が
この世にあることを前提にされてもな。
470
名前:
デフォルトの名無しさん
:04/08/04 04:01
チェインハッシュコンテナを作らせたら恐ろしいものがみられそうだな。
471
名前:
デフォルトの名無しさん
:04/08/04 08:35
>>460
10回に1回ってなんだ?起動した回数か?
472
名前:
デフォルトの名無しさん
:04/08/04 10:55
winnyで逮捕される可能性と同じくらいだろ
逮捕騒ぎでwinnyやめた奴はMD5使えないよな
一致する可能性同じだから不安で
473
名前:
デフォルトの名無しさん
:04/08/04 11:02
>>472
Winnyは実際に逮捕されたぞ。
winnyと同じとするならば、現実に起こりうる確率だが。
474
名前:
デフォルトの名無しさん
:04/08/04 11:04
スレ違いだったらゴメンナサイ
興味をもったので、仮想CDなどのソフトが実装している、仮想ドライブのアプりを作りたいのですが・・・
どのようなWinAPIを使えばよいのでしょうか?
また、参考になるドキュメントって存在しますか?
ググルときのキーワードの助言でも助かります。
テストとして、特定のディレクトリをドライブにしたり、仮想CDソフトのようにバイナリーファイル(イメージファイル)に複数のファイルをマッピングするようなドライブを作ってみたいと思っています。
よろしくお願いします。
475
名前:
459
:04/08/04 11:08
>467
ありがとう、できました!
よく考えたら選択ウィンドウだけじゃなく、単に入力開始/終了したかを
取りたかっただけだったので、WM_IME_STARTCOMPOSITIONと
WM_IME_ENDCOMPOSITIONでハンドリングするようにしたら、完璧でした。
476
名前:
デフォルトの名無しさん
:04/08/04 11:18
>>474
まずddkを入手して慣れろ
話はそれからだ
477
名前:
デフォルトの名無しさん
:04/08/04 11:20
>>475
ttp://d.hatena.ne.jp/einseul/?of=15
WM_IME_STARTCOMPOSITIONとかアテにするな
だそうな
478
名前:
459
:04/08/04 12:36
>477
ひー!でもIME2000以前なんて、手元に無いよぅ。問題が全角スペースだけなら、
まだ影響は少ないんですけどね。2002ならまともに動いてるみたい。
ATOKでも推奨しとこうかな(w
479
名前:
デフォルトの名無しさん
:04/08/04 17:48
ディレクトリを扱うDir()関数のようなものはないでしょうか?
:: を打ってみたのですがdir()関数が出てきませんでした
質問が間違っていたらごめんなさい
480
名前:
デフォルトの名無しさん
:04/08/04 17:55
FindFirstFileとその仲間
481
名前:
479
:04/08/04 17:59
>>480
ありがとうございました!
482
名前:
デフォルトの名無しさん
:04/08/04 22:20
int LoadString(
HINSTANCE hInstance,
UINT uID,
LPTSTR lpBuffer,
int nBufferMax
)
という関数がありますが
第4引数 nBufferMax に渡す数を動的にしたいのです。
そこで、どうすれば文字列テーブルから1文字列のバイト数か文字数を取得できるのでしょうか?
環境は WinXP & VC++ & PlatformSDK です。
SizeofResource()は1セクション(複数の文字列の合計)のサイズを返すので使えないです。
483
名前:
デフォルトの名無しさん
:04/08/04 22:34
>>482
atlcore.h の AtlGetStringResourceImage を読んでみると良いよ。
484
名前:
デフォルトの名無しさん
:04/08/04 22:46
MFCのCString::LoadStringでも追ってみれば何かわかるんじゃ。
485
名前:
デフォルトの名無しさん
:04/08/04 23:19
>>482
今月のCマガにちょうどのってたな。
よく覚えてないけど、_から始まるやつだった。
486
名前:
デフォルトの名無しさん
:04/08/05 00:01
リストビューについての質問なんですが、
SuperTagEditorのように、大量のタグ、文字列や数値を扱う場合、
・リストビューに反映させておいて必要な時だけリストビューから直接データを取り出す
・リストビューに反映させているのと同じ内容のデータを常に保持しておき、リストビュー側に変更があったら保持してあるほうにも変更を加える
のどちらが効率としては良いのでしょうか?
487
名前:
デフォルトの名無しさん
:04/08/05 00:05
その二択だと前者だけど、構造に自由がきかない。
仮想リストをつかうべし
488
名前:
デフォルトの名無しさん
:04/08/05 00:33
>>486
どうしても性能あげたきゃ、出来合いコンポ使わず、自前でやれ。
(データとビューを分離して、ビューはリストビューじゃなく自前って事。)
489
名前:
デフォルトの名無しさん
:04/08/05 00:56
>>485
あー俺も見た。あの新連載よさげ。
490
名前:
デフォルトの名無しさん
:04/08/05 01:32
>>488
仮想リストビューでいいじゃん
491
名前:
デフォルトの名無しさん
:04/08/05 16:01
他スレでも聞いたんだけど返答が無かったので、こちらでも質問させて下さい。
実はC#からWin32をコールしていた時の不思議な現象なんですが、
開発機のXP Homeで、RichTextBox内の文字を選択して書式設定するために
EM_SETSELをSendMessageで文字選択してました。
これは全然問題なかったんですが、別のXP Pro機で動かしたところ、選択文字が
ことごとくずれてました。どうやら選択指定範囲が文字数ではなくバイト単位で
動作しているようで、SendMessageWにするとXP Proでもうまく動きました。
基本的にSendMessageならOSとして対応するのがSendMessageWか
SendMessageAかを勝手にハンドリングしてくれてると理解してますが、違うのでしょうか?
また、なんでXP HomeとProなんかでこんな違いが出てしまうんでしょう??
492
名前:
デフォルトの名無しさん
:04/08/05 16:06
マルチポストウゼー
493
名前:
デフォルトの名無しさん
:04/08/05 16:09
マルポ
494
名前:
デフォルトの名無しさん
:04/08/05 16:21
ま、そう言わずに。
C#スレで聞くよりこっちで聞いてた方が相応しかったと考え直したもので。
495
名前:
デフォルトの名無しさん
:04/08/05 16:32
>>491
C (C++) では SendMessage は
#ifdef UNICODE
#define SendMessage SendMessageW
#else
#define SendMessage SendMessageA
#endif // !UNICODE
なるマクロで、コンパイル時に SendMessageA または SendMessageW に変換されてます。
C# で user32.dll からインポートして使うなら、どちらを使うのか自分で指定するべき。
496
名前:
491
:04/08/05 17:10
なるほど、C#からだとこのマクロがどう作用するのかは分かりませんが、
要はどちらが使われるか保障がないんですね。
内部的にUNICODEに対応しているかどうか最初にチェックしないといけないわけですか。
ありがとうございました。
497
名前:
デフォルトの名無しさん
:04/08/05 17:47
VC++ Win32のTreeViewコントロールでビューのアイテムなどを
ダブルクリックしたかどうかを検出するにはどうしたらいいですか?
いろいろ調べたのですがわかりませんでした。
私の方で思いつく手段は GetClassLongでTreeViewウィンドウの
クラススタイルを取得して
CS_DBLCLKS を ORしてSetClassLongでセットする
ウィンドウをサブクラス化して、置き換えてたプロシージャ内で
WM_LBUTTONDBLCLKなどを検出
以上のような方法ぐらいしか思いつきません。
もっとスマートな方法はない物でしょうか?
WM_NOTIFYなどで受け取る方法でもよいのですが・・
(APIなのだからあるとはおもうのですが・・)
それとトップのテンプレ↓リンクきれてましたけど・・
Win32 SDK Programming
http://usr_vogel.at.infoseek.co.jp/Win32SDK/index.html
WindowsSDK入門
http://kerochan.no-ip.com/vcsdk/letsprog/letsprog-index.htm
498
名前:
デフォルトの名無しさん
:04/08/05 17:49
NM_DBLCLKだったかな
499
名前:
デフォルトの名無しさん
:04/08/05 19:07
サブクラス化
500
名前:
デフォルトの名無しさん
:04/08/05 19:34
>>498-499
以外には無いと思われ
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.