作成 展開
zip , unzip zip zip_name -r zip_root unzip -d out_dir zip_path
7z 7z a zip_name zip_root/* 7z x zip_path -oout_dir

7z の作成時の a は add .つまり zip が存在すると,それに追加になるみたい.

tstring	cmd_zip = l_cmd_zip  _T("   ") +  l_z_name +  _T(" -j ")   +  zip_file ;        	//  zip   zip_name -j zip_file
tstring	cmd_7z_ = l_cmd_7z_  _T(" a ") +  l7z_name +  _T("    ")   +  zip_file ;        	//  7z  a zip_name    zip_file
tstring	cmd_zip = l_cmd_zip  _T("   ") +  l_z_name +  _T(" -r ")   +              _T("*") ;	//  zip   zip_name -r *
tstring	cmd_7z_ = l_cmd_7z_  _T(" a ") +  l7z_name +  _T("    ")   +  zip_root + _T("/*") ;	//  7z  a zip_name    zip_root/*
tstring	cmd_unz = l_cmd_unz  _T("   ") +  zip_name +  _T("   -d ") +  out_unzp ;        	//  unzip zip_name   -d out_path
tstring	cmd_7z_ = l_cmd_7z_  _T(" x ") +  zip_name +  _T(" -y -o") +  out_7z_p ;        	//  7z  x zip_name -y -oout_path
zip コマンドの時,pushd などで zip_root にカレントディレクトリを移動する必要がある.