“Pyxis”のランチャーに雛形をいくつか登録して、“Pyxis” のカレントフォルダにファイルを新しく作ることができるようにする 例です。



例えば、下のような"NewFile.vbs" を作って、コマンドライン引数 として、「サンプルファイルのパス」と必要ならば、「編集用アプリケーション のパス」を渡します。下の例では、新規ファイルを関連付けられた アプリケーションで開く場合、コマンドラインの第二引数は必要ありません。
尚、各雛形ファイルをあらかじめ、準備しておく必要があります。

***** NewFile.vbs *****

'//////////////////////////////////////////////////////////
'//
'//     ファイル新規作成
'//         雛形ファイルを指定して読みこむ
'[書式]
'   NewFile.vbs サンプルファイルのパス[ 編集用アプリケーションのパス]

Option Explicit
Dim newName, newFile, strPath
Dim args
Dim objFS, objFile, objWshShell

'//コマンドライン引数があるか調べる
'//     コマンドライン引数が渡されていなければ終了
Set args = Wscript.Arguments
If args.Count = 0 Then
    MsgBox "雛形ファイルが指定されていません",48
    WScript.Quit
End If

'//雛形ファイルが存在するか調べる
'//     指定された名前のファイルが無ければ終了
Set objFS = CreateObject("Scripting.FileSystemObject")
If objFS.FileExists(args.Item(0)) = False Then
    MsgBox "該当する雛形ファイルが有りません",48
    WScript.Quit
End If

'//インプットボックスを表示する
'//     キャンセル、または未入力の時は終了
Do
    newName = InputBox("ファイル名を入れて下さい。" & vbCr &_
        "拡張子は付けないで下さい。" ,"指定した雛形で新規作成" ,_
        "newfile" )
    If newName = "" Then
        WScript.Quit
    End If

    '//新しいファイル名
    newFile = newName & "." & objFS.GetExtensionName(args.Item(0))

    '//同名のファイルが既にあるかどうかのチェック
    If objFS.FileExists(newFile) Then
        MsgBox "同名のファイルが既に存在します",48
    Else
        Exit Do
    End If
Loop

'//雛形ファイルをコピーする
objFS.CopyFile args.Item(0),".\"

'//ファイル名を変更する
Set objFile = objFS.GetFile(objFS.GetFileName(args.Item(0)))
objFile.Name = newFile

'//コマンドを実行する
Set objWshShell = WScript.CreateObject("WScript.Shell")
If args.Count > 1 Then
    '//編集用アプリケーションを指定の場合
    objWshShell.Run """" & args.Item(1) & """ """ & newFile & """"
Else
    '//関連付けされたアプリで開く場合
    objWshShell.Run newFile
End If

“Pyxis”でのランチャー設定は、例えば、


特別な雛形を使わない場合で、アプリケーション がカレントフォルダに保存するときは、このようなことをしなくても、 アプリケーション自体をランチャーに登録すればよいです。


戻る