필자는 마침내 실제로 이것을 제대로 수행 할 수있는 스크립트를 만들었습니다 (powershell 사용)
WSPBuilder를 자주 사용하지 않으므로 새로운 소프트웨어/추가 파일을 다운로드하는 것이 불편합니다. 이것은 OOTB에서 작동합니다.
function compress-directory([string]$dir, [string]$output)
{
$ddf = ".OPTION EXPLICIT
.Set CabinetNameTemplate=$output
.Set DiskDirectory1=.
.Set CompressionType=MSZIP
.Set Cabinet=on
.Set Compress=on
.Set CabinetFileCountThreshold=0
.Set FolderFileCountThreshold=0
.Set FolderSizeThreshold=0
.Set MaxCabinetSize=0
.Set MaxDiskFileCount=0
.Set MaxDiskSize=0
"
$dirfullname = (get-item $dir).fullname
$ddfpath = ($env:TEMP+"\temp.ddf")
$ddf += (ls -recurse $dir | ? {!$_.psiscontainer}|select -expand fullname|%{'"'+$_+'" "'+$_.SubString($dirfullname.length+1)+'"'}) -join "`r`n"
$ddf
$ddf | Out-File -encoding UTF8 $ddfpath
makecab /F $ddfpath
rm $ddfpath
rm setup.inf
rm setup.rpt
}
내가 잘못하고 있고/있거나 더 나을 수도 있는지 알려 주시기 바랍니다. 참조
:
http://www.pseale.com/blog/StrongOpinionSayNoToMAKECABEXE.aspx
"files.txt"의 경우 파일 경로 및 이름에서가 아니라 "files.txt"에 추가됩니다. 그러면 files.txt도 test.cab에있게됩니다. – Hinek