Win32API質問箱 Build52at TECH
Win32API質問箱 Build52 - 暇つぶし2ch951:デフォルトの名無しさん
07/05/09 17:03:51
>>949
URLリンク(www.google.co.jp)

952:デフォルトの名無しさん
07/05/10 01:37:55
>>
ありがとうございます。やってみます。

953:デフォルトの名無しさん
07/05/10 04:15:56
>>951
EnumResourceNamesの第1引数に指定するHMODULEはどうやって取得すればよいですか?
LoadLibraryでHMODULEを取得しようとしましたがshell32.dllではエラーになり、
APPWIZ.DLLではLoadLibraryは成功しましたがEnumResourceTypesがTRUEを返しました。

954:デフォルトの名無しさん
07/05/10 07:41:33
ググレカス

955:デフォルトの名無しさん
07/05/10 07:57:30
>>953
> LoadLibraryでHMODULEを取得しようとしましたがshell32.dllではエラーになり、

エラーとは何か?

> APPWIZ.DLLではLoadLibraryは成功しましたがEnumResourceTypesがTRUEを返しました。

TRUEを返すと何か問題が?



956:デフォルトの名無しさん
07/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:デフォルトの名無しさん
07/05/10 08:15:28
俺も使ったことないな、最後の引数

958:デフォルトの名無しさん
07/05/10 15:26:38
Explorerの右上の旗のロゴを隠したいのですが、
SetWindowPosやShowWindowで隠そうとしても、枠が残ってしまいます。
専用の関数みたいなものがあるのでしょうか?

959:デフォルトの名無しさん
07/05/10 15:39:27
>>958
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\Explore/ShellBrowser
ITBarLayoutのアドレス0x10のバイトの下位3bit目をオフ

960:デフォルトの名無しさん
07/05/10 15:41:35
下位3bit目じゃなくて下位4bit目だった。ようするに0x08

961:デフォルトの名無しさん
07/05/10 15:54:00
>>960
できました、ありがとうございます。

962:デフォルトの名無しさん
07/05/10 21:42:34
質問です

HTMLのFORMタグでSUBMITすると何も指定していなければ
FORMのACTIONで指定したURL等に
?---=---&___=___と付とついて送信されますよね?

その時日本語が値のときにエンコードされているように見えるのですが、
これはAPIとして提供されている機能でしょうか?

そうであればAPI名を教えてくれませんか?

963:デフォルトの名無しさん
07/05/10 21:43:13
そんなWin32APIはありません。

964:デフォルトの名無しさん
07/05/10 21:50:59
METHOD=GET の話か
まあURLエンコードでググれ

965:デフォルトの名無しさん
07/05/10 22:02:44
IMultiLanguageインターフェイスのConvertStringメソッドとかあるけど、
ここじゃスレ違いかもね

966:デフォルトの名無しさん
07/05/10 22:21:50
BitBltについて質問です。
転送元と転送先が同じDCの場合でも、この関数はちゃんと動く保障はありますか?

967:デフォルトの名無しさん
07/05/10 22:39:33
>>966

厳密にはない。
GetDeviceCaps関数のRASTERCAPSで確認。

968:デフォルトの名無しさん
07/05/10 23:41:11
WINDOWPLACEMENTのshowCmdあたりをいぢってて質問。
最大化してたウィンドウが最小化したあと、元の状態に戻すにはどうすればよいですか?
SW_RESTOREだと最大化状態が解除されてしまうので。

969:デフォルトの名無しさん
07/05/11 00:50:22
Windows Picture and Fax ViewerをCreateProcessで実行したいのですが、
notepad,mspaintのような起動方法は可能でしょうか?


970:デフォルトの名無しさん
07/05/11 01:20:37
関連付けのレジストリを見れば分る

971:デフォルトの名無しさん
07/05/11 01:21:04
時々エディットコントロールのボーダーが見えなくなったり、
エディットコントロールが見えなくなって下のBMP画像が出てきたりするバグで
困っています。これらはWM_PAINTで再描画された時に直るのですが、
むしろ、WM_PAINTで大きなBMP画像が毎回毎回再描画されているせいで
エディットコントロールの表示がおかしくなるのではないかと思ってます。

BMP画像は壁紙としてウィンドウと同じサイズのものを使用しているのですが、
WM_PAINTでことある毎に再描画せずにずっと表示させるようなことは可能なのでしょうか?

972:デフォルトの名無しさん
07/05/11 05:35:42
システムを終了するときの終了オプションダイアログ(コンピューターの電源を切る)のような
完全なシステムモーダルなダイアログボックス、或いはウィンドウってどうやって作ればいいんでしょう?

ダイアログボックスにシステムモーダル属性を付けてもだめでしたorz
タイマーでフォーカスを取り返し続けるっていうのは無しで、なにかいい方法ありますか?

973:デフォルトの名無しさん
07/05/11 06:20:01
HWndにNULLを入れて

974:デフォルトの名無しさん
07/05/11 06:32:30
>>973
無理ですたorz

975:デフォルトの名無しさん
07/05/11 07:24:03
グローバルフックしたら?


976:デフォルトの名無しさん
07/05/11 07:28:52
システムモーダルつけてアド民では?

977:デフォルトの名無しさん
07/05/11 08:06:40
システム乗っ取るようなものじゃないかそれ?
そんなお手軽に実現できていいのかなあ

