# OS判定 /////////////////////////////////////////////// # OSバージョンを取得してOS名を表示 # および、各種システム情報を表示 #//////////////////////////////////////////////////////// $set FColor=RGB(0,0,255) '青 $set BColor=RGB(230,255,255) '薄い水色 /message-show "現在 Format(Now(),yyyy/mm/dd hh:nn:ss)\n\nOS名: GetOsName()\nVersion: GetOsVersion()\nPlatformID: GetOsPlatform()\n64bitCPU: CBool(Is64bit())\n\nInternet: CBool(IsInetConnect())\nIP address: GetIPAddress()\nMac address: GetMacAddress()\n\nDef.printer: GetDefaultPrinter()\nPC name: GetPcName()\nUser name: GetUserName()\n\nScreen size: GetScreenX() x GetScreenY()",10,,,,,,24,%FColor%,%BColor%,"MS ゴシック"
# ループと条件判定 ////////////////////////////////////// # # リストボックスの使用、キーによる停止、ループ離脱 # # $do 〜 $while-loop 10回メッセージ表示 # $if により5回目以下は文字赤 #//////////////////////////////////////////////////////// $set n = ListBox("回数を選択","1\n2\n3\n4\n5\n6\n7\n8\n9\n10",8,,,150,250,12) $if %n% == "" $end 'キャンセル→終了 $call MsgBox("「ESC」キーで中止します") $do $if %n%<=5 '5以下? /message-show %n%,2,,,,,,144,"rgb(255,,)" '赤 $else '以外 /message-show %n%,2,,,,,,144,"rgb(,255,)" '緑 $endif $set n -= 1 '1 減算 $if IsKeyPressed(27) $exit-loop 'ループオフ $loop-while %n%>0 $end
# 文言出現監視 ///////////////////////////////////////// #//////////////////////////////////////////////////////// # # 関数を使って文言監視を行う # # マッチした文字列が返却されるので判り易い # # GetMsgAppear("%監視文言%",1,0) # # 大阪市.+区−大阪市xxx区 の文字列を含むウィンドウ # 1 −正規表現「.+」(任意の1個以上の文字) # 0 −IEを監視対象に含めない # # # 注:IEを監視対象に含める場合、このウィンドウを開いていると、 # このウィンドウ内の文字列に反応するので注意! # $set 監視文言=InputBox("監視する文言を入力して下さい","文言入力","大阪市.+区") $if %監視文言% == "" $end 'キャンセル→処理終了 $set LpSw = 1 'ループスイッチオン $do-while %LpSw% $set Str = GetMsgAppear(%監視文言%,1,0) $if %Str% <> "" '検出! /msg %Str% $set LpSw = 0 'ループスイッチオフ $endif /wait 1000 '監視周期 $loop
# 指定時刻まで待機(1)残時間表示 ///////////////////// #//////////////////////////////////////////////////////// $set Default=Format(Now()+Timeserial(0,2,0),"hh:nn") '2分後−InputBoxの既定値 Retry: $set 予定時刻=InputBox("予定時刻を入力して下さい。\n\n例: %Default%","指定時刻まで待機",%Default%) $if %予定時刻% == "" $end 'キャンセル $if IsDate(%予定時刻%) == false '時刻形式で無い $call MsgBox("入力値が正しくありません!") 'エラーメッセージ $goto Retry '再入力 $endif $do-while 1 '無限ループ $set t=CDate(Today())+CDate(%予定時刻%)-Now() '残時間計算 /message-show "Format(%t%,hh:nn:ss)",-1,,0,0 'Modeless表示 $if %t% <= 0 $exit-loop '残時間が0以下→終了 /wait 1000 'CPU負荷軽減の為、1秒間隔でループ $loop /sound sound-no:2 time:5 $call MsgBox("ちょうど時間となりました!") $end
# 指定時刻まで待機(2)残時間はタイトルバーに表示 ///// #//////////////////////////////////////////////////////// $set Default=Format(Now()+Timeserial(0,2,0),"hh:nn") '2分後−InputBoxの既定値 Retry: $set 予定時刻=InputBox("予定時刻を入力して下さい。\n\n例: %Default%","指定時刻まで待機",%Default%) $if %予定時刻% == "" $end 'キャンセル $if IsDate(%予定時刻%) == false '時刻形式で無い $call MsgBox("入力値が正しくありません!") 'エラーメッセージ $goto Retry '再入力 $endif /wait-until %予定時刻% $call MsgBox("ちょうど時間となりました!") $end
# ポイント位置の色コード取得 ////////////////////////////////////////// #//////////////////////////////////////////////////////// # # マウスポインタ直下の色を取得し、RGBの成分に分解 # 無限ループにて、それぞれの色コードを10進と16進数で表示 # # ・実行中はフォームを最小化 # ・「エスケープ」キーで停止 # # ちらつき防止の為に色に変化が無い場合は再表示しない。 # # − エスケープキーで停止 $set rc = MsgBox("「ESC」(エスケープ)キーで停止します。\n\nキャンセル → 処理中止"\n\n → 本体は最小化,1,"開始確認") $if %rc% == 2 $end 'キャンセル→終了 $call SetWindowState(,"minimized") '最小化 $set color = 0 $set LpSw = 1 'ループスイッチオン $do-while %LpSw% $set c=GetPixelPoint() 'ポイント位置 $if %c% <> %color% $set color=%c% 'ポイント位置の色 $set r=GetRValue(%color%) '赤成分 $set g=GetGValue(%color%) '緑成分 $set b=GetBValue(%color%) '青成分 /msg "%color%(Hex(%color%))\n 赤成分:%r%(Hex(%r%))\n 緑成分:%g%(Hex(%g%))\n 青成分:%b%(Hex(%b%))\n\n「ESC」キーで停止",-1,,10,10 'モードレスメッセージウィンドウ $endif $if IsKeyPressed(27) $set LpSw = 0 'ループスイッチオフ $loop $call SetWindowState(,"normal") '元のサイズに戻す $end
# 指定位置の文字列を監視 ////////////////////////////// #//////////////////////////////////////////////////////// # # YAHOOを起動して検索ボックス内の文字列を監視する # # 指定の文字列−ここでは"This is a pen." を含む文字列 # が入力されたら、左上に入力文字の全文を表示する。 # $set target_string = "This is a pen." $set compare = 1 '大小文字を区別しない 0:区別する $set id ="srchtxt" '検索ボックス名 $set time_span = 2 '監視間隔(秒) # YAHOOを新しいウィンドウ、最大で開く $set rc= SetIeNavigate("http://www.yahoo.co.jp/",-1,2) $set rc= SetIePoint("id",%id%) '指定位置をポイント $set x = GetCursorPosX() 'マウス座標を取得 $set y = GetCursorPosY() /message-show "検索ボックスに文字列を入力してみて下さい。\n\n %target_string% \n\n を含む文字列入力するとヒットします。\n\n 本体は最小化します。 \n\n",999 $call SetWindowState(,"minimized") '最小化 Retry: $set rc = GetAccValue(%x%,%y%) '文字列を取得 $if InStr(%rc%,%target_string%,%compare%)>0 '含まれる? $call DspMsg(%rc%) $endif /wait %time_span%*1000 '待機 $goto Retry 'リトライ #----------------------------------------- # ユーザー関数 #----------------------------------------- $function DspMsg(msg) /msg "ヒット − %msg%",4,,0,0 $return
# ポイント位置の文字列取得 ///////////////////////////// #//////////////////////////////////////////////////////// # # マウスポインタ直下の文字列を取得 # ・実行中はタスクトレイに収納 # ・「エスケープ」キーで停止 # # ちらつき防止の為に文字情報に変化が無い場合は再表示しない # $set rc = MsgBox("「ESC」(エスケープ)キーで停止します。\n\nキャンセル → 処理中止"\n\n → 本体はタスクトレイに収納,1,"開始確認") $if %rc% == 2 $end 'キャンセル→終了 $call SetTaskTray("in") 'タスクトレイ収納 $set Accid="" $set LpSw=1 'ループスイッチオン $do-while %LpSw% 'ループスイッチがオンの間実行 $set n=GetAccName() 'ポイント位置 AccName $if %n% <> %AccName% $set Accid=%n% /msg "Name:%AccName% \nValue:GetAccValue()\nRole :GetAccRole()\nDesc.GetAccDescription()\nAction:GetAccDefaultAction() \n\n「ESC」キーで停止",-1,,10,10,350,200,15 'モードレスメッセージウィンドウ $endif $if IsKeyPressed(27) $set LpSw = 0 'エスケープキー → ループスイッチオフ $loop $call SetTaskTray("out") 'タスクトレイから出す $end
# CPU使用率 ////////////////////////////////////////// #//////////////////////////////////////////////////////// # # CPU使用率を20秒間計測して結果を表示 # $set time_span = 20 '計測時間(秒) $set limit = 5 '限界値(%) $set proc_name = "" 'プロセス名(空白時はCPU全体) # $set proc_name = "" 'プロセスを指定する場合(部分入力可) /msg "計測開始 %time_span%秒間",-2 $set cpu_utl=GetCpuUtilization(%proc_name%,%time_span%) $if %cpu_utl% == -1 /msg "指定プロセス %proc_name% 無し" $elseif %cpu_utl% == -2 /msg "指定プロセス %proc_name% 複数マッチ" $else $set msg = "CPU使用率 = Format(%cpu_utl%,'0.0') % %proc_name% %time_span%秒間" $if %cpu_utl% > %limit% $set msg += "\n\n %limit% %を超えていましたヨ! " $endif /msg %msg% $endif /msg "計測終了",2 $end
# CPU使用率連続表示 ////////////////////////////////// #//////////////////////////////////////////////////////// # 2秒周期でCPU使用率を計測して表示。30秒間 # /msg の時間に -1 を指定することでモードレスにメッセージ表示 # $set total_time = 30 '計測総時間(秒) $set time_span = 2 '計測周期(秒) $call timer(0) '秒タイマー初期化 $do $set CpuUtl = "Format(GetCpuUtilization(,%time_span%),'0.00')%" $set t = %total_time% - timer() '残り秒数 /msg "%CpuUtl% 残Format( %t%,'0.0')秒",-1 $loop-while %t% > 0 /msg "計測終了",2
# CPU使用率−個別プロセス /////////////////////////// #//////////////////////////////////////////////////////// # # 指定したプロセスのCPU使用率を計測 # 使用率が限界値をオーバーした場合、所定の処理を行う # 本例ではウィンドウズ・メディアプレーヤーを監視 $set proc = "wmplayer.exe" '監視するプロセス名 $set total_time = 60 '計測総時間(秒) $set time_span = 2 '計測周期(秒) $set limit = 10 '使用率限界値(%) $call timer(0) '秒タイマー初期化 $do $set CpuUtl =GetCpuUtilization(%proc%,%time_span%) $if %CpuUtl% == -1 $call MsgBox("指定のプロセスは存在しません! \n\n %proc%") $end $elseif %CpuUtl% == -2 $call MsgBox("指定のプロセスは複数個マッチしました! \n\n %proc%") $end $endif $set t = %total_time% - timer() '残り秒数 /msg "%proc% \n Format(%CpuUtl%,'0.00')% 残Format( %t%,'0.0')秒",-1,,GetScreenX()-320,GetScreenY()-180 $if %CpuUtl% > %limit% '限界値オーバー? # ここにオーバーした場合の処理を記述 ---- $call MsgBox("Over Value format(%CpuUtl%,'0.0')%") # プロセス強制終了 # $call TerminateProcess( %proc% ) '複数個有ったら全てを終了 $end # --------------------------------------- $endif $loop-while %t% > 0 /msg "計測終了",2
# CPU使用率−個別プロセス(リストから選択) ///////// #//////////////////////////////////////////////////////// # # リストから選択したプロセスのCPU使用率を計測 $set total_time = 60 '計測総時間(秒) $set time_span = 2 '計測周期(秒) $set limit = 10 '使用率限界値(%) $set Procid="" 'プロセス名 $set ProcId=0 'プロセスID $set Idx=0 $set ListTitle="プロセス一覧 No Id Name ThreadCnt ParentId Priority" $set ListItem="" #-- プロセスリスト作成 --------------------- /message-show "プロセス一覧作成中・・・",-1 $do $set Idx +=1 # それぞれの項目値を取得 $set Procid=GetProcessInfo(%Idx%,1) $set ProcId=GetProcessInfo(%Idx%,3) $if %ProcId% =="" $exit-loop 'IDが空白→終了 $set ListItem += format(%Idx%,"@@@"){tab}Format(%ProcId%,"@@@@"){tab}%ProcName%\n $loop-while %ProcId% <> "" 'プロセスIDが空白で無い間ループ /message-close #-- リスト表示&項目選択 ------- $set rc=ListBox(%ListTitle%,%ListItem%,2,,,,,11,5 10 30 35 40) 'リストボックス表示 $if %rc% == "" $end 'キャンセル $endif #-- 計測処理 ------------------- $set ProcId=GetSplit(%rc%,"{tab}",2) 'プロセスIDを切り出す $set Procid=GetSplit(%rc%,"{tab}",3) 'プロセス名を切り出す $call timer(0) '秒タイマー初期化 /message-show "計測開始",1 $do $set CpuUtl =GetCpuUtilization(%ProcName%,%time_span%,%ProcId%) $if %CpuUtl% == -1 $call MsgBox("指定のプロセスは存在しません! \n\n %ProcName%") $end $elseif %CpuUtl% == -2 $call MsgBox("指定のプロセスは複数個マッチしました! \n\n %ProcName%") $end $endif $set t = %total_time% - timer() '残り秒数 /msg "%ProcName% \n Format(%CpuUtl%,'0.00')% 残Format( %t%,'0.0')秒",-1,,GetScreenX()-320,GetScreenY()-180 $loop-while %t% > 0 /msg "計測終了",2
# プロセスIDからプロセス(ファイル)名を取得 //// #//////////////////////////////////////////////// # # 入力するIDは、Ctrl+Alt+Del にてタスクマネージャを起動して # 選んで下さい。 # Retry: $set ProcId = InputBox("プロセスIDを入力して下さい","プロセスID入力",0) $set ProcName = "" $if %ProcId% == "" $end $set Idx = 0 'インデックス $do '検索開始 $set Idx += 1 'インデックスアップ $set rc = GetProcessInfo(%Idx%,3) 'プロセスID取得 $if %rc% == "" $exit-loop 'インデックスオーバー $if %rc% == %ProcId% 'ID一致? $set ProcName = GetProcessInfo(%Idx%,1) 'プロセス名 $exit-loop $endif $loop while 1 $if %ProcName% == "" $call MsgBox("指定のIDは見つかりませんでした。",,"無し") $goto Retry $else $call MsgBox("お探しの ID=%ProcId% は、\n\n %ProcName% \n\n です。",,"発見") $endif
# プロセス終了ツール /////////////////////////////// #//////////////////////////////////////////////////// # # プロセスリストを表示して、 # 選択されたプロセスを強制終了させる # #//////////////////////////////////////////////////// $set Procid="" 'プロセス名 $set ProcId=0 'プロセスID $set ThreadCnt=0 'スレッド個数 $set ParentId=0 '親プロセスID $set Priority=0 'プライオリティ $set Idx=0 $set ListTitle="プロセス一覧 No Id Name ThreadCnt ParentId Priority" $set ListItem="" #-- プロセスリスト作成 --------------------- /message-show "プロセス一覧作成中・・・",-1 $do $set Idx +=1 # それぞれの項目値を取得 $set Procid=GetProcessInfo(%Idx%,1) $set ProcId=GetProcessInfo(%Idx%,3) $set ThreadCnt=GetProcessInfo(%Idx%,4) $set ParentId=GetProcessInfo(%Idx%,5) $set Priority=GetProcessInfo(%Idx%,6) $if %ProcId% =="" $exit-loop 'IDが空白→終了 $set ListItem+= Format(%Idx%,"@@@"){tab}Format(%ProcId%,"@@@@"){tab}%ProcName%{tab}Format(%ThreadCnt%,"@@@"){tab}Format(%ParentId%,"@@@@"){tab}Format(%Priority%,"@@@")\n $loop-while %ProcId% <> "" 'プロセスIDが空白で無い間ループ /message-close #-- リスト表示&項目選択 ------------------- $set rc=ListBox(%ListTitle%,%ListItem%,2,,,,,11,5 10 30 35 40) 'リストボックス表示 $if %rc% == "" $end 'キャンセル $else #-- プロセス終了処理 -------------------- $set ProcId=GetSplit(%rc%,"{tab}",2) 'プロセスIDを切り出す $set Procid=GetSplit(%rc%,"{tab}",3) 'プロセス名を切り出す $set msg="%ProcId% %ProcName% を終了させてよいですか?" $set rc=MsgBox(%msg%,1+256,"プロセス終了確認") 'OK キャンセル - キャンセルボタンを既定値 $if %rc% == 1 'OK $set rc=MsgBox("本当に終了させてよいですか?",1+256,"再確認") $set rc=TerminateProcess(%ProcName%,%ProcId%) $if %rc% == 0 $call MsgBox("完了!") $endif $endif $endif
# プロセス排他起動 #///////////////////////////////////////// # 無限ループ # メモ帳が起動していたら電卓を閉じる # メモ帳が起動していなかったら電卓を起動 # $do-while 1 '無限ループ $if IsApExist(,メモ帳)=1 'メモ帳起動中? $if IsApExist(,電卓)=1 '電卓起動中 /window-quit 電卓 '電卓終了 $endif $else 'メモ帳起動無し $if IsApExist(,電卓)=0 '電卓起動無し? /window-open calc '電卓起動 $endif $endif /wait 500 '0.5秒待ち $loop
# イメージ変化監視 ////////////////////////////////////// #//////////////////////////////////////////////////////// # # イメージの変化を監視する−座標(100,100)幅高48pixel # 最大待ち時間 10秒 # Retry: $set tMax = InputBox("制限時間(秒)を入力","入力",10) $if %tMax% == "" $end 'キャンセル $if IsNumeric(%tMax%) == 0 $goto Retry '非数値 $if %tMax% <= 0 $goto Retry '負 $call Timer(0) '秒タイマー初期化 $set rc = WaitImgChange(1000*%tMax%,100,100,48,48) 'イメージ変化待ち $set t = Timer() '秒タイマー $switch %rc% $case 0 '正常 /msg "変化を検知 − Format(%t%,'0.00')秒",,,,,,,48,"RGB(,,255)" '青文字 $case 1 'タイムアウト? /msg "タイムアウト",,,,,,,48,"RGB(255,,)" '赤文字 $default 'その他 /msg "その他のエラー",,,,,,,48 $end-switch
# イメージ変化を継続監視 /////////////////////////////// #//////////////////////////////////////////////////////// # # イメージの変化を監視する−座標(100,100)幅高48pixel # 変化があったら、左下隅(「スタート」ボタン(Win7の場合))をクリック # 最大待ち時間 10秒 # Retry: $set tMax = InputBox("制限時間(秒)を入力","入力",10) $if %tMax% == "" $end 'キャンセル $if IsNumeric(%tMax%) == 0 $goto Retry '非数値 $if %tMax% <= 0 $goto Retry '負 $do-while 1 '継続ループ $call Timer(0) '秒タイマー初期化 $set rc = WaitImgChange(1000*%tMax%,100,100,48,48) 'イメージ変化待ち $set t = Timer() '秒タイマー開始 $switch %rc% $case 0 '正常 /mouse-leftclick 30,-20 '左下隅(「スタート」キー?)をクリック /wait 1000 '1秒そのまま /mouse-leftclick 30,-20 '左下隅(「スタート」キー?)を再度クリック /wait 500 '0.5秒後に監視再開 $case 1 'タイムアウト? /msg "タイムアウト",,,,,,,48,"RGB(255,,)" '赤文字 $default 'その他 /msg "その他のエラー",,,,,,,48 $end-switch $loop
# イメージ変化監視(変化率を求める) # # 画像変化率を求める # # 0.5秒周期で枠内を監視 # 変化した部分の比率を表示 # # 「開始」すると、0.00000 が表示されます。 # 監視枠内に別のフォーム(メモ帳)などを部分的に重ねると、 # 監視枠内の元のイメージから変化した部分の面積比が表示される。 # 0.5秒経過すると、表示値は 0.00000 に戻る。(変化後のイメージを初期画像とするため) $do-while 1 $set rc = GetImgChange(500,200,300,50,50) $set rc = format(%rc%,"0.00000") /message-show %rc%,-1,,,,200,100 $loop $call GetImgChange() #監視枠消去
# 関数コール /////////////////////////////////////////// #//////////////////////////////////////////////////////// #===================================================== # プログラム本体 #---------------------------------------------------- $call DspMsg("二乗平均を求めます") Retry1: $set p1 = InputBox("数値1を入力して下さい。1〜99 の数値","数値1入力",4) $if %p1%=="" $goto P_END 'キャンセル → 終了 $if CheckDt(%p1%,1,99)<>0 $goto Retry1 'チェックNG Retry2: $set p2 = InputBox("数値2を入力して下さい。1〜99 の数値","数値2入力",5) $if %p2%=="" $goto P_END 'キャンセル → 終了 $if CheckDt(%p2%,1,99)<>0 $goto Retry2 'チェックNG START: $set rc=SqrAvg(%p1%,%p2%) '二乗平均を求めて変数にセット $call DspMsg("%p1%と%p2%二乗平均 = Format(%rc%,'0.000')",72) '小数点以下3桁に整形して表示 $call DspMsg("プログラム終了",32,"rgb(255,,)") P_END: $end '=============================== プログラム終了 #===================================================== # 関数部 #---------------------------------------------------- #----------------------------------------------------- # 入力チェック # パラメータ p:チェックする値 nMax:最大値 nMin:最小値 # 戻り値 -1:非数値 -2:範囲外の値 #----------------------------------------------------- $function CheckDt(p,nMin,nMax) $set rc =0 $if IsNumeric(%p%)==0 $Call DspMsg("非数値が入力されました!") $set rc=-1 $elseif (%p%<%nMin%) || (%p%>%nMax%) $Call DspMsg("範囲外の数値が入力されました!") $set rc=-2 $endif $return %rc% $end-function #----------------------------------------------------- # 二乗平均を求める関数 # パラメータ n1:数値1 n2:数値2 #----------------------------------------------------- $function SqrAvg(n1,n2) '関数定義 $call DspMsg("計算開始",32,"rgb(255,,)") '関数内から関数をコール $set rc=Sqr((%n1%*%n1%+%n2%*%n2%)/2) ' 二乗平均を求めて変数にセット $return %rc% '返却値 # $return Sqr((%n1%*%n1%+%n2%*%n2%)/2) 'まとめて書いても可 $end-function #----------------------------------------------------- # メッセージ表示 # パラメータ # Msg:文言 FontSize:フォントサイズ FontColor:文字色 #----------------------------------------------------- $function DspMsg(Msg,FontSize,FontColor) /message-show %Msg%,2,,,,,,%FontSize%,%FontColor% $return $end-function
# 関数コール インクルードファイル ////////////////////// #//////////////////////////////////////////////////////// #===================================================== # プログラム本体 #---------------------------------------------------- $call DspMsg("二乗平均を求めます") Retry1: $set p1 = InputBox("数値1を入力して下さい。1〜99 の数値","数値1入力",1) $if %p1%=="" $goto P_END 'キャンセル → 終了 $if CheckDt(%p1%,1,99)<>0 $goto Retry1 'チェックNG Retry2: $set p2 = InputBox("数値2を入力して下さい。1〜99 の数値","数値2入力",2) $if %p2%=="" $goto P_END 'キャンセル → 終了 $if CheckDt(%p2%,1,99)<>0 $goto Retry2 'チェックNG START: $set rc=SqrAvg(%p1%,%p2%) '二乗平均を求めて変数にセット $call DspMsg("%p1%と%p2%二乗平均 = Format(%rc%,'0.000')",72) '小数点以下3桁に整形して表示 $call DspMsg("プログラム終了",32,"rgb(255,,)") P_END: $end '=============================== プログラム終了 $include<Parts\func.dat> 'インクルードファイル
# IEデータ取得 /////////////////////////////////////// #//////////////////////////////////////////////////////// # # ここでは、YAHOOのトップページの # 「ニューストピックス」「クローズアップ」「株式ランキング」 # をそれぞれ5秒間表示する # $set Url = "http://www.yahoo.co.jp/" 'YAHOO URL # ニューストピックス $set Dt = GetIeData(%Url%,"topicsfb") /msg "ニューストピックス\n-----\n\n%Dt%",5,,,,,,11 # クローズアップ $set Dt = GetIeData(%Url%,"closeupindex") /msg "クローズアップ\n-----\n\n%Dt%",5,,,,,,11 # 株式ランキング $set Dt = GetIeData(%Url%,"stockranking") /msg "株式ランキング\n-----\n\n%Dt%",5,,,,,,11
# IE詳細項目取得 チェックボックス /////////////////// #//////////////////////////////////////////////////////// # # チェックボックスのそれぞれのチェック状態を調べる # # $set url ="../../../../test/item_check.html" $call SetIeNavigate(%url%,-1,2) /message-show "%url% \n の「どのOSがチェックされているか」を調べます。",3 $set opt ="checked" $if GetIeItemInfo(%url%,"OS1",%opt%) == 1 $call msgbox("1 番目はチェックされています。") $else $call msgbox("1 番目はチェックされていません。") $endif $if GetIeItemInfo(%url%,"OS2",%opt%) == 1 $call msgbox("2 番目はチェックされています。") $else $call msgbox("2 番目はチェックされていません。") $endif $if GetIeItemInfo(%url%,"OS3",%opt%) == 1 $call msgbox("3 番目はチェックされています。") $else $call msgbox("3 番目はチェックされていません。") $endif $if GetIeItemInfo(%url%,"OS4",%opt%) == 1 $call msgbox("4 番目はチェックされています。") $else $call msgbox("4 番目はチェックされていません。") $endif
# IE詳細項目取得&設定 ラジオボタン ///////////////// #//////////////////////////////////////////////////////// # # ラジオボタンの全項目テキストと選択インデックスを取得 # そのデータをリストボックスに反映する # $set url ="../../../../test/item_check.html" $set Id ="work" 'ID $call SetIeNavigate(%url%,-1,2) 'URLを開く(データ取得には必要無し) /message-show "%url% \n から全項目名と選択インデックスを取得",3 $set dt = GetIeItemInfo(%url%,%id%,"radio-text-all") '全項目テキスト $set idx = GetIeItemInfo(%url%,%id%,"radio-index") '選択インデックス Retry: $set rc=ListBox("職業",%dt%,%idx%,100,300,150,200,12) $switch %rc% $case "" $call msgbox("キャンセルされました。") $default $if msgbox("%rc% が選択されました。\n\n WEBページのラジオボタンの選択位置を変更してよろしいですか?",4,"リスト選択",100,300)==6 $set opt="radio-value" '選択項目名で設定 $set rc = SetIeItemInfo(%url%,%id%,"radio-value",%rc%) $set idx = GetIeItemInfo(%url%,%id%,"radio-index") '選択インデックス $goto Retry $endif $end-switch
# IE詳細項目取得&設定 プルダウンメニュー /////////// #//////////////////////////////////////////////////////// # # コンボボックスから都道府県名のデータと # 選択インデックスを取得して、リストボックスに反映 # # リストボックスで選択した項目をWEBページの選択位置とする # $set url ="../../../../test/item_check.html" $set Id ="prefecture" 'ID /message-show "%url% \n から、都道府県データをパクってきます。",3 $call SetIeNavigate(%url%,-1,2) 'URLを開く(特に必要無し) $set dt = GetIeItemInfo(%url%,%id%,"select-text-all") '全項目取得 $set idx = GetIeItemInfo(%url%,%id%,"select-index") '選択インデックス取得 Retry: $set rc=ListBox("都道府県",%dt%,%idx%,200,400,150,400,12) $switch %rc% $case "" $call msgbox("キャンセルされました。") $default $if msgbox("%rc% が選択されました。\n\n WEBページのリストボックスの選択位置を変更してよろしいですか?",4,"リスト選択",200,300)==6 $set rc = SetIeItemInfo(%url%,%id%,"select-value",%rc%) $set idx= GetIeItemInfo(%url%,%id%,"select-index") 'インデックス再取得 $goto Retry $endif $end-switch
# IE詳細項目取得&設定 リストボックス /////////////// #//////////////////////////////////////////////////////// # # リストボックスから東京23区名のデータと # 選択インデックスを取得して、リストボックスに反映 # # リストボックスで選択した区をWEBページの選択位置に変更する # $set url ="../../../../test/item_check.html" $set Id ="tokyo23ward" 'ID /message-show "%url% \n から、東京23区名データをパクってきます。",3 $call SetIeNavigate(%url%,-1,2) 'URLを開く(特に必要無し) $set dt = GetIeItemInfo(%url%,%id%,"select-text-all") '全項目取得 $set idx = GetIeItemInfo(%url%,%id%,"select-index") '選択インデックス取得 Retry: $set rc=ListBox("東京23区",%dt%,%idx%,200,350,150,400,12) $switch %rc% $case "" $call msgbox("キャンセルされました。") $default $if msgbox("%rc% が選択されました。\n\n WEBページのリストボックスの選択位置を変更してよろしいですか?",4,"リスト選択",200,300)==6 $set rc = SetIeItemInfo(%url%,%id%,"select-value", %rc%) '選択項目名で設定 $set idx= GetIeItemInfo(%url%,%id%,"select-index" ) 'インデックス再取得 $goto Retry $endif $end-switch
# IE指定タグの属性情報を取得 ///////////////////////// #//////////////////////////////////////////////////////// # # タグの種類とキーワードから目的のタグを探し出し−SetIePoint() # そのポイント位置のタグ詳細情報を取り出す−GetIeItemInfoFromPoint() # # 一回目は「検索」ボタン、2回目は「オークション」ボタンを調べる # $set url ="http://www.yahoo.co.jp" 'YAHOO $set rc = SetIeNavigate(%url%,-1,2) 'WEBページを開く $set opt = ListBox("調べる種別","id\nname\nvalue\ntext\nhref\n",3,400,400,150,200,16) $if %opt% == "" $goto End $set str = InputBox("調べる値","キーワード","検索",400,400) $if %str% == "" $goto End $call GetTagInfo(%opt%,%str%) Retry: $set opt = ListBox("調べる種別","id\nname\nvalue\ntext\nhref\n",4,400,400,150,200,16) $if %opt% == "" $goto End $set str = InputBox("調べる値",,"オークション",400,400) $if %str% == "" $goto End $call GetTagInfo(%opt%,%str%) $goto Retry '再試行 End: $end #-------------------------------------- # 表示サブルーチン #-------------------------------------- $function GetTagInfo(opt,str) $set rc = SetIePoint(%opt%,%str%) '指定のキーワードで探してポイントする $if %rc% < 0 $call MsgBox("見つかりませんでした") $return $endif # タグ詳細情報取得 --------------------- $set tagname = GetIeItemInfoFromPoint("tagname") $set id = GetIeItemInfoFromPoint("id") $set name = GetIeItemInfoFromPoint("name") $set type = GetIeItemInfoFromPoint("type") $set onclick = GetIeItemInfoFromPoint("onclick") $set href = GetIeItemInfoFromPoint("href") $set title = GetIeItemInfoFromPoint("title") # 表示 /msg "tagname = %tagname% \n id = %id% \n name = %name% \n type = %type% \n onclick = %onclick% \n href = %href% \n title = %title% \n",999,,,,,,,,,"MS ゴシック" $return
# IEデータ設定 /////////////////////////////////////// #//////////////////////////////////////////////////////// # # ダミー送信ページを使って、さまざまなデータを入力、送信する # $set Url = "../../../../web_dl/petit_tool/mrecorder/dummy_page.html" $call SetIeData(%Url%,"email","xxxx@yyyy.co.jp") $call SetIeData(,"confirm_email","xxxx@yyyy.co.jp") $call SetIeData(,"lname","蜂須賀") $call SetIeData(,"lname_kana","ハチスカ") $call SetIeData(,"fname","小六") $call SetIeData(,"fname_kana","コロク") $call SetIeData(,"zip1","770") $call SetIeData(,"zip2","0001") $call SetIeData(,"prefecture","36") $call SetIeData(,"city","阿波市") $call SetIeData(,"street","夜盗通り") $call SetIeData(,"tel1","088") $call SetIeData(,"tel2","444") $call SetIeData(,"tel3","5555") $call SetIeData(,"birth_year","3") $call SetIeData(,"birth_month","12") $call SetIeData(,"birth_day","31") $call SetIeData(,"sex_male","1") $call SetIeData(,"magazin","1") $call SetIeData(,"dummy_button") $call iewait(20000) 'IE処理完了を最長20秒待つ /wait 2000 '確認のため2秒間そのまま $call SetIeData(,"back","click") '「back」ボタンをクリック
# IE自動応答 ///////////////////////////////////////// #//////////////////////////////////////////////////////// # # IEの確認メッセージに対して自動で応答する # 自動応答はIEに限らず、他のアプリに対しても同じように応答可 # $set Url = "../../../../web_dl/petit_tool/mrecorder/dummy_page_confirm.html" $call SetIeData(%Url%,"email","xxxx@yyyy.co.jp") $call SetIeData(,"confirm_email","xxxx@yyyy.co.jp") $call SetIeData(,"lname","蜂須賀") $call SetIeData(,"lname_kana","ハチスカ") $call SetIeData(,"fname","小六") $call SetIeData(,"fname_kana","コロク") $call SetIeData(,"zip1","770") $call SetIeData(,"zip2","0001") $call SetIeData(,"prefecture","36") $call SetIeData(,"city","阿波市") $call SetIeData(,"street","夜盗通り") $call SetIeData(,"tel1","088") $call SetIeData(,"tel2","444") $call SetIeData(,"tel3","5555") $call SetIeData(,"birth_year","3") $call SetIeData(,"birth_month","12") $call SetIeData(,"birth_day","31") $call SetIeData(,"sex_male","1") $call SetIeData(,"magazin","1") $call SetIeData(,"dummy_button") $set rc=SetAutoRsp("送信してよろしいですか","{enter}",,2000) $if %rc% == 0 '正常応答 /Wait 1000 $call SetIeData(,"back","click") '「back」ボタンをクリック $else $call MsgBox("エラー発生!") $endif
# IEデータ設定(CSVファイルから) //////////////////// #//////////////////////////////////////////////////////// # # CSVファイルからデータを読み込んで、IEウェブページにデータ設定/送信 # データのレコード番号はユーザーに入力要求、簡単な入力チェックも実施 # 再入力要求は、ラベル定義とジャンプ命令($goto)を使用して実現 # $set Url = "../../../../web_dl/petit_tool/mrecorder/dummy_page.html" $set FilePath ="Parts\mail_data.csv" 'CSVファイル名 $set RecCnt = 0 'レコード数 $set FieldCnt = 0 'フィールド数 $set rc=GetCsvInfo(%FilePath%,RecCnt,FieldCnt) 'CSVファイルの情報を取得 Retry: $set r=InputBox("レコード番号を入力 2〜%RecCnt% \n\n 1レコード目は見出し","レコード番号",2) $if %r% == "" $end 'キャンセル → 終了 $if IsNumeric(%r%) == false '数値以外の入力 $call MsgBox("数値を入力して下さい!") $goto Retry $elseif ( %r% > %RecCnt% ) || ( %r% <= 1 ) 'レコード数より大きい、または、負 $call MsgBox( "2 以上、%RecCnt% 以下の数値を入力!") $goto Retry $endif $set c=1 'フィールド番号初期値 $set FieldName = "" $set FieldData = "" $set rc = SetIeNavigate(%Url%) 'ページに移動 $do-while ( %c% <= %FieldCnt% ) 'フィールド数分継続 $set rc = GetCsvData(%FilePath%,1,%c%,FieldName) 'フィールド名取得 $set rc = GetCsvData(%FilePath%,%r%,%c%,FieldData) 'フィールドデータ取得 $set rc = SetIeData(,%FieldName%,%FieldData%) 'IEにデータ設定 $set c+=1 'フィールド番号アップ $loop $call iewait(20000) 'IE処理完了を最長20秒待つ /wait 2000 '確認のため2秒間そのまま $set Url = "../../../../cgi-bin/dummy/rsp1.cgi" $call SetIeData(%Url%,"back","click") '「back」ボタンをクリック
# IEタブ操作の実演例 ///////////////////////////////// #////////////////////////////////////////////////////// # # 実演項目:IEを新規ウィンドウの全画面で開く/タブ追加/指定タブでページを開く # タブ切替/項目入力/ボタンクリック/タブ切替 # 検索文言入力/検索/表示文字列でクリック/アドレスでクリック # # 注意項目:ここでは簡略化のためにエラー処理は一切行っていない # 実際には 返却値 %rc% を判定してエラー処理を行う必要がある。 # #−プログラム開始− #ダミー入力ページを新規ウィンドウ/全画面で開く $set rc=SetIeNavigate("../../../../web_dl/petit_tool/mrecorder/dummy_page_confirm.html",-1,2) #タブを追加 $set rc=SetIeTabNew() #さらにタブを追加&YAHOOページを開く $set rc=SetIeTabNew("http://yahoo.co.jp") #1番目のタブ(ダミー入力ページ)をアクティブにする $set rc=SetIeTabActivate(1) #データ入力−姓名、フリガナ姓名 $set rc=SetIeData(,"lname","石川") $set rc=SetIeData(,"fname","五右衛門") $set rc=SetIeData(,"lname_kana","イシカワ") $set rc=SetIeData(,"fname_kana","ゴエモン") #送信&確認ダイアログに自動応答 $set rc=SetIeData(,"dummy_button","click") $set rc=SetAutoRsp("送信してよろしいですか?","{enter}") #3番目のタブ(YAHOOページ)をアクティブ $set rc=SetIeTabActivate(3) #検索ボックスに入力して「検索」ボタンをクリック $set rc=SetIeData(,"srchtxt","石川五右衛門") $set rc=SetIeData(,"srchbtn","click") #検索結果一覧から 表示文字列指定でクリック $set rc=DoIeClick("text","石川五ェ門 (ルパン三世) - Wikipedia") #リンクアドレス指定で 英語版Wikipedia をクリック $set rc=DoIeClick("url","http://en.wikipedia.org/wiki/Goemon_Ishikawa_XIII") #全て終了 $call MsgBox("Complete - Goemon Ishikawa XIII",,"石川五右衛門")
# エクセルデータ設定 /////////////////////////////////////// #//////////////////////////////////////////////////////// # # エクセルを起動し # データを設定、読み込み、設定 # 閉じる # /window-open excel,3 'エクセルブックを最大化状態で開く /wait-window "book1",,10000 '"Book1"が現れるまで最長10秒待つ(既定5秒) $call SetXlData("book1",,"c5","坊主が屏風に") 'データ書き込み $set rc = GetXlData("book1",,"c5") '取得 $set rc += "上手に坊主の絵を描いた" '文字連結 $Call SetXlData("book1",,"c12",%rc%) '書き込み /msg %rc% /window-quit "book1" 'ブックを閉じる
# メモ帳への文章入力 /////////////////////////////////// #//////////////////////////////////////////////////////// # # /ke-sendによるメモ帳への連続文字列入力 # # 以下のようにコマンドを連続して記述すると、 # メモ帳を起動して所定位置に移動、文字列入力、メモ帳を閉じる # の一連の動作が実行される。 # ここでは特殊キーの入力例として、文章は後ろから先に入力している。 # # 注:「#」で始まる行はコメント行として無視される。 # # /window-open notepad 'メモ帳を起動 /window-setposition "無題 - メモ帳",200,200,300,300 '移動・サイズ変更 /wait 500 /key-send "絵を描いた{enter}" '文字列入力、改行 /wait 500 '待機−特に意味なし(見かけの為) /key-send "^{home}" '文章の先頭に移動 /wait 500 '以降、繰り返し /key-send "上手に坊主の{enter}" /wait 500 /key-send "^{home}" /wait 500 /key-send "坊主が屏風に{enter}" /wait 3000 /window-quit "無題 - メモ帳" 'メモ帳を閉じる # #--この上の行まで --
# メモ帳入力&書式変更 # # フォントダイアログ操作により、書式(スタイルとフォントサイズ)を変更 # # 下記の例では、動きが判り易いように、/wait を入れて動作を一時停止している。 # また、メモ帳の構成がWindowsXPとWindows7 とで異なるので、共通の動作になるようにキー操作をしている。 # (OSの種類が固定であればマウス操作のほうが簡単である。) # PCによっては一回目の「フォント」ダイアログボックスが出るまでに時間が掛かる場合がある。 # その対処として、/mouse-point 10,10,"フォント",15000 にて最長15秒待つようにしている。 # # /window-open notepad /window-setposition "無題 - メモ帳",300,300,400,300 /wait 500 # # 文字入力 # /key-send "イガイガ以外が意外" /wait 1000 # # 書式を「太字」にする # /key-send "%" '「ALT」キー /wait 1000 /key-send "{right 2}" '右→2回 /wait 1000 /key-send "{down 2}" '下↓2回 /wait 1000 /key-send "{enter}" 'ENTER(書式→フォント) /mouse-point 10,10,"フォント",15000 '「フォント」ダイアログが出るまで最長15秒待つ /wait 1000 /key-send "{tab}" 'タブ1回 →スタイルへ /wait 1000 /key-send "{up 5}{down 2}" '↑5回↓2回 → 太字(ボールド) ※1 /wait 1000 /key-send "{tab}" 'タブ1回 →サイズへ /wait 1000 /key-send "{up 20}{down 10}" '↑20回↓10回 →サイズ24ポイント ※2 /wait 1000 /key-send "+{tab 4}" 'SHIFTを押しながらタブ4回 →「OK」ボタンへ移動 ※3 /wait 1000 /key-send "{enter}" 'ENTER →「OK」を押下 /wait 1500 # # 書式を「標準」に戻す # /key-send "%" '「ALT」キー /wait 1000 /key-send "{right 2}" '右→2回 /wait 1000 /key-send "{down 2}" '下↓2回 /wait 1000 /key-send "{enter}" 'ENTER(書式→フォント) /mouse-point 10,10,"フォント",15000 '「フォント」ダイアログが出るまで最長15秒待つ ※4 /wait 1000 /key-send "{tab}" 'タブ1回 →スタイルへ /wait 1000 /key-send "{up 5}" '↑5回 → 標準 /wait 1000 /key-send "{tab}" 'タブ1回 →サイズへ /wait 1000 /key-send "{up 20}{down 3}" '↑20回↓3回 →サイズ11ポイント /wait 1000 /key-send "+{tab 4}" 'SHIFTを押しながらタブ4回 →「OK」ボタンへ移動 /wait 1000 /key-send "{enter}" 'ENTER →「OK」を押下 /wait 1500 # # 閉じる # /window-close "無題 - メモ帳" /wait 1000 /key-send "{tab}" '保存しますか? タブ→「いいえ」 /wait 1000 /key-send "{enter}" 'ENTER # # # # 補足説明 ※1:{up 5} − 書式:スタイルの選択位置を先頭にするための操作。 # ※2:{up 20} − 同じく、書式:サイズの選択位置を先頭にするための操作。 # ※3:+{tab 4}− 後方にタブ移動4回 # WindowsXPは、前方へのタブ移動2回{tab 2}、Windows7は、タブ移動3回{tab 3} # にて「OK」ボタンに辿り着くが、両方を満たす為に後ろ向きに移動するという、少々苦肉の策。 # ※4:PCによっては、一回目の「フォント」ダイアログ表示に時間が掛かる場合がある。 # 15秒でも足りない場合は値を大きくする。(ダイアログが表示されたら、即、次のステップに移行) # /mouse-point :指定タイトル文字を持つウィンドウが現れるまで、指定時間待つ。 #
# メモ帳書式変更−短コマンド − 上記例3のキー押下をまとめたもの # # /wait を省き、処理速度を上げる # # PCの性能や状態によっては、キー押下速度に画面処理が間に合わない場合があります。 # その場合には、画面転換前後に /wait 500 を追加して調整して下さい。 # # /window-open notepad /window-setposition "^無題 - メモ帳",300,300,400,300 /wait 500 # # 文字入力 # /key-send "回文{enter 2}留守に何する{enter}タイヤキ焼いた{enter}イガイガ以外が意外" /wait 2000 # # 書式を「太字」にする # /key-send "%" '「ALT」キー /key-send "{right 2}{down 2}{enter}" '右→2回、下↓2回ENTER(書式→フォント) /mouse-point 10,10,"フォント",10000 '「フォント」ダイアログが出るまで最長10秒待つ /key-send "{tab}{up 5}{down 2}{tab}{up 20}{down 10}" 'タブ1回、↑5回↓2回 →太字 タブ1回、↑20回↓10回 →サイズ24ポイント /key-send "+{tab 4}{enter}" 'SHIFTを押しながらタブ4回、ENTER →「OK」を押下 /wait 1500 # # 書式を「標準」に戻す # /key-send "%" '「ALT」キー /key-send "{right 2}{down 2}{enter}" '右→2回、下↓2回ENTER(書式→フォント) /mouse-point 10,10,"フォント",10000 '「フォント」ダイアログが出るまで最長10秒待つ /key-send "{tab}{up 5}{tab}{up 20}{down 3}" 'タブ1回、↑5回 →太字 タブ1回、↑20回↓3回 →サイズ11ポイント /key-send "+{tab 4}{enter}" 'SHIFTを押しながらタブ4回、ENTER →「OK」を押下 /wait 1500 # # 閉じる # /window-close "無題 - メモ帳" /mouse-point 10,10,"^メモ帳$",5000 /key-send "{tab}{enter}" '保存しますか? タブ→「いいえ」 ENTER # #--この上の行まで --
# メニュー項目チェックをオン/オフ − 「メモ帳」「折り返して」・・オン # # トグル形式のメニューチェック状態を常にオン(またはオフ)の状態にする # (既にオンの場合は何もしない) # 5行目 /mouse-checkoff とすると、常にオフの状態にする # /window-open notepad /window-setposition "無題 - メモ帳",100,100 /mouse-leftclick 135,35,"無題 - メモ帳" '書式 /wait 1500 /mouse-checkon 135,57,"無題 - メモ帳" '折り返して /wait 2000 /window-close "無題 - メモ帳"
# 電卓操作 ////////////////////////////////////////////// #//////////////////////////////////////////////////////// # 起動→関数電卓→桁区切りオン→ # 99 x^y 9 = → 結果をコピー # ×で閉じる → 結果をメッセージボックスに表示 # /window-open calc /window-setposition "電卓",100,100 /mouse-leftclick 66,34,"電卓" '表示 /wait 500 $if GetOsVersion()>=6.1 'Windows7以上? /mouse-leftclick 20,90,"電卓" '関数電卓 /wait 500 /mouse-leftclick 20,40,"電卓" '表示 /wait 500 /mouse-checkOn 20,180,"電卓" '桁区切りを常にオン /wait 1000 /mouse-leftclick 310,210,"電卓" '9 /wait 500 /mouse-leftclick 310,210,"電卓" '9 /wait 500 /mouse-leftclick 150,240,"電卓" 'x^y /wait 500 /mouse-leftclick 310,210,"電卓" '9 /wait 500 /mouse-leftclick 380,280,"電卓" '= /wait 2000 /mouse-leftclick 90,40,"電卓" '編集 /wait 2000 /mouse-leftclick 90,65,"電卓" 'コピー /wait 2000 /mouse-leftclick 400,15,"電卓" '× 閉じる $else /mouse-leftclick 66,74,"電卓" '関数電卓 /wait 500 /mouse-leftclick 66,34,"電卓" '表示 /wait 500 /mouse-checkOn 66,225,"電卓" '桁区切りを常にオン /wait 1000 /mouse-leftclick 386,154,"電卓" '9 /wait 500 /mouse-leftclick 386,154,"電卓" '9 /wait 500 /mouse-leftclick 134,207,"電卓" 'x^y /wait 500 /mouse-leftclick 386,154,"電卓" '9 /wait 500 /mouse-leftclick 479,238,"電卓" '= /wait 2000 /mouse-leftclick 16,34,"電卓" '編集 /wait 2000 /mouse-leftclick 16,57,"電卓" 'コピー /wait 2000 /mouse-leftclick 544,14,"電卓" '× 閉じる $endif /wait 2000 $set result = GetClipboardText() $call MsgBox("計算結果 = %result%")
# ワードパッド操作 ///////////////////////////////////// #//////////////////////////////////////////////////////// #■ワードパッド操作 # # ワードパッド起動→書式設定ボタン→入力→閉じる # /window-open write /window-setposition "ドキュメント - ワードパッド",100,100,600,400 /wait 500 $if GetOsVersion()>=6.1 'Windows7以上? /mouse-checkOn 105,105,"ドキュメント - ワードパッド" '太字オン /wait 500 /mouse-checkOff 135,105,"ドキュメント - ワードパッド" '斜体オフ /wait 500 /mouse-checkOn 155,105,"ドキュメント - ワードパッド" '下線オン $else /mouse-checkOn 375,95,"ドキュメント - ワードパッド" '太字オン /wait 500 /mouse-checkOff 400,95,"ドキュメント - ワードパッド" '斜体オフ /wait 500 /mouse-checkOn 425,95,"ドキュメント - ワードパッド" '下線オン $endif # /key-send "太字オン、イタリックオフ、下線オン{enter}" /key-send "ワードパッド入力{enter}" /key-send "5秒待ち{enter}" /wait 5000 /key-send "5秒後にワードパッドを閉じる{enter}" /wait 5000 /window-close "ドキュメント - ワードパッド" /mouse-point 10,10,"^ワードパッド$" /key-send "{right}{enter}"
# キャプチャー&メール送信 ///////////////////////////// #//////////////////////////////////////////////////////// #■キャプチャー&メール送信 # # 画像監視とメール送信を組み合わせて、変化画像をメール添付で送信 # # アクション−コマンド/アプリ実行(下記コマンド) # # /capture jpg file:検知画像 timestamp 'デスクトップを"検知画像.jpg"(作成日時入)で保存 /mail-send "見張り番<xx@xxx.jp>",,"検知",,"検知画像.jpg" 'メール送信。宛先、本文、省略
# デスクトップ定期観測&メール送信 # # 変化しない位置で観測することにより、定期的にデスクトップ画像をメール送信可能。 # # 監視:画像変化、無変化監視(0.5=30秒)、継続監視オン # 監視場所−最小の監視枠で、通常変化しない場所(右下隅)に配置 # # アクション−コマンド/アプリ実行(下記コマンド) # # /capture jpg file:定期画像 timestamp 'デスクトップを"検知画像.jpg"(作成日時入)で保存 /mail-send "見張り番<xx@xxx.jp>",,"検知",,"定期画像.jpg" 'メール送信。宛先、本文、省略