UWSC備忘録:とにかくクリックでタスクスケジューラの設定をする!(CLKITEM)
やべぇ~1ヶ月以上も更新してなかった。
決してめんどくさくなったわけではないです。忙しかったんです。あれこれ。
半分ウソですが、お仕事でUWSCを使う羽目になり苦労したのでしばらくUWSCメインで書いていくよ。
今回は、クリック!!
UWSCでは、マウスでの座標クリックとCLKITEMのオブジェクトクリックがあるが、座標クリックはちょっとでもずれると使えないのでCLKITEMでいく。
それで何をするかだが、タスクスケジューラのタスクの登録をしようと思う!!
偉い人はきっとコマンドラインでやってのけるであろう作業をあえてUWSCで。
実は諸事情によりタスクをフォルダ分けする必要が出てそれをコマンドラインでやるやり方が分からず死にそうになってUWSCでやってしまった。
俺を責めないで下さい。
それでははじまり。
今回はWindows10でやってるんで、それ以外のOSだとそのままでは動かないかも。
まず、登録するXMLファイルを用意。これは難しくないのでググッて作ってね。
それから、1~2行で、タスクスケジューラを起動してそのIDをゲット!
IDをゲットすると、クリックするのに役立つよ。
4~6行でフォルダ作成位置をクリックしてフォルダ作成ウィンドウ開きまたIDゲット!
7~8行でフォルダ名入れてエンター押す。
そんな感じに色んなとこクリックしたり、文字入れたり、キー押したりすると出来上がり。
取り敢えず、CLKITEMの使い方はUWSCでググると出てくるので割愛。
ただ、後ろのCLK_ACCとか正直良くわからないが、上手く動かない時に変えると動くこと有り。
ボタンの名前などがちょっと違うせいで動かない時はCLK_SHORT。
フォルダなどのツリー表示をクリックするときはCLK_TREEVEW。
色々やってもダメなときはCLK_ACCを使ってみた。
○今日のコード
- exec("mmc taskschd.msc /s")
- id=getid("タスク スケジューラ",,-1)
- file1="c:\test1234.xml"
- CLKITEM(id, "タスク スケジューラ (ローカル)\タスク スケジューラ ライブラリ", ITM_TREEVEW)
- CLKITEM(id, "新しいフォルダー", CLK_ACC)
- id2=getid("新しいフォルダー名の入力",,-1)
- SENDSTR(id2, "NewTaskFolder")
- SCKEY(id2, VK_ENTER)
- SLEEP(3)
- CLKITEM(id, "タスク スケジューラ (ローカル)\タスク スケジューラ ライブラリ\NewTaskFolder", ITM_TREEVEW)
- CLKITEM(id, "タスクのインポート", CLK_ACC)
- id2=getid("開く","#32770",-1)
- sleep(1)
- SENDSTR(id2, file1, 1, True, True)
- sleep(1)
- CLKITEM(id2, "開く", CLK_BTN)
- CLKITEM(getid("タスクの作成",,-1), "OK", CLK_BTN)
- sleep(1)
- CLKITEM(id, "タスク スケジューラ(ローカル)\タスク スケジューラ ライブラリ", ITM_TREEVEW)
- SCKEY(id, VK_F5)
使い方調べるのもいいけど取り敢えずやってみろ。
かしこ