1 名前:デフォルトの名無しさん [2007/06/12(火) 19:59:25 ] スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。 やさしいお兄さんやお姉さんたちが答えてくれるかも。 過去スレ、関連リンクは>>2-5 くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版(msdn.microsoft.com/library/ )の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
577 名前:573 mailto:sage [2007/07/04(水) 09:32:47 ] あ、ウインドウのタイトルが変わりましたw これ面白いですね そうなんですかどうりで反応しないわけだ VB覚えようかな
578 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 09:41:48 ] 1.クリップボードに好きな単語を入れる 2.C-V を送る でいいじゃん? 俺だったらそんな面倒くさいことせずに、 検索語を別の窓から入力させて、結果をIEで開くように作るが。
579 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 09:55:31 ] あ、クリップボードも試してみたのですが 効かなかったから・・・ハッ!Σ(゚□゚;)!! その貼り付けたには気づかなかったorz 別窓のは技術が高くないと無理かと
580 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 09:58:50 ] IE上のコントロールはドロップダウンリスト以外は全部ウィンドウハンドル持たないIEの独自描画。
581 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:04:28 ] いや、www.google.com/search?&q=hoge とかを そのままシェルに渡してやればいいだけだと思うんだが…
582 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:06:42 ] 別窓作って文字入力 入力文字をURLエンコードして連結 シェルに渡す
583 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:08:05 ] _人人人人人人人人人人人人人人_ > な なんだってー!! <  ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄ 試行錯誤したのが馬鹿みたいだ
584 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:16:16 ] そうだね。
585 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:18:45 ] 試行錯誤すること自体は無駄じゃないよ
586 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:26:35 ] 質問の仕方がわるいんだからしょうがない。
587 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:39:00 ] どうしても、IE上のコントロールを制御したいと言うなら、 ↓スレあたりが参考になるやもしれん IEコンポーネントを使い倒すスレ Ver.2 pc11.2ch.net/test/read.cgi/tech/1145189322/
588 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:40:49 ] >>576 読みづらい以前に、 特別なキーワードを、 言い換え可能な普通の言葉で書いたら、 わけわかんないよ。 WM_KEYDOWNではなく、他のものかもしれないと気をつけて読まないといけないから。
589 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:42:35 ] >>577 VBでやると簡単だが、VBでしかできないわけじゃない。 Win32APIには、Cスタイルのものと、COMのものがある。 VBはCOMを扱うのが楽。VCだと慣れるまで面倒。 VB6ならともかく、VB.NETでやるくらいならC#でやりなされ。
590 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 10:57:36 ] いやあ日本人なのでカタカナの方が読みやすいかなと思ってw しかし天才がいるもんですね cgiとかってのに直接送ってるみたいなもんでしょ?驚きました
591 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 11:00:28 ] >>590 日本語版のMSDN に 「WM_KEYDOWN」 が 「キーダウン」 と書かれたらすげー迷惑 発音しているものが動作を指しているのか、特定のキーワードなのかを即座に区別できねーじゃん
592 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 12:58:05 ] プログラムの定数的なのは、別に英語でもそのまま定数で書くよw
593 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 13:11:46 ] ダブリューエム_キーダウンと書くかWM_KEYDOWNとするかは 翻訳者の自由だぁ〜〜!! 予約語いずフリーダム♪ ハイ一緒に!
594 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 13:16:14 ] 消えろ
595 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 14:20:11 ] キーダウンと書いたのを見て、実際にキーを押した事だと思ったよ・・・
596 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 16:50:55 ] こんにちは、ちょっとした疑問の解決作を教えてください。 エディタをサブクラッシングしようと思い、以下のコードを書きました。 WNDPROC OldEditProc; LRESULT CALLBACK EditSubProc(HWND,UINT,WPARAM,LPARAM); ... OldEditProc=(WNDPROC)SetWindowLong(hEdit,GWL_WNDPROC,(LONG)EditSubProc); しかし、これだとデフォルトの警告レベルで、warningが2つもでるんですよね・・・。 ( 『LRESULTからLONGに切り詰めます』 というのと、『LONGからWNDPROCへ変換します』 というもの ) これ、どうにかしてwarningを取る方法は無いでしょうか? ご教授御願いいたします。 環境はWinXPPro-sp2 ,VC++.NET です。
597 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 18:04:20 ] 何故warningになるのか考え、それの対処を調べるんだ ヒント:64bit
598 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 18:28:42 ] >>596 #include <atlwin.h>した上で、SetWindowLongではなく、SetWindowLongPtrを使え。 その際、そのLONG型のキャストをLONG_PTR型へのキャストにする必要がある。。 msdn.microsoft.com/library/ja/jpwinui/html/_Win32_SetWindowLongPtr.asp <atlwin.h>をインクルードする理由は、<windows.h>をインクルードしただけだと、 32ビット版でのSetWindowLongPtrがあまりにもお粗末なので、 結局警告が表示されることに変わりがないから。
599 名前:596 mailto:sage [2007/07/05(木) 00:32:56 ] おぉ〜凄いっ! 教えていただいた通りにやってみると、warningが出ないです〜っ!! 大変参考になりました。 本当にありがとうございました。 m(。−_−。)m
600 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 11:26:11 ] int APIENTRY WinMain(HINSTANCE, HINSTANCE, LPSTR, int); これを int APIENTRY WinMain(); こういう風にしたんですが、できませんか?
601 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:37:22 ] できません
602 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:40:38 ] できます
603 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:42:48 ] できますん
604 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:43:56 ] つかわないんならなくてもいいだろ
605 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:44:06 ] できます
606 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:01:44 ] APIENTRYだから、できませんね。 __cdeclならできるんだけど。
607 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:33:23 ] できます
608 名前:デフォルトの名無しさん [2007/07/05(木) 13:34:51 ] あぴえんとりー
609 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:44:52 ] キチガイが住み付いてるな。
610 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:53:45 ] 自己紹介乙
611 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:53:54 ] 自分で分かってるなら大丈夫だから安心していいよ
612 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:54:48 ] ワレワレハ、ウチュウジンダ
613 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 14:08:55 ] そういえば言語言ってなかった・・・ C言語なんですがやっぱ無理かったです 本当にありがとうございました
614 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:16:05 ] プログマーが日本語おかしいのはヤバイ 数学より国語的な能力が必要だとおもう
615 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:17:37 ] プログマー
616 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:19:02 ] 釣られるプロだクマー
617 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:20:19 ] プラグマー
618 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:21:26 ] >>617 差し替えで簡単に置きかえられるプログラマー?
619 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:23:10 ] #pragmar
620 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:25:44 ] プギャー
621 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:37:07 ] まるで動物園だな、ここは
622 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 16:34:57 ] 人間だって動物さ
623 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 18:31:04 ] マ板は釣り易いことで有名くま
624 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 18:33:42 ] プラモデルみたいなプラグラマ
625 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 19:35:36 ] >>624 語源は両方ともギリシア語だけど、出所が違うの。 スレ違いだからほどほどに。
626 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:38:06 ] プログマー笑ったwwwwwwwwwwwwwww
627 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:45:13 ] 面白くない。いい加減にしとけ
628 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:08:47 ] ウィンドウのタイトルバー上のホイール操作で ウィンドウを半透明にできるユーティリティを作りたいんだが システムフックしてDLL上でコードを長々と書いて一応できることはわかった。 だけどexe側で処理させたいのだが、なにかよい方法はないだろうか? exeに、呼び出されたDllのインスタンスハンドルを送ってそこで明示的な関数ロードとかやったけどできなかったよ
629 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 01:00:07 ] 今市意味が分からないんだけど ホイール操作を捕まえて半透明化するサブクラス化用のプロシージャを書いて フックを入れてからサブクラス化すればいいと思う
630 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 01:36:59 ] >>628 そういう機能のWindowTPというソフトがあるが、自分で作りたいだけ?
631 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 02:12:13 ] >>629 おk、サブクラス化試してみるわ ありがと >>630 今作ってる奴の機能の一部として搭載予定。 まぁ自己満足だけどね ありがとー
632 名前:628 mailto:sage [2007/07/06(金) 03:28:14 ] ('A`)・・・・? techtips.belution.com/ja/vc/0026/ >指定されたウィンドウの属性を変更する SetWindowLong() は、 >指定するウィンドウが呼び出し側のスレッドと同じプロセスに属していない場合に失敗します。 これを信じて四苦八苦してたのに 自身のexe側から他のプロセスのウィンドウを半透明化できちゃったぞ・・・? う〜む・・・
633 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 04:25:29 ] そんな古い上にどこの馬の骨が書いたか分からんようなサイト見ずに、MSDN読めよ。 msdn2.microsoft.com/en-us/library/ms633591.aspx > Windows 95/98/Me: The SetWindowLong function may fail if the window specified by the hWnd parameter does not belong to the same process as the calling thread.
634 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 13:45:15 ] Dllから呼び出したダイアログにXPスタイルが効かないんだけどなんでだかわかる? manifestやらcomctl32やらをexeの設定方法でやってんのがダメなのか…。 わかんなくて頭爆発しそうなのでそろそろ米国行きの飛行機に乗りに行きます。
635 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 13:51:55 ] どうぞ。
636 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 13:52:50 ] そのDLLを呼んでるEXEの設定はどうなのよ
637 名前:634 mailto:sage [2007/07/06(金) 15:08:31 ] >>636 最終的に写真屋のフィルタ(8bf)にするDLLなんでナカミはよぅわからんのです。 ただ、さっき「猫でも〜」の外部DLLからダイアログ呼ぶプログラムでも 試してみたけどコレもダメだったので 写真屋のAPIの問題っつーより私の問題らしいです。
638 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 15:52:17 ] >>634 ISOLATION_AWARE_ENABLEDについて調べるんだ
639 名前:634 mailto:sage [2007/07/06(金) 21:29:52 ] うおおおおおおおおおお! プリプロセッサにISOLATION_AWARE_ENABLED書いただけで うまくいきましたッ! >>638 ありがとーーーーーーー! 愛してるッ!
640 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 22:21:54 ] きんもー☆
641 名前:デフォルトの名無しさん mailto:age [2007/07/07(土) 08:08:18 ] 任意のプロセスがCreateFileしたファイルのパス、それを取得する方法て何かないですか? 使用OSはVistaです フィルタドライバ書かなきゃいけないんでしょうか?…
642 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 08:26:24 ] CreateFileのAPIフッ(ry
643 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 08:52:36 ] DLL側から、呼ばれているプロセスのIDかウインドウハンドルを取得するにはどうすればいいですか? FindWindowでウインドウタイトル指定して取得していたんですが、 多重起動されたらだめじゃんってことに気が付いて・・・・ おしえてくださいm(_ _)m
644 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 09:05:30 ] 普通に自分のプロセスIDを取得しろよ。 DLLをなんだと思っているんだ?
645 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 09:43:56 ] >>642 VistaでAPIフックしたら実行時に警告出ませんか?
646 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 10:31:26 ] >>644 普通にプロセスIDを取得する方法を教えてくださいm(_ _)m
647 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 10:33:33 ] GetProcessID()
648 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 10:35:14 ] www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=3D1FBAED-D122-45CF-9D46-1CAE384097AC
649 名前:デフォルトの名無しさん [2007/07/07(土) 10:44:49 ] >>646 GetCurrentProcessId() 名前からしてそのものズバリな訳だが このくらいググれ
650 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 10:54:50 ] >>645 > VistaでAPIフックしたら実行時に警告出ませんか? そりゃあドライバでも一緒だと思うが?
651 名前:デフォルトの名無しさん [2007/07/07(土) 10:56:57 ] 人を利用する事しか頭に無い奴に回答をくれてやるな。
652 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 12:05:24 ] 32bitVistaだとドライバの場合ロゴとらないとWindowsの動作自体に制限かかるんだっけ? 64bitだとフックもドライバも現実的じゃないよな
653 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 12:15:12 ] いつも思うんだけど なんでこんなにフックしたい奴が多いんだ
654 名前:デフォルトの名無しさん [2007/07/07(土) 12:23:35 ] フックで躓く奴が多いんだと思われ 別に集まりたくてフックしたい奴らばっかり集まってるわけじゃないでそ
655 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 13:42:09 ] あやしげなソフト作ろうとしてんだろうな
656 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:36:33 ] >>649 ググるよりも前に、PlatformSDKのヘルプ、または、MSDNライブラリだろう。 検索してもいいし、普通に目次から辿っても見つけられる。 ていうか、普通に目次から辿って見つけられないのは、よほどのアレだぞ。
657 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 14:41:47 ] >>653 質問のしかたを見ると、厨房くさい やろうとしていることを見ると、怪しい >>555 あたりなんかは、 特定のサイトにアクセスしているときだけキーログを取ろうとしている とも見れるしなぁ。 怪しいプログラムを書くなら、人に聞かずに自力で何とかしろってんだ。
658 名前:デフォルトの名無しさん [2007/07/07(土) 15:09:00 ] するどい人だな。まったく想像できなかったぜ
659 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 19:10:52 ] >>653 そりゃあ2ちゃんだから釣り師が多いんだろ
660 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 19:55:26 ] 上手い事言ったつもりかも知れんが面白くない
661 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 21:45:07 ] 俺窓プログラム作って初めて実用的なの作ったのはフック使ったネトゲーツールだったな 調べながら実装したし窓プログラムの根本的な概念もそんな理解してなかったから コードはめちゃくちゃ汚かったが勉強にはなったな。 そうこうしながら1年後あたりにAPIフック使ってパケット取得ツールも作ったわ。 APIフックは俺がしょぼいからだろうが4ヶ月かかってやっとできたんだけどなw フックぐらいはちょっと頑張ればすぐできるだろ。 人に聞くのが悪いとは言わないが、フックに関しては 参考サイトいっぱいあるんだから自分で調べようぜ。 特に目的が限りなく黒に近いものを作るんならなおさら。
662 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 21:48:36 ] 単なる物臭か根性無しだろ どうせヒマ人が答えるんだしいいじゃねーか別に
663 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 21:49:53 ] オレには真っ黒にしか見えないが、 そういうことをやってる当人には灰色に見えるんだろうな
664 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 21:56:14 ] ためしに検索したらたくさんでてきた しょぼいキーロガー程度ならすぐできるな
665 名前:661 mailto:sage [2007/07/07(土) 22:06:04 ] >>663 まあ真っ黒だわなw ただ、そういうの作る奴が全部俺みたいな考えだとは思わないが 俺自身はネトゲーツール作って使おうという思考よりも 技術的な勉強をする為にそれを作ろうっていうのが どっちかって言うと大きかったな。 それの作成にあたっての動機付け(動機があったほうが頑張るから) が欲しかったからたまたまやってたネトゲーをターゲットにした感じ。 まあ、ここはそういう議論スレじゃないから以降これに関しての発言はしない。
666 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 22:15:24 ] 逆だろ。 升ツール作る為に技術的な勉強をする必要があったんだろ。 まぁ一般的な解凍ツールやブラウザとかは既に便利なものを作ってるヤツがいるからな 自分が利用する便利なツールで世の中に出回ってないものしか作ろうとしたら 真っ黒なツールしかねーんだろうけど。
667 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 22:18:43 ] フックが真っ黒ならTClockすら真っ黒だし 悪用できる技術=悪じゃないでしょ スレ違いも程々にしとけ
668 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 22:23:16 ] 犯罪幇助にしか使われなくなったら京都府警がUSER32.DLLを取り締まるから無問題。
669 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 23:30:04 ] >>668 京都府警じゃ信用ならん 神奈川県警にしとけ
670 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 23:34:47 ] フックは夢が広がるから困る
671 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 23:36:08 ] いい加減にしろ
672 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 00:00:38 ] いい加減にしろ
673 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 00:06:15 ] どうもありがとうございました。
674 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 00:25:49 ] フックってなんだよ素人の俺に説明しろ
675 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 00:26:15 ] ヒント:船長
676 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 00:34:23 ] ガッツ石松の左
677 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 00:49:02 ] ワロスw