2013-02-26 2 views
2

При попытке запустить 7-Zip-командную строку .exe из службы Windows C# мое приложение зависает, не выкидывая ошибку. Установка точек останова в приведенном ниже разделе показала, что зависание происходит после того, как я нажму Process.Start (p). Я поместил тот же код в приложение форм Windows и получил сообщение «Open File - Security Warning», в котором указано, что издатель не может быть проверен. Нажатие кнопки «Выполнить» в предупреждении вызвало его без проблем. Есть ли способ отключить флажок «Всегда спрашивать, прежде чем открывать этот файл», чтобы подавить это предупреждение?Предупреждение безопасности Windows при запуске 7-Zip

Мой код выглядит следующим образом:

ProcessStartInfo p = new ProcessStartInfo(); 
p.FileName = "7za.exe"; 

p.Arguments = "a -tzip \"" + targetName + "\" \"" + sourceName + "\" -mx=9"; 
p.WindowStyle = ProcessWindowStyle.Hidden; 

Process x = new Process(); 
x = Process.Start(p); 
x.WaitForExit(); 

Заранее спасибо за вашу помощь.

+1

Нет. Если бы вы могли легко обойти его, это сделало бы «Предупреждение о безопасности» бесполезным, не так ли? Безопасность, которую можно легко обойти, не зная, что это не безопасность. –

+0

У 7-Zip есть .NET API, который вы можете использовать вместо этого: http://www.7-zip.org/sdk.html –

ответ

3

щелкните правой кнопкой мыши на 7z exe в проводнике Windows, и в свойствах файла должна быть кнопка «разблокировать». щелкните его, а затем нажмите «Применить», чтобы остановить его на вашем компьютере, но, к сожалению, его просто часть окон теперь для любого exe, загруженного из Интернета и не подписанного.

Смежные вопросы