Noah thread 2nd.

このエントリーをはてなブックマークに追加
98名無し~3.EXE
普段はダブルクリックでデフォルトのフォルダに展開するんだけど、
時々別の場所に展開したいときがあります。
展開先のフォルダを指定して展開する楽ちんな方法ないですか?
シフト押しながらD&Dは面倒です。

| f = $@ # D&Dされたファイルのリスト
| d = (フォルダ選択ダイアログからフォルダ指定)
| c:\bin\noah3193\Noah.exe -x -d"$d" "$@"

みたいなスクリプトが書ければよさそうだけど、
その能力が...

環境:WinXP SP1、Noah 3.193
99名無し~3.EXE:04/04/20 19:27 ID:qrTnC0lX
右ドラッグからの「ここに解凍」
100名無し~3.EXE:04/04/20 22:42 ID:rdgowdOw
>>99
ありがと。

現在はeoを使っていて、"eo.exe -s1" をSendToに登録して、
別の場所に展開したいときは右クリックで送る、
ってやり方をとってる。

それと同様の操作をイメージしていたんだけど、
そんな設定もあったのね。

展開先のフォルダを開いておいて右D&Dという操作は
まだ違和感があるけど、慣れの問題な気もする。
しばらく試してみるわ。
10198:04/04/23 23:42 ID:Hvxk5KSA
やっぱり右クリックして展開するっていう便利さは
捨てられなかった。

なので、VBS なスクリプトを作りました。
プログラム板の住民に感謝。

最初の「Noah = "」のところにNoah.exeのフルパスを書いて、
拡張子をvbs にして保存すればOK。

圧縮ファイルをスクリプトファイルにドラッグ&ドロップすると、
フォルダ選択ダイアログが出るので、展開したいフォルダを選択
すれば、そこに展開されるはずです。

SendTo に登録すれば、右クリックからも使えます。
OS のバージョンに依存するかどうかは知りません。
102名無し~3.EXE:04/04/23 23:43 ID:Hvxk5KSA
'Noah本体の場所を指定
Noah = "C:\bin\noah3193\Noah.exe"

'渡されたファイルの処理
With Wscript
Set objParm = .Arguments
If objParm.Count = 0 Then
    .echo "ファイルをドラッグ&ドロップしてください。"
    .Quit()
End If

'展開先のフォルダを選択
set objFolder = CreateObject("Shell.Application").BrowseForFolder(0, "展開先のフォルダを選択", 0, "c:\\")
If objFolder Is Nothing Then .Quit()

'ファイル毎にオプションをつけてNoahを起動
Set WshShell = CreateObject("WScript.Shell")
For i=0 To objParm.Count-1
    WshShell.Run Noah & " -x ""-d" & _
      objFolder.Items().Item().Path & """ """ & objParm(i) & """", 1, True
Next
End With