Edited at

SARファイルをダブルクリックで展開できるようにする。

More than 1 year has passed since last update.


はじめに

注意:本エントリはWindowsレジストリに手を入れます。適用は自己責任でお願いします。

SAP製品のBASISと呼ばれる領域の仕事をしていると.SARという形式のアーカイブファイルに出会います。

これは.TARファイル等と同様で複数のファイルを一つのファイルに固めたものになります。

作成、展開はSAPCARというSAP社作成のアーカイブツールを利用します。

その為、「ローカルPCで.SARファイルを展開したい」となったら


  1. コマンドプロンプトを立ち上げる

  2. コマンド「SAPCAR -xvf -R 」実行

という手順を行う必要があり、非常に面倒です。

これを.ZIPファイルを展開するかのように、ダブルクリックで展開で来たらうれしいと考え検証しました。


環境

PS> [System.Environment]::OSVersion

Platform ServicePack Version VersionString
-------- ----------- ------- -------------
Win32NT 10.0.14393.0 Microsoft Windows NT 10.0.14393.0


前提


  • ローカルPCにSAPCARが格納されていること。(以下の例ではC:\Windows\System32に格納しています。)

  • レジストリを修正する権限があること。


方法

以下のようなレジストリエントリを追加します。


sapcarexe.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.SAR]
@="SAR ファイル"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.SAR\shell]
@="open"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.SAR\shell\open]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.SAR\shell\open\command]
@="C:\\Windows\\System32\\SAPCAR.EXE -xvf \"%1\" -R unpack"



結果

以下のようなHOGE.SARファイルをダブルクリックするとカレントディレクトリにunpackというサブディレクトリが作成され、その中にSARファイルの中身が展開されます。


  • SARファイル

> SAPCAR -tf HOGE.SAR

SAPCAR: processing archive HOGE.SAR (version 2.01)
-rw------- 21527 10 Oct 2017 17:52 hoge.exe
-rw------- 4871 10 Oct 2017 18:48 fuga.exe


  • 展開結果

階層1
階層2
階層3

<任意のディレクトリ>\
HOGE.SAR

unpack\
hoge.exe

fuga.exe