2012-03-13 60 views
3

1)我有一個名爲CCBuilds的文件夾,其中包含此路徑中的幾個文件 - > E:\ Testing \ Builds \ CCBuilds。RAR一個文件夾沒有保留完整路徑

2)我已經寫C#代碼(的Process.Start)到RAR這個文件夾並將其保存在E:\ Program Files文件:\測試\使用以下命令

「C構建\ CCBuilds.rar \ WinRAR的\ RAR.EXE一個E:\測試\構建\ CCBuilds.rar E:\測試\構建\ CCBuilds」

3)的問題是,雖然RAR文件被正確創建,當我的unrar將文件複製到CCBuilds2文件夾(通過代碼使用「rar.exe x」命令或在上下文菜單中使用「提取」),非紅外文件夾包含完整路徑: 即:提取E:\ Testin g^\構建\ CCBuilds.rar - > E:\測試\構建\ CCBuilds2 \測試\構建\ CCBuilds \ <>

雖然我希望它是這樣的: E:\測試\構建\ CCBuilds2 \ CCBuilds \ <>

如何避免這種完整路徑持久性,同時添加到rar /從中提取回來。任何幫助表示讚賞。

回答

16

使用-ep1開關。

更多信息:

-ep =文件添加到壓縮文件時不會包含路徑信息。可能導致檔案 中存在多個具有相同名稱的文件。

-ep1 =不要將在命令行輸入的路徑存儲在歸檔中。從名稱中排除基礎文件夾。

-ep2 =將路徑展開爲完整路徑。歸檔時存儲完整的文件路徑(驅動器號和主要反斜槓除外)。

(來源:http://www.qa.downappz.com/questions/winrar-command-line-to-add-files-with-relative-path-only.html

1

以防萬一這可以幫助:我目前工作的一個MS Access數據庫項目(客戶關係管理在一家小公司),和的任務之一,有拉上拉鍊將docx文件發送給客戶,並使用特定的密碼加密。

在觸發DOCX,文件的壓縮包裝的VBA過程,我稱之爲的WinRAR如下:

c:\Programme\WinRAR\winrar.exe a -afzip -ep -pThisIsThePassword "OutputFullName" "InputFullName" 

-afzip說:「創建一個zip文件(而不是一個RAR文件)

-ep說:不包括源文件的路徑,即把文件直接到Zip文件夾

這種開關的完整列表是在WinRAR的幫助,節「命令行」可用。