Windows用 oAutoPagerize, xLDRizeのSITEINFOの更新バッチ
karakara - oAutoPagerizeの0AutoPagerize.SITEINFO.jsをアップデートするExcelマクロを作った。をヒントに、インストールなど一切不要(たぶん)なバッチファイルを書いてみました。(WindowsXP SP3で動作確認)
下記の2つのファイルを同じフォルダに保存し、UpdateSiteinfo.jsの1行目にOperaのUserjsフォルダのパスを指定してください(パスに日本語などが含まれる場合は文字コードをShift_jisで保存するようにしてください。BOMありのUTF-8だとエラーになるので、Shift_jisが無難です。Thx! id:kara35)。
http://ss-o.net/bat/UpdateSiteinfo.bat
http://ss-o.net/bat/UpdateSiteinfo.js
コメントで、「1つのファイルでバッチファイルとJSファイルの両方で機能させる方法」を教えてもらったので、1ファイル版も用意しました。こちらは5行目にパスを指定してください。
http://ss-o.net/bat/UpdateSiteinfo.standalone.bat
UpdateSiteinfo.batのほうを実行すればSITEINFOが更新されます。ショートカットをスタートアップに登録しておくと良いでしょう。
LDRize用: http://ss-o.net/bat/UpdateLDRizeSiteinfo.standalone.bat
UpdateSiteinfo.batはcscriptでUpdateSiteinfo.jsを実行するだけの1行、UpdateSiteinfo.jsは9行と、全部で10行のプログラムです。
# あ、エラー処理していないので、wedataXREAが落ちてるとSITEINFOが消えるかも。たぶんあとで直す。少し手を入れた。考えてみると0AutoPagerize.SITEINFO.jsはXREAにあるんだった。wedataより安定してるかも?
適当に検索して見つけた、ダウンロード後の保存ディレクトリ選択の制御 | その他(プログラミング)のQ&A【OKWave】のサンプルソースをほとんどそのまま拝借しました。
var path = "C:\\OperaのUserjsフォルダのパスを指定してください\\0AutoPagerize.SITEINFO.js"; var url = "http://ss-o.net/userjs/0AutoPagerize.SITEINFO.js"; WScript.Echo("updating oAutoPagerize SITEINFO"); var status = "_____ok"; var xmlHttp = new ActiveXObject("MSXML2.XMLHttp"); xmlHttp.open("GET", url ,false); xmlHttp.onreadystatechange = function(){ WScript.Echo(status.substring(0,xmlHttp.readyState)); if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { try { var fso = new ActiveXObject('Scripting.FileSystemObject'); var stream = fso.createTextFile(path, true); stream.write(xmlHttp.responseText); stream.close(); WScript.Echo(status); } catch (e) { WScript.Echo(e.message); } } else if (xmlHttp.readyState == 4 && xmlHttp.status > 200){ WScript.Echo(xmlHttp.status + " " + xmlHttp.statusText); } } xmlHttp.send();