SQLの窓 イラストAC フリー素材

2018年02月16日

VBScript + clipコマンド + レジストリ登録で、エクスプローラのディレクトリの右クリックでファイル名のリストをクリップボードにコピーできるようにする



昔はクリップボードにコピーするコマンドを自作したりしてましたが、今では clip コマンドが Windows のコマンドプロンプトから実行できます。
CLIP

説明:
    コマンド ライン ツールの出力を Windows クリップボードにリダイレクトします。
    その出力されたテキストをほかのプログラムに貼り付けることができます。

パラメーター一覧:
    /?                  このヘルプを表示します。

例:
    DIR | CLIP          現在のディレクトリ一覧のコピーを Windows クリップボード
                        に貼り付けます。

    CLIP < README.TXT   readme.txt ファイルのテキストのコピーを Windows
                        クリップボードに貼り付けます。
これを使用すると、dir コマンドの結果をクリップボードにコピーできます。 dir /A:-D /B /O:N | clip ※ -D はディレクトリを省く、/B はファイル名のみを表示、/O:N は名前順に表示 さらに、このコマンドを VBScript から『コマンドプロンプトを開かない』で実行できるようにします。 filelist.vbs
Set WshShell = CreateObject( "WScript.Shell" )

Target= WScript.Arguments(0)
Command = "cmd /C dir ""$1"" /A:-D /B /O:N | CLIP"
Command = Replace( Command, "$1", Target )

Call WshShell.Run( Command, 0, True )

※ 引数に dir 対象のフォルダのパスが入る必要があります。

これを以下の内容で、.reg を拡張子にしてキャラクタセットを SHIFT_JIS か unicode に変更してエクスプローラからダブルクリックして実行すると、エクスプローラのフォルダの右クリックで実行できるようになります。

filelist.reg
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\filelist]
@="ファイル一覧をコピー"

[HKEY_CLASSES_ROOT\Directory\shell\filelist\command]
@="wscript.exe \"C:\\tools\\filelist.vbs\" \"%L\""
※ ここでは、filelist.vbs を c:\toos に保存しています。



【VBScriptの最新記事】
posted by at 2018-02-16 07:49 | VBScript | このブログの読者になる | 更新情報をチェックする


Android SDK ポケットリファレンス
改訂版 Webデザイナーのための jQuery入門
今すぐ使えるかんたん ホームページ HTML&CSS入門
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX