« 関連付けでフォルダの詳細表示相当を保存印刷する。 | トップページ | powershellの中でウィンドウアプリにパイプするとデータが重複する? »

2010年12月16日 (木)

関連付けでフォルダの詳細表示相当を保存印刷する。(その2)

PowerShellでFileSystemObjectのフォルダ情報をhtml tableに変換してhtaに表示します。

fsoだとフォルダサイズに全ファイルサイズが表示されます。

ファイルフォルダのコンテキストメニューに関連付け

[HKEY_CLASSES_ROOT\Directory\shell\ps-fso-hta\command]
@="C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe \"$outputencoding=[text.encoding]::getencoding('shift_jis');$f=(new-object -com scripting.filesystemobject).getfolder('%1');$f.subfolders+$f.files|convertto-html -title '%1' -property Name,Size,DateLastModified,Type|cmd.exe /c start /b mshta.exe 'about:<script defer>document.write(new ActiveXObject(\"\"\"scripting.filesystemobject\"\"\").getstandardstream(0).readall());</script>'\""

ファイルフォルダのバックグラウンドメニューに関連付け

[HKEY_CLASSES_ROOT\Directory\Background\shell\ps-fso-hta\command]
@="C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe \"$outputencoding=[text.encoding]::getencoding('shift_jis');$f=(new-object -com scripting.filesystemobject).getfolder('%v');$f.subfolders+$f.files|convertto-html -title '%v' -property Name,Size,DateLastModified,Type|cmd.exe /c start /b mshta.exe 'about:<script defer>document.write(new ActiveXObject(\"\"\"scripting.filesystemobject\"\"\").getstandardstream(0).readall());</script>'\""

htaの右クリックで「印刷」、「ソースの表示」で保存。

※ $outputencoding=[text.encoding]::getencoding('shift_jis'); は文字化けを防止します。

« 関連付けでフォルダの詳細表示相当を保存印刷する。 | トップページ | powershellの中でウィンドウアプリにパイプするとデータが重複する? »