2017年11月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
無料ブログはココログ

« コマンドラインから仮想フォルダの「Start Menu Folder」を開く。 | トップページ | コマンドプロンプトからエクスプローラで(複数)選択したファイルのパス名を取り出す。 »

2006年11月 3日 (金)

FORコマンドでクリップボードを処理する。

大量のファイルをアプリファイルにドロップすると、引数の長さ制限でエラーになります。
そういう場合は、Send To Clipboard As Name などで、一旦クリップボードにパス名を入れて、
FORコマンドでクリップボードからパス名を取り出して処理するとよいでしょう。

@ECHO OFF
FOR /F "delims=" %%0 IN ('MSHTA.EXE "javascript:var s=clipboardData.getData('text');if(s)new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(s);close();"') DO ECHO %%0

« コマンドラインから仮想フォルダの「Start Menu Folder」を開く。 | トップページ | コマンドプロンプトからエクスプローラで(複数)選択したファイルのパス名を取り出す。 »