Я хочу встроить EXE и их диалоги в Winform, особенно в WinRAR, почему я хочу встроить его и их диалоги? потому что я хочу проверить, все ли части многотомных файлов найдены в чем проблема? проблема в том, что он показывает новое диалоговое окно тома, когда файл пропускает следующий том. Мне нужно знать, пропустил ли файл следующий том и в то же время не показывать диалоговое окно следующего тома, поэтому я хочу встроить winRAR и их диалоги в winform c# , Я нашел, как встроить его вот код:
[DllImport("user32.dll")]
static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
....
IntPtr PanelHandler= WinRARPanel_Ref.Handle;
p.Start();
// p.BeginOutputReadLine();
// p.BeginErrorReadL7ine();
IntPtr h = p.MainWindowHandle;
// p.WaitForInputIdle();
while (true)
{
if (p.HasExited)
break;
if (p.MainWindowHandle != IntPtr.Zero)
break;
Thread.Sleep(100); // Don't hog the CPU
p.Refresh(); // You need this since `MainWindowHandle` is cached
// do additional checks, or add a timeout in case the process is stalled
// or never creates a main window handle, etc.
}
if (!p.HasExited)
{
SetParent(p.MainWindowHandle, PanelHandler);
SetWindowLong(p.MainWindowHandle, GWL_STYLE, WS_VISIBLE);
}
...
это встраивать winRAR, но не их диалоги, потому что следующий объем диалогов отображается снаружи, так как встроить процесс и их диалоги внутри панели? Спасибо за помощь