2016-01-23 5 views
1

Я регистрации DLL при запуске моего приложения с помощью этой команды:Как я могу скрыть окно сообщения DLL в моем приложении?

System.Diagnostics.Process.Start("regsvr32",strPath); 

и после выполнения этой строки кода, появляется окно, которое говорит регистрация DLL была успешной или нет.

Мой вопрос в том, как я могу скрыть это окно в своем приложении?

+0

Тип regsvr32.exe /? для просмотра параметров командной строки. –

ответ

2
Process proc = new Process 
{ 
    StartInfo = 
    { 
     FileName = "regsvr32", 
     Arguments = "/s" + strPath, 
     RedirectStandardError = true, 
     UseShellExecute = false, 
     CreateNoWindow = true 
    } 
}; 
proc.Start(); 

Также вы можете сделать это:

System.Diagnostics.Process.Start("regsvr32","/s" + strPath); 
+0

thanx, но где я должен добавить locationPath DLL? –

+0

@ Shima.Y в 'strPath'. (например, 'strPath = Application.StartupPath +" //myDll.dll ";' –

+0

, если я определяю процесс, как вы сказали, в методе начала я не могу передать strPath, я могу просто вызвать Start() без аргументов! –

2

Используйте /s – Silent; display no message boxes (added with Windows XP and Windows Vista) вариант.

Источник: What is the different between /n and /i parameters of RegSvr32.exe?

+0

Вы бы мне помогли с кодом? где я должен добавить/s в мой код выше? –

+0

http://stackoverflow.com/questions/3268022/process-start-arguments или просто Process.Start ("regsvr32", "/ s/i path/to/lib.dll") – csharpfolk