作成: 更新:

exeを作りたかった

JavaScriptWSHJScript.NETFramework

##自作のランチャーをタスクバーに置きたかった
けど、Windowsのタスクバーってexe形式でしか置けないのね。
現場は開発端末でネットが使えないという素晴らしい(?)環境なのでexeにコンパイルできない…。

でも.NETFramework あればJavascript→exeへのコンパイルできるらしい…!
ん…?.NETFrameworkあるよぞ…!?

##ということでコンパイル開始
jsc.exeがコンパイラのよう。
僕の環境(Windows7)ではここだった

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

下のように対象jsを渡せば、カレントディレクトリにexeができる

jsc ./lancher.js
error JS1135: 変数 'WScript' が宣言されていません。

およよ…?jsファイルの状態なら実行できてたのに…?

##原因はこの行

createObject("Scripting.FileSystemObject").getParentFolderName(WScript.ScriptFullName) 

これを


new ActiveXObject("WScript.Shell").CurrentDirectory

こうしてok
カレントディレクトリの取得箇所で使用していたWScriptが見えてないっていうエラー
WSH勉強するほどでもないので今回はこれくらいで、、