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

はじめに

注意:本エントリは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
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.