1 名前:デフォルトの名無しさん [2007/04/18(水) 01:54:51 ] スレ立てるまでもない、Win32APIのついての質問はこちらへどうぞ。 やさしいお兄さんやお姉さんたちが答えてくれるかも。 過去スレ、関連リンクは>>2-5 くらい。 ■注意 ・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。 ・日本語版MSDN Online Libraryは不完全です。英語版(msdn.microsoft.com/library/ )の利用推奨。 ・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。 ・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで
952 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 01:37:55 ] >> ありがとうございます。やってみます。
953 名前:デフォルトの名無しさん [2007/05/10(木) 04:15:56 ] >>951 EnumResourceNamesの第1引数に指定するHMODULEはどうやって取得すればよいですか? LoadLibraryでHMODULEを取得しようとしましたがshell32.dllではエラーになり、 APPWIZ.DLLではLoadLibraryは成功しましたがEnumResourceTypesがTRUEを返しました。
954 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 07:41:33 ] ググレカス
955 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 07:57:30 ] >>953 > LoadLibraryでHMODULEを取得しようとしましたがshell32.dllではエラーになり、 エラーとは何か? > APPWIZ.DLLではLoadLibraryは成功しましたがEnumResourceTypesがTRUEを返しました。 TRUEを返すと何か問題が?
956 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 08:01:56 ] CreateFile の hTemplateFile って使えないの? ↓のようにやってもtest.txtの属性が、test2.txtにはコピーされないみたい。 HANDLE hFrom = ::CreateFile("c:\\test.txt", GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL); HANDLE hTo = ::CreateFile("c:\\test2.txt", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, hFrom); ::CloseHandle(hFrom); ::CloseHandle(hTo); >[in] Handle to a template file, with the GENERIC_READ access right. The template file supplies file >attributes and extended attributes for the file being created. This parameter can be NULL. 最後の一文って一体。。。
957 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 08:15:28 ] 俺も使ったことないな、最後の引数
958 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 15:26:38 ] Explorerの右上の旗のロゴを隠したいのですが、 SetWindowPosやShowWindowで隠そうとしても、枠が残ってしまいます。 専用の関数みたいなものがあるのでしょうか?
959 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 15:39:27 ] >>958 HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\Explore/ShellBrowser ITBarLayoutのアドレス0x10のバイトの下位3bit目をオフ
960 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 15:41:35 ] 下位3bit目じゃなくて下位4bit目だった。ようするに0x08
961 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 15:54:00 ] >>960 できました、ありがとうございます。
962 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 21:42:34 ] 質問です HTMLのFORMタグでSUBMITすると何も指定していなければ FORMのACTIONで指定したURL等に ?---=---&___=___と付とついて送信されますよね? その時日本語が値のときにエンコードされているように見えるのですが、 これはAPIとして提供されている機能でしょうか? そうであればAPI名を教えてくれませんか?
963 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 21:43:13 ] そんなWin32APIはありません。
964 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 21:50:59 ] METHOD=GET の話か まあURLエンコードでググれ
965 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 22:02:44 ] IMultiLanguageインターフェイスのConvertStringメソッドとかあるけど、 ここじゃスレ違いかもね
966 名前:デフォルトの名無しさん mailto:age [2007/05/10(木) 22:21:50 ] BitBltについて質問です。 転送元と転送先が同じDCの場合でも、この関数はちゃんと動く保障はありますか?
967 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 22:39:33 ] >>966 厳密にはない。 GetDeviceCaps関数のRASTERCAPSで確認。
968 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 23:41:11 ] WINDOWPLACEMENTのshowCmdあたりをいぢってて質問。 最大化してたウィンドウが最小化したあと、元の状態に戻すにはどうすればよいですか? SW_RESTOREだと最大化状態が解除されてしまうので。
969 名前:デフォルトの名無しさん [2007/05/11(金) 00:50:22 ] Windows Picture and Fax ViewerをCreateProcessで実行したいのですが、 notepad,mspaintのような起動方法は可能でしょうか?
970 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 01:20:37 ] 関連付けのレジストリを見れば分る
971 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 01:21:04 ] 時々エディットコントロールのボーダーが見えなくなったり、 エディットコントロールが見えなくなって下のBMP画像が出てきたりするバグで 困っています。これらはWM_PAINTで再描画された時に直るのですが、 むしろ、WM_PAINTで大きなBMP画像が毎回毎回再描画されているせいで エディットコントロールの表示がおかしくなるのではないかと思ってます。 BMP画像は壁紙としてウィンドウと同じサイズのものを使用しているのですが、 WM_PAINTでことある毎に再描画せずにずっと表示させるようなことは可能なのでしょうか?
972 名前:デフォルトの名無しさん [2007/05/11(金) 05:35:42 ] システムを終了するときの終了オプションダイアログ(コンピューターの電源を切る)のような 完全なシステムモーダルなダイアログボックス、或いはウィンドウってどうやって作ればいいんでしょう? ダイアログボックスにシステムモーダル属性を付けてもだめでしたorz タイマーでフォーカスを取り返し続けるっていうのは無しで、なにかいい方法ありますか?
973 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 06:20:01 ] HWndにNULLを入れて
974 名前:デフォルトの名無しさん [2007/05/11(金) 06:32:30 ] >>973 無理ですたorz
975 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 07:24:03 ] グローバルフックしたら?
976 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 07:28:52 ] システムモーダルつけてアド民では?
977 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 08:06:40 ] システム乗っ取るようなものじゃないかそれ? そんなお手軽に実現できていいのかなあ
978 名前:972 [2007/05/11(金) 08:14:53 ] どうしても乗っ取りたいんです。
979 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 08:47:58 ] 濃そうだから海外のシステム八苦系のコミュで聞いたら?答えが出ると思うよ
980 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 09:10:22 ] タイーホ!
981 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 09:27:54 ] GINA?
982 名前:デフォルトの名無しさん [2007/05/11(金) 10:21:17 ] >>978 は騙りだから無視して フリーのソフトで部屋にいない間、キャプチャーしてるんだけど(LiveCapture2ってソフトです) デスクトップロックが効かないんですよね それで、もし誰か侵入者がロックの掛かってないPCに触ったら(マウスが移動したら) システムモーダルのダイアログを表示してパスワードを要求する、って感じでプログラムを作ってるわけです 多分もっといい方法があるんだろうけど、結構面白いからこれでやってみようかなぁと どんなもんでしょうか
983 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 10:27:22 ] 誰か次スレ立てて
984 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 10:27:57 ] >>981 NT,2000,XPなら正解。GinaのShellShutdownDialogあたりちゃうか。 >>982 やってみれば?OSのリストア何回かすることになると思うけどw。
985 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 10:29:17 ] >>982 っ スクリーンセーバー
986 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 13:09:53 ] 982のやりたいことはスクリーンセーバーそのものだよなw
987 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 14:00:42 ] >>971 >WM_PAINTでことある毎に再描画せずにずっと表示させるようなことは可能なのでしょうか? それは無理。 WS_CLIPSIBLINGS とか WS_CLIPCHILDREN とかそのあたりをちゃんと理解して 適切に描画されるようにコードを直せば良い。
988 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 14:22:29 ] >>982 俺も >>985-986 に同意。 コアをスクリーンセーバーで作れば、OSのダイアログが利用できる。 スクリーンセーバーが稼働中に録画するような構造にすれば、 まさに君の望む挙動になるんでない? 問題はスクリーンセーバ稼働中にLiveCapture2というソフトが ちゃんと裏で動いてくれるかどうかだけど。 そこがダメなら、そこを自作する方向に行くとか。w 仮に裏で動いてくれるなら、何も作る必要がないという事にならないか?
989 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 17:15:45 ] CreateDesktop してみればどうかな。 スクリーンセーバーも別デスクトップで動作していたと思う。
990 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 18:00:37 ] CreateDesktopしてもNT系ならCtrl+Alt+Delで解除されるよ。 パスワードかけるならスクリーンセーバーでOSに丸投げするか、GINAしかない。
991 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 18:03:14 ] しかしGINAはVistaでは廃止されてしまった。 Vistaで同じことやるにはMSとShell Credential Providerの開発契約しないとだめぽ
992 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 18:10:48 ] まじかよ・・・
993 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 18:15:22 ] 開発契約なんぞ必要なのか?サンプルも公開されてるのに? ドキュメントもご丁寧に日本語化されてるけど。 ttp://msdn.microsoft.com/msdnmag/issues/07/01/CredentialProviders/default.aspx?loc=jp
994 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 18:17:05 ] もういっちょ。 ttp://www.microsoft.com/downloads/details.aspx?familyid=B1B3CBD1-2D3A-4FAC-982F-289F4F4B9300&displaylang=en
995 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 18:36:18 ] >>972 最大化したウィンドウ(タイトルバー無し、最上位)にデスクトップ画面を 描画して、そのウィンドウを親ウィンドウとしてダイアログを出せばいいんじゃね? XPで終了ダイアログを出すと背景がだんだん白黒になっていくから そういう仕組みでやってると思うけど。
996 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 19:51:15 ] >>993-994 Vistaβの頃のSDKには「詳細は問い合わせて契約してくれ」みたいな英文はあった気がした。 正規版になって普通に一般公開されたのかね。
997 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 20:21:34 ] デルファイでできたアプリケーションのダイアログウィンドウのハンドルについて質問です。 spy++では、親がTfrmMainというクラス名と判明しました そこでGetWindowLongで親ハンドルを取得すると、親はTApplicationというクラス名でした。ここでもう整合性がないです TApplicationの名前をもつハンドルを取得して、そのハンドルからダイアログハンドルを検索するためにFindWindowsExをしたのですが、Nullが返ってきました いったいどんな親子関係なんでしょうか? レスおながいします(´・ω・`)
998 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 20:31:28 ] 見えない親ウインドウがある。
999 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 20:32:22 BE:124224588-2BP(222)] >>995 ホットキー止めないと。Alt+Tabとかで普通に抜けられる。
1000 名前:デフォルトの名無しさん mailto:sage [2007/05/11(金) 20:32:46 ] 次スレ Win32API質問箱 Build53 ttp://pc11.2ch.net/test/read.cgi/tech/1178882828/
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。