Jak wyodrębnić pliki ZIP za pomocą wiersza poleceń WinRAR?

Podczas próby wyodrębnienia plików zip pojawia się błąd:

c: ścieżka nazwa.zip nie jest archiwum RAR
Brak plików do wyodrębnienia

Mój kod to:

p.StartInfo.FileName = @"C:\Program Files\WinRAR\rar.exe";
p.StartInfo.Arguments = string.Format("x -o- {2} \"{0}\" * \"{1}\"\\ ",
  szFN,
  outFolder,
  passWord == null ? "" : string.Format("-p\"{0}\"", passWord));

Wersja GUI może wyodrębniać pliki zip i 7z.

Dlaczego to nie działa? Jak mogę wyodrębnić pliki zip i 7z?

(UWAGA: Mam inny kod źródłowy dla 7zip. Myślę, że mogę połączyć te dwa i użyć tylko powyższego, gdy plik ma rozszerzenie rar. Ale nie podoba mi się to rozwiązanie.)

questionAnswers(4)

yourAnswerToTheQuestion