普段は省電力のため、2分でOFF設定しているので、これを解除しないといけません。
しかし、いちいち解除して、使い終わったら設定を戻すというのは面倒。
というわけで、MortScriptの出番です。
MortScriptには、電源オフのwait時間をクリアするコマンドがあるので、WMMiniGPSが動作中はそれを定期的に実行するスクリプトに、WMMiniGPSそのものを起動するスクリプトを頭に付け加えます。
WMMiniGPSを起動する時には、このスクリプトを呼ぶようにすれば、電源オフ設定をいじったりしなくても、一発で解決です。
Run("\Program Files\WMMiniGPS\WMMiniGPS.exe")
sleep(500)
While (ProcExists("WMMiniGPS.exe"))
IdleTimerReset
sleep(2000)
EndWhile
Message("電源オフ設定を有効に戻します")
Bookmarkletとかでできるのかもしれませんが、WindowsMobile用ブラウザだと、Bookmarkletが動かないものも多ので、MortScriptにて。
モバイル用ログイン画面を表示しておいてから、これを流します。
Sleep(5)
SendSpecial("Tab")
Sendkeys("UserID")
Sleep(50)
SendSpecial("Tab")
Sleep(50)
Sendkeys("Password")
Sleep(50)
SendSpecial("Tab")
Sleep(50)
SendSpecial("Tab")
Sleep(50)
SendSpecial("CR")
Gmailの仕様変更を突破するようなオートログインができるかもしれないですが、それまでのつなぎ。
まずは、Bluetoothをコマンドラインで制御できる、wifictrlをインストール。
http://emboss.blog28.fc2.com/blog-entry-110.html
その上で、以下のスクリプトを流す。
#######################################
#KeyBoard ON
run("\Program Files\wifictrl\wifictrl.exe","on /BT")
run("\Program Files\RBKSSWM\RBKCEUI.exe")
WaitFor("RBKサポートソフト", 5000)
Minimize("RBKサポートソフト")
#######################################
#######################################
#KeyBoard OFF
Show("RBKサポートソフト")
sleep(500)
Close("RBKサポートソフト")
run("\Program Files\wifictrl\wifictrl.exe","off /BT")
#######################################
それぞれのスクリプトをランチャなどで紐付すれば、楽。
なので、ウインドウ名を自動的に取得し、スクリプトをおいたのと同じフォルダに「Wtlist.txt」というファイルをつくって、そこにためていくというものです。
#############################
Repeat(0)
call "WinTitle"
EndRepeat
Exit
SUB WinTitle
Message("10秒以内にタイトルを取得するウインドウを選択して下さい","Infomation")
sleep(10000)
T=ActiveWindow()
Ms1= "「" & T & "」でよろしいですか?"
if (Question(Ms1,"Info","YesNo")=Yes)
WriteFile("Wtlist.txt",T & "^NL^",True)"
MS2="処理実行。継続?"
ELSE
MS2="処理中止。継続?"
ENDIF
if (Question(MS2,"Info","YesNo")=Yes)
ELSE
Message("終了しました","Info")
Exit
ENDIF
ENDsub
想定運用フォルダ構造
Music
│ ALLSONGS.m3u(全曲プレイリストファイル)
│
+--ジャンル1
│ │ ジャンル1.m3u(ジャンル別ファイルリスト)
│ │
│ +--アルバム1
│ │ +--曲1.mp3
│ │ +--曲2.mp3
│ │ +--曲3.mp3
│ │
│ +--アルバム2
│ +--アルバム3
+--ジャンル2
+--ジャンル3
この前提で、「ジャンル」のフォルダをプレイリスト作成対象フォルダとして選択すると、そのジャンルの中にあるアルバムフォルダ中のMp3ファイルをプレイリスト化し、ジャンルフォルダ直下にm3uファイルとして作成(ファイル名はジャンルと同じ名前)。
さらに、Musicフォルダには各ジャンルフォルダ直下にあるm3uファイルから全曲プレイリストをが作成されます。
で、全曲リストは作成にちょっと時間がかかるので、先に作成指示したジャンル別プレイリストでGSPlayerを起動するようにしてます。
なお、起動後にはプレイリストをフルパスでソートして、一曲目から再生開始するようにしています。ただ、一曲目の指定をマウスクリックで行っているので、機種やスキンによって調整が必要になるでしょう。
###########################################
##プレイリスト作成ディレクトリ指定(直接書換のこと)
Dir_OYA = "\メモリ カード\music"########################################
##個別プレイリスト作成##ディレクトリ指定
Dir_music=SelectDirectory("Select Music Folder",MESS,Dir_OYA)##プレイリストファイル作成
m3u_name= Dir_music \ Part(Dir_music,"\",-1) & ".m3u"if (FileExists(m3u_name) = true)
DELETE(m3u_name)
ENDIF##ディレクトリ読取
i=0
ForEach Dir_work in directories(Dir_music & "\*")
i=i+1
dir_name[i]=Dir_work & "\*"
EndForEach##ファイル読取、リスト作成
ForEach File_work in files(Dir_music & "\*.mp3")
File_work=Replace(File_work,Dir_music & "\","")
WriteFile(m3u_name,File_work & "^NL^",True)"
EndForEachFor j=1 to i
ForEach File_work in files(dir_name[j] & ".mp3")
File_work=Replace(File_work,Dir_music,"")
WriteFile(m3u_name,File_work & "^NL^",True)"
EndForEach
next##GSPlayerK起動
run(m3u_name)
sleep(200)##リストをソートして、一曲目から再生
SendCommand("GSPlayerK", 40035)
sleep(300)
MouseDblClick("GSPlayerK",50,75)
############################
##全曲リスト作成
ALLSONGS =Dir_OYA \ "ALLSONGS"##旧リスト削除
DELETE(ALLSONGS & ".m3u")##親ディレクトリのひとつ下のフォルダを配列格納
i=0
ForEach Dir_work in directories(Dir_OYA & "\*")
i=i+1
dir_name[i]=Dir_work & "\*"
EndForEach##ファイル内容読取、リスト作成
ForEach File_work in files(Dir_OYA & "\*.m3u")
Line_Work=ReadLine(File_work)
While(Not IsEmpty(Line_work))
If(SubStr(Line_Work,1,1) ne "#")
WriteFile(ALLSONGS & ".txt",Line_work & "^NL^",True)"
endif
Line_Work=ReadLine(File_work)
EndWhile
EndForEachFor j=1 to i
ForEach File_work in files(dir_name[j] & ".m3u")
Line_Work=ReadLine(File_work)
While(Not IsEmpty(Line_work))
If(SubStr(Line_Work,1,1) ne "#")
WriteFile(ALLSONGS & ".txt","\" & Part(Dir_name[j],"\",-2) \ Line_work & "^NL^",True)"
endif
Line_Work=ReadLine(File_work)
EndWhile
EndForEach
next j##全曲リスト完成
Rename(ALLSONGS & ".txt",ALLSONGS & ".m3u")