Lo que pasa es que estoy haciendo un programa, hago lo siguiente
Código:
Todo funciona bien, has que oculto la ventana, y cuando lo quiero volver a mostrar ya no quiere. Es que por que cuando busco la ventana con "process" el "mainWindowHandle" me regresa 0, como si no lo estuviera encontrando, pero en unas propiedades si me muestra por datos del programa, por ejemplo en MainModulo, indica el nombre del programa "Notepad.exe", en lenght me indica 1. Les agradezco su apoyo anticipadamente, muchas gracias. if (hideapp == true) uFlags = uFlags | SWP_HIDEWINDOW | SWP_NOACTIVATE; if (nomoved == true) uFlags = uFlags | SWP_NOMOVE; if (nosize == true) uFlags = uFlags | SWP_NOSIZE; if (topmost == true) { SWP_Topmost = HWND_TOPMOST; uFlags = uFlags | SWP_SHOWWINDOW | SWP_NOACTIVATE; } else { SWP_Topmost = HWND_NOTOPMOST; System.Diagnostics.Process[] Procesos = System.Diagnostics.Process.GetProcessesByName(nameapp); if (Procesos.Length > 0) { Procesos = System.Diagnostics.Process.GetProcessesByName(nameapp); // Aqui el Procesos[0].MainWindowHandle --> 0, y es por eso que ya no hace nada for (int p = 0; p < Procesos.Length; p++) { if (topmost == true) { if (IsIconic(Procesos[p].MainWindowHandle) == true) ShowWindow(Procesos[p].MainWindowHandle, SW_iRestore); } SetWindowPos(Procesos[p].MainWindowHandle, SWP_Topmost, x, y, cx, cy, uFlags); if (hideapp==false) ShowWindow(Procesos[p].MainWindowHandle, SW_SHOW); } }