string path = @"C:\Users\<user>\Documents\Visual Studio\Projects\7ZipFile\RequiredDocs\";
ProcessStartInfo zipper = new ProcessStartInfo(@"C:\Program Files\7-Zip\7z.exe");
zipper.Arguments = string.Format("a -t7z {0}.7z {0} *.txt -mx9", path);
zipper.RedirectStandardInput = true;
zipper.UseShellExecute = false;
zipper.CreateNoWindow = true;
zipper.WindowStyle = ProcessWindowStyle.Hidden;
Process process = Process.Start(zipper);
목표 : 모든 * .txt 파일을 "path"에 압축하고 압축 파일을 "path"에 저장합니다. 이러한 .txt 파일은 압축 후 "path"에 없어야합니다.
코드를 실행할 때 아무 일도 일어나지 않는 것 같습니다 (오류 0 개) ...
도와주세요!
감사합니다
업데이트 : 나는 7Zip을 사용하고 있으며이 코드가 .NET 3.5와 함께 사용될 Windows에 7Zip 응용 프로그램을 설치했습니다.
프로그램에서 7Zip을 사용하는 일반적인 방법은 7za.exe (설치된 7z 프로그램이 아님)를 호출하고 응용 프로그램에 7za를 포함하는 것입니다.
이 페이지에는 사용 방법에 대한 좋은 자습서가 있습니다. 프로그래밍 방식으로 zip / 7zip해야 할 때마다 훌륭하게 작동합니다.
순수한 .NET 방식의 일반 zip 기능을 원한다면 ZipArchive 클래스를 사용할 수도 있습니다 (.NET 4.5 필요).
또한 공백이있는 경우 경로를 따옴표로 묶어야합니다. 따옴표는 '\'로 이스케이프됩니다. ""는 C #의 따옴표에 대한 유효한 이스케이프 시퀀스이기도합니다.
string.Format("a -t7z \"{0}.7z\" \"{0}\" *.txt -mx9", path);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다