使用c#解压缩受保护的sfx存档

时间:2014-06-19 03:37:59

标签: c# sfx

我有WinRAR SFX文件。我知道我可以使用以下代码提取存档:

Process process = new Process();
process.StartInfo.FileName = "unrar.exe";
process.StartInfo.Arguments = "x file.rar d:\myFolder";
process.Start();
process.WaitForExit();   

但是如何在知道密码时提取SFX文件?

2 个答案:

答案 0 :(得分:3)

假设您的密码是 mypassword ,您需要将参数行更改为:

process.StartInfo.Arguments = @"x -pmypassword file.rar d:\myFolder";

请注意,您不应在密码之前的-p之后添加空格 - 否则它会提示您。

我还添加了一个@来将字符串标记为文字,否则它会尝试将文件名中的\m视为转义字符。

答案 1 :(得分:1)

你可以使用-p作为参数
假设您的密码是 123456

Process process = new Process();
process.StartInfo.FileName = "unrar.exe";
process.StartInfo.Arguments = "x -p123456 file.rar d:\myFolder";
process.Start();
process.WaitForExit();