※当サイトの一部記事にはPRが含まれます

UWSCのプログラム時、画面を閉じる処理を共通化しておくと非常に便利です。

TIPS
この記事は約3分で読めます。

「IEでウィンドウ(画面)を閉じる処理」はよくあるパターンなので、共通化すると便利ですね。

 

ウェブサイトを操作するプログラムなどを作ると、画面(ウインドウ)を閉じる処理を記述することは頻繁にあります。

 

もちろん、IEでセオリー通りにブラウザを起動した場合は、通常は「IE.quit」で閉じればOKです。

しかし、複数の画面を一気に閉じたいケース等、画面をたくさん開いたりクリックポイントで開く画面など、制御しにくい画面が出たりします。やたら、画面が開くポイントサイトとかあるし・・・。

 

このような場合は、無駄な画面を一気に閉じたいですね。複数画面(ウィンドウ)をまとめて処理する場合は、「GETALLWIN」で画面を取得して、一気に閉じてあげるのが一番です。

 

 

UWSCの「GETALLWIN」で全てのウィンドウを取得→IEの画面をCTRLWINで操作するサンプルコード。

UWSCの「GETALLWIN」で全てのウィンドウを取得し、その後にforループを回して、CTRLWIN(CLOSE)でまとめてクローズします。

例えば、サンプルコードはこんな感じです。

 

 

このサンプルの場合、

CLOSE_IE(“”)と引数無しだと、IEの全画面を閉じる

CLOSE_IE(“ポイントサイト”)とすると、「ポイントサイト」というタイトルの画面のみを閉じる

となります。

 

もちろん、もっとカスタマイズすれば、いろんな条件などを付けられますね。

また、今回のサンプルでは、「POS(“iexplore.exe”, STRCONV(STATUS(ALL_WIN_ID[i], ST_PATH),SC_LOWERCASE)) <> 0 」としており、「IE」のみを閉じるプログラムになっていますが、もちろん他のウインドウを閉じるようにすることも可能です。

 

 

【補足】共通処理のクラス化、プロセス操作による全画面削除について。

今回のような処理は、頻繁に画面を閉じる操作をする場合、共通化しておくのが便利です。UWSCのクラス化については、以下の記事に記載していますので、合わせてご確認ください。

UWSCの共通処理は、別ファイルにクラス化しておくと非常に便利ですよ。
共通処理は別ファイルに部品化しておくと、実装やメンテナンスが効率化できます。 UWSCでスクリプトを作成すると「.UWS」形式のファイルを作成するかと思います。 通常は、目的とする全ての処理をこの「.UWS」のファイルに記述します。 なので...

 

また、IEがフリーズしてしまったりしている場合は、本記事の処理では閉じられないことがあります。その場合はタスクキルしてみてください。

UWSCでCOMエラーが出たら、初心者が確認すべきチェックリスト。原因不明でもタスクキルで改善する場合もある。
マクロ・スクリプトとしてUWSCを使ってIE処理していると、たまにアプリのCOM_Error、フリーズ、クラッシュ、強制終了などが発生する場合がある。 IEなどの操作をUWSCで実行していると、以下のような現象が発生する場合があります。 「...