>圧縮ファイル
>hoge\aaa.7z
>├ bbb.cue
>└ ccc.bin
>
>$image[n] = hoge\aaa.7z
>$body[n] = aaa.7z
>$body_noext[n] = aaa
>
>必要な情報
>bbb.cue
1.と2.が同じ要望とは気づかず回答していました。
前提として・・・
MAMEのようなアーカイブをそのまま受け取れるエミュレータで、圧縮されているオリジナルファイルの拡張子が多岐にわたる場合に、.7z などをエミュレータが扱う拡張子としてライブラリへ取り込みむ方法が有効です。
エミュレータが扱う拡張子が決まっている、またはアーカイブを受け取れない場合には、オリジナルの拡張子を対象にライブラリへ取り込んでください。
なので現行のCatShanty2では、エミュレータが .7z に対応していないなら、まずはオリジナルの拡張子を対象にして構築してみてください。
今回の例の手順としては、
・メディアは .cue;.bin を対象にする。
・その際、「高度な設定」で「アーカイブ内の複数イメージを、同じタイルの複数枚組イメージにする」にチェックしておく。
・取り込み開始。
こうして取り込まれたタイトルでは複数イメージセットの先頭から $image[n] になります。(つまり bbb.cue を得られる)
外部エクストラクタやバッチを使用するなら 7z へ "$path$file_body.7z" で元のアーカイブパスを渡せるかと思います。
【追記】
外部エクストラクタで全解凍するなら、メディアは .cue だけ対象にしても良いと思います。