978:972
07/05/11 08:14:53
どうしても乗っ取りたいんです。

979:デフォルトの名無しさん
07/05/11 08:47:58
濃そうだから海外のシステム八苦系のコミュで聞いたら?答えが出ると思うよ

980:デフォルトの名無しさん
07/05/11 09:10:22
タイーホ!

981:デフォルトの名無しさん
07/05/11 09:27:54
GINA?

982:デフォルトの名無しさん
07/05/11 10:21:17
>>978は騙りだから無視して
フリーのソフトで部屋にいない間、キャプチャーしてるんだけど(LiveCapture2ってソフトです)
デスクトップロックが効かないんですよね
それで、もし誰か侵入者がロックの掛かってないPCに触ったら(マウスが移動したら)
システムモーダルのダイアログを表示してパスワードを要求する、って感じでプログラムを作ってるわけです

多分もっといい方法があるんだろうけど、結構面白いからこれでやってみようかなぁと
どんなもんでしょうか

983:デフォルトの名無しさん
07/05/11 10:27:22
誰か次スレ立てて

984:デフォルトの名無しさん
07/05/11 10:27:57
>>981
NT,2000,XPなら正解。GinaのShellShutdownDialogあたりちゃうか。

>>982
やってみれば?OSのリストア何回かすることになると思うけどw。


985:デフォルトの名無しさん
07/05/11 10:29:17
>>982
っ スクリーンセーバー

986:デフォルトの名無しさん
07/05/11 13:09:53
982のやりたいことはスクリーンセーバーそのものだよなw

987:デフォルトの名無しさん
07/05/11 14:00:42
>>971
>WM_PAINTでことある毎に再描画せずにずっと表示させるようなことは可能なのでしょうか?
それは無理。

WS_CLIPSIBLINGS とか WS_CLIPCHILDREN とかそのあたりをちゃんと理解して
適切に描画されるようにコードを直せば良い。

988:デフォルトの名無しさん
07/05/11 14:22:29
>>982
俺も >>985-986 に同意。
コアをスクリーンセーバーで作れば、OSのダイアログが利用できる。
スクリーンセーバーが稼働中に録画するような構造にすれば、
まさに君の望む挙動になるんでない?

問題はスクリーンセーバ稼働中にLiveCapture2というソフトが
ちゃんと裏で動いてくれるかどうかだけど。
そこがダメなら、そこを自作する方向に行くとか。w
仮に裏で動いてくれるなら、何も作る必要がないという事にならないか?


989:デフォルトの名無しさん
07/05/11 17:15:45
CreateDesktop してみればどうかな。
スクリーンセーバーも別デスクトップで動作していたと思う。

990:デフォルトの名無しさん
07/05/11 18:00:37
CreateDesktopしてもNT系ならCtrl+Alt+Delで解除されるよ。
パスワードかけるならスクリーンセーバーでOSに丸投げするか、GINAしかない。

991:デフォルトの名無しさん
07/05/11 18:03:14
しかしGINAはVistaでは廃止されてしまった。
Vistaで同じことやるにはMSとShell Credential Providerの開発契約しないとだめぽ

992:デフォルトの名無しさん
07/05/11 18:10:48
まじかよ・・・

993:デフォルトの名無しさん
07/05/11 18:15:22
開発契約なんぞ必要なのか?サンプルも公開されてるのに?
ドキュメントもご丁寧に日本語化されてるけど。
URLリンク(msdn.microsoft.com)

994:デフォルトの名無しさん
07/05/11 18:17:05
もういっちょ。
URLリンク(www.microsoft.com)


995:デフォルトの名無しさん
07/05/11 18:36:18
>>972
最大化したウィンドウ(タイトルバー無し、最上位)にデスクトップ画面を
描画して、そのウィンドウを親ウィンドウとしてダイアログを出せばいいんじゃね?

XPで終了ダイアログを出すと背景がだんだん白黒になっていくから
そういう仕組みでやってると思うけど。

996:デフォルトの名無しさん
07/05/11 19:51:15
>>993-994
Vistaβの頃のSDKには「詳細は問い合わせて契約してくれ」みたいな英文はあった気がした。
正規版になって普通に一般公開されたのかね。

997:デフォルトの名無しさん
07/05/11 20:21:34
デルファイでできたアプリケーションのダイアログウィンドウのハンドルについて質問です。

spy++では、親がTfrmMainというクラス名と判明しました

そこでGetWindowLongで親ハンドルを取得すると、親はTApplicationというクラス名でした。ここでもう整合性がないです

TApplicationの名前をもつハンドルを取得して、そのハンドルからダイアログハンドルを検索するためにFindWindowsExをしたのですが、Nullが返ってきました

いったいどんな親子関係なんでしょうか?
レスおながいします(´・ω・`)


998:デフォルトの名無しさん
07/05/11 20:31:28
見えない親ウインドウがある。

999:デフォルトの名無しさん
07/05/11 20:32:22 BE:124224588-2BP(222)
>>995
ホットキー止めないと。Alt+Tabとかで普通に抜けられる。

1000:デフォルトの名無しさん
07/05/11 20:32:46
次スレ
Win32API質問箱 Build53

 スレリンク(tech板)

1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch