La función ShowWindow no funciona cuando la aplicación de destino se ejecuta como administrador

Estoy escribiendo un programa que muestra / oculta la ventana de alguna aplicación de destino. Lo estaba probando antes y noté algo extraño. Si ejecuto la aplicación de destino como Administrador (clic con el botón derecho-> Propiedades, pestaña "Compatibilidad", "Ejecutar este programa como administrador") no funciona.

Para demostrar, escribí una aplicación de GUI simple llamada "Aplicación de destino" y luego escribí el siguiente código para probar y mostrar / ocultar esta aplicación:

class Program
{
  static void Main(string[] args)
  {
    IntPtr windowPtr = FindWindow(null, "TargetApplication");
    ShowWindow(windowPtr, 0); // 0 = Hide            
    Console.WriteLine("The window is now hidden. Press Enter to restore");
    Console.ReadLine();
    ShowWindow(windowPtr, 9); // 9 = Restore
    Console.WriteLine("The window is now restored. Press Enter to exit.");            
    Console.ReadLine();
  }

  [DllImport("user32.dll", EntryPoint = "FindWindow", SetLastError = true)]
  static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

  [DllImport("user32.dll")]
  static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
}

Si inicio la aplicación de Windows sin derechos de administrador, no funcionará.

¿A alguien le importaría probar esto por mí? He subido los archivos .exe para ambas aplicaciones aquí:

Descargar TestShowWindow

Todo lo que tienes que hacer es descargarlos y ejecutar TestApplication.exe y luego ejecutar TestShowWindow.exe. Encontrará que al cambiar TestApplication.exe para que se ejecute como Administrador, ShowWindow dejará de funcionar.

Por supuesto, si no confía en descargar mis cosas, siempre puede compilar mi código y probarlo en cualquier aplicación de destino en Windows en la que pueda cambiar el modo de compatibilidad.

PD No estoy seguro de si hace una diferencia, pero estoy ejecutando Windows 8 Pro. 64 bits.

Respuestas a la pregunta(2)

Su respuesta a la pregunta