387 名前:381 mailto:sage [2008/11/01(土) 20:03:05 ID:OYOJEzMu0] >>386 UWSCのヘルプとか2ちゃんスレに本家、それからGoogle先生。 大事なのはWindowsアプリの仕組みを知って用語を覚えること。 そして検索の仕方。 ヘルプには検索タブで全文検索できるからそれが一番早い。 トピックを開いた後もう一度Ctrl+Fで検索しないといけないのはめんどくさいけど。 キーワードでの検索は関数名覚えてから。 関数名が独特だからGoogleでも関数名だけで普通にUWSCのサンプルコードが出てくるんだよね。 Status(ID, ST_TITLE) <> "" これで画面の出現を見るとかゆってるけど、これについては無意味かも。 実証したコードじゃなくて思いつきで入れてみた。 実際に負荷かかったためにID取得できなくて対策したコードはこれ 最初からGetID()でしたほうが簡単かもしれないけど、Exec()でID取れれば 同名ウィンドウを間違って制御してしまう問題が起きないので。 ID = Exec("mspaint.exe") while ID < 0 // IDが取得できるまで待つ sleep(0.1) ID = GetID("無題 - ペイント") wend IEで「名前を付けて保存」ダイアログを出すときに、僕はWindows APIの GetWindow( IDToHnd(ID), GW_ENABLEDPOPUP ) を使ってるんだけど、 ハンドル取得時は実は「ファイルを開く」ダイアログとして起動されてコントロールできない。 これが少し待てば保存ダイアログに変身するので、それを待つためにタイトルをチェックしてる。 普通にUWSCの関数でGetID("名前を付けて保存") とすれば、成功した場合タイトルは一致してるので取得して比較とかは意味がない。 わざわざ複雑な方法を取るのは、同名ウィンドウで制御が止まる問題があるので、それを回避するため。