2016-04-18 21 views
1

入れ子のフォルダのcabファイルを作成する必要があります。Makecabの空白

ので、私は見えDDFファイルsreate:私は実行時に

cd %folderDir% 

@echo off 
call :treeProcess 
goto :eos 


:treeProcess 

for /f "delims=" %%a IN ('dir /a:-d/b 2^>nul ') do echo %%~fa >>%pathDdfFile% 

for /D %%d in (*) do (
    echo .Set DestinationDir=%%d >>%pathDdfFile% 
cd %%d 
    call :treeProcess 
    cd .. 
) 
goto :eof 

:eos 

cd \ 

//--------------- 

::私はDDFファイルにすべてのファイルのリストを挿入

batファイルで今
.OPTION EXPLICIT ; Will Generate errors for mistakes 
.Set Compress=on 
.Set Cabinet=on 

; Destination Folder 
.Set DiskDirectory1= my Directory 


; File name for the new cab file 
.Set CabinetNameTemplate=Sample.cab 

//---------------- 

makecab /F %pathDdfFile% /L C:\temp 

その返信me:

予想外のテキスト:1つのファイル

が名前にスペースを持っているすべてのファイルが問題/ 、私は何をすべき作りますか?

+0

にこれを

call cabdir.bat "C:\someDir" some.cab 

を確認することができますか? – npocmaka

+1

あなたは 'for/f"で試すことができますdelims = "%% IN( 'dir/a:-d/b 2 ^> nul')echo %%〜fa >>"%pathDdfFile% "'(二重引用符 .SET DestinationDir = MYDIR C:その後、\ tmpに1 2 3.dll ファイルのパス) – npocmaka

+0

おかげで、私は正常に見える作成DDFファイルを中心に、問題のような名前にスペースを持つファイルであります私は得る エラー:予期しないテキスト:3.dll – liraz

答えて

0

あなたは、ディレクトリrecursively.Exampleタクシーますcheck this scriptことができます。また、あなたが全体のディレクトリをタクシーしたいquestion