EXECエグゼック関数

本ページには広告が含まれています。

アプリを起動します。第二引数(同期フラグ)にTRUEを指定した場合は呼び出したアプリが終了するまで処理を待機し、ウィンドウIDの代わりに終了コードを受け取ります。 終了コード は呼び出された側のUWSファイルの<ruby>EXITEXIT文<rt></rt></ruby>から受け取ることができます。

構文
  1. Integer = EXEC( exe名, 同期フラグ, X, Y, 幅, 高さ )
引数
exe名 (String)必須
起動したいアプリ名
同期フラグ (Boolean = False)省略可
FALSE
待たない(デフォルト)
TRUE
そのアプリが終了するまで待つ
X (Integer)省略可
Window位置X
Y (Integer)省略可
Window位置Y
幅 (Integer)省略可
Window幅
高さ (Integer)省略可
Window高さ
戻り値
そのWindowを識別するIDを返す
終了待ちが指定された場合は、そのアプリの終了コードを返す
注:ストアアプリ、Explorer等の別プロセスを呼ぶものは、期待どおりに戻値を返さない事がある

使い方

アプリのパスを指定

C:\Program Files (x86)\UWSC\UWSC.exeを起動しウィンドウIDを出力します。起動するアプリのパスを指定します。

UWSC
結果
プレーンテキスト

notepad.exeを起動します。パスが通っているアプリであればファイル名だけでも起動することができます。

UWSC

第一引数に指定できるのはexe名のみなので、拡張子(.exe)は記述しなくても問題ありません。

UWSC

メモ帳を(x, y) = (0, 0)の位置で起動します。

UWSC

メモ帳を(x, y) = (0, 0)の位置、幅600、高さ400で起動します。

UWSC

コマンドライン引数

コマンドライン引数を渡すにはEXEC("exe名 引数1 [引数2] …")のように記述します。

大抵の場合、exe名に指定されたアプリで引数1のファイルが開かれます。

以下はメモ帳でsample.txtを開きます。

sample.txtは実行するUWSファイルと同じディレクトリにあります。

UWSC

ペイントでimage.pngを開く場合は以下のように記述します。

UWSC

exe名や引数にスペースが含まれる場合はその値を<#DBL>で囲みます。

UWSC
UWSCのファイルを開く

UWSファイルを呼び出すにはEXEC("UWSC ファイル名.uws [引数1] [引数2] …")の形式で指定します。呼び出された側はPARAM_STR[0]引数1PARAM_STR[1]引数2のようにアクセスできます。

以下はreadfile.uwssample.txtを引数として渡します。

UWSC

呼び出された側はPARAM_STRで引数にアクセスでき、PARAM_STR[0]にはsample.txtが代入されています。

EXEC関数sample.txtを開くことができたらメッセージボックスで内容を表示し、 終了コード として0を、ファイルが存在しないなど開くことができなかった場合は1EXEC関数の戻り値として返します。

readfile.uws

起動したいプログラム(exe)のパスの探し方

アプリを起動している状態で、タスクマネージャーを起動。[プロセス]からパスを探したいアプリを選択・右クリックし[プロパティ]を開くと、[セキュリティ]タブのオブジェクト名に記載されているパスをexe名として指定できます。

タスクマネージャーは[スタート]を右クリックし、表示されたメニューから[タスク マネージャー]をクリックで起動できます。

タスクマネージャータスクマネージャー 右クリックメニューEXCEL.EXEのプロパティ

EXECで使用できるコマンド

コマンド アプリケーション
acrord32 Adobe Reader
calc 電卓
charmap 文字コード表
cmd コマンドプロンプト
control コントロールパネル
dxdiag DirectX診断ツール
eudcedit 外字エディタ
eventvwr イベントビューア
excel Microsoft Excel
explorer エクスプローラ
magnify 拡大鏡
mmc Microsoft 管理コンソール
msconfig システム設定ユーティリティ
mspaint ペイント
mstsc リモート デスクトップ接続
notepad メモ帳
nslookup NSLOOKUP
outlook Outlook
pbrush ペイント
powerpnt Microsoft PowerPoint
regedit レジストリ エディター
regedt Registry Editor Utility
sndvol 音量ミキサー
taskmgr タスクマネージャー
winver Windows のバージョン情報
winword Microsoft Word
wordpad ワードパッド
write ワードパッド

プログラム実行例

メモ帳の右クリックメニューを表示させる

UWSC
使用関数

パソコンの音量を上げる

パソコンの音量を上げます。Windows2000以降のOSの場合は仮想キーの操作で音量を上げ、Windows 2000より前のOSの場合はボリューム調整ツールを操作することで音量を上げます。

UWSC
使用関数

パソコンの音量を下げる

パソコンの音量を下げます。Windows2000以降のOSの場合は仮想キーの操作で音量を下げ、Windows 2000より前のOSの場合はボリューム調整ツールを操作することで音量を下げます。

UWSC
使用関数

電卓を操作し計算をする

電卓を操作します。

UWSC
使用関数

メモ帳を起動し、アクティブにする

UWSC
使用関数

メモ帳のメニューバーを取得

メモ帳のメニューバーにあるすべてのメニュー項目を取得します。

メニュー項目をクリックするには[createLink url="/script/function/clkitem/"]を使います。

UWSC
結果
プレーンテキスト
使用関数

ペイントを起動

UWSC
使用関数

電卓(ストアアプリ)を起動

UWSC
使用関数

メモ帳に本文を入力し[名前を付けて保存]ダイアログボックスを開いて保存する

UWSC
使用関数

既定ブラウザで指定したURLを開く

UWSC
使用関数

ペイントを起動しウィンドウの位置とサイズを設定

UWSC
使用関数

仮想キーで文章を入力

UWSC
結果
プレーンテキスト
使用関数

メッセージボックスで処理分岐

UWSC
使用関数

メモ帳を幅400、高さ300で画面中央に表示

UWSC
使用関数

音声認識でアプリを操作

UWSC
使用関数

テキストファイルをメモ帳にドロップします

C:\Program Files (x86)\UWSC\Readme.txtをメモ帳にドラッグ&ドロップして開きます。

UWSC
使用関数

画像ファイルをペイントにドロップします

D:\Desktop\sample.pngをペイントにドラッグ&ドロップして開きます。

UWSC
使用関数

ExcelファイルとCSVファイルをExcelにドロップして開く

CREATEOLEOBJで起動したExcelにファイルをドロップするとなぜか落ちるから、EXECで起動。

UWSC
使用関数

メモ帳の指定したメニュー項目を無効化する

[ファイル]のメモ帳の終了をグレー表示でクリックできないようにする。

UWSC

他の項目は以下の表を参照。

値は、(GetSubMenu第ニ引数)と(EnableMenuItem第二引数)を表しています。

例えばフォントの場合、2-1なので以下のように指定します。

[syntaxHighlight]GetSubMenu(GETCTLHND(ID, GET_MENU_HND), 2) EnableMenuItem(hwnd, 1, MF_BYPOSITION + MF_GRAYED)[/syntaxHighlight]
項目
0-0 新規
0-1 新しいウィンドウ
0-2 開く
0-3 上書き保存
0-4 名前を付けて保存
0-6 ページ設定
0-7 印刷
0-9 メモ帳の終了
項目
1-11 置換
1-14 すべて選択
1-15 日付と時刻
項目
2-0 右端で折り返す
2-1 フォント
項目
3-0 ズーム
3-1 ステータスバー
項目
4-0 ヘルプの表示
4-1 フィードバックの送信
4-3 バージョン情報
使用関数

DLLを使ってメモ帳にメッセージを送信する

UWSC
使用関数

メモ帳のステータスバー情報を取得

UWSC
結果
プレーンテキスト
使用関数

ペイントを開いてズームを最小値に設定する

UWSC
使用関数

ペイントで設定できるズーム倍率を取得

UWSC
結果
プレーンテキスト
使用関数

ウィンドウのサイズ位置・サイズを設定

UWSC
使用関数

ウィンドウのタイトルバーを点滅させる

UWSC
使用関数

メモ帳のマウス入力とキーボード入力を一時的に無効化する

UWSC
使用関数

参考文献

  1. ファイル名を指定して実行ダイアログから起動するプログラム一覧:Windows(ウィンドウズ)の使い方

関連記事

ACW関数 (スクリプト関数)
ウィンドウの状態を変更、またはアクティブにします。
MONITOR関数 (スクリプト関数)
マルチモニタ情報を取得します。
STATUS関数 (スクリプト関数)
ウィンドウの各種状態を返します。
getBitmap関数 (自作関数)
引数に指定したビットマップ画像のサイズ・幅・高さ・ビットの深さを配列で返します。
PEEKCOLOR関数 (スクリプト関数)
指定位置の色を取得します。