Hide Start Orb auf Vista / Win 7 in C#

Beim verstecken der Taskleiste unter Windows Vista und Windows 7 den Start-Button (auch bekannt als die Start-Orb) nicht ausgeblendet werden. Ich habe auf der Suche nach einer Lösung für dieses, und ich hab eines gefunden, aber es scheint komplizierter als notwendig.
Diese CodeProject-Artikel beschrieben (und enthält code für) eine Lösung, wo Sie auflisten, alle untergeordnete Fenster aller threads im Prozess, enthält das start-Menü.

Hat sich jemand gefunden eine einfachere Lösung?

Nur für Referenz. Der code für das ausblenden der Task-Leiste (ohne sich zu verstecken, the Orb) ist wie folgt. Zuerst die notwendigen Win32 imports und Deklarationen.

[DllImport("user32.dll")]
private static extern IntPtr FindWindow(string className, string windowText);

[DllImport("user32.dll")]
private static extern int ShowWindow(IntPtr hwnd, int command);


private const int SW_HIDE = 0;
private const int SW_SHOW = 1;

Dann in einer Methode irgendwo, nennen Sie Ihnen die richtigen Argumente

IntPtr hwndTaskBar = FindWindow("Shell_TrayWnd", "");
ShowWindow(this.hwndTaskBar, SW_HIDE);
  • Ich denke, das ist so etwas wie eine doppelte Frage. Jemand schon gepostet und Fragen, wie die Taskleiste ausblenden, und die Lösung, gegeben ist die form.WindowState = FormWindowState.Maximiert; form.FormBorderStyle = FormBorderStyle.Keine, Diese combo sollte die Taskleiste ausblenden, ganz gut. Ich habe kein problem, dies zu tun auf Win7. Nicht versuchen, es auf Vista.
  • Nicht verstecken der Taskleiste. Es deckt es auf.
  • Siehe stackoverflow.com/questions/505167/...
  • Ah... Sie will es Weg altogehter? 🙂
  • Ja. Ich habe nicht den Luxus, über den gesamten Bildschirm mit einem einzigen Fenster.
  • Sie können erstellen Sie ein sekundäres Fenster, das deckt den Bildschirm, und lassen Sie dann Ihren anderen windows-tun, was Sie wollen. Laufen Sie nicht herum ausblenden der Taskleiste manuell-was ist, wenn zwei Programme getan? Oder was ist, wenn dein Programm abstürzt, bevor es eine chance bekommt Sie es einblenden?
  • Programm-Absturz vor dem einblenden ist definitiv ein problem mit diesem Ansatz. Vielleicht können Sie helfen, eine sauberere Möglichkeit, dies zu erreichen enthalten im OS? Wie ich bereits erwähnt habe in dem Kommentar direkt über dir, ich habe nicht den Luxus, über den gesamten Bildschirm mit einem einzigen Fenster.
  • Erstellen eines Vollbild-Fenster ist die einzige option. Können Sie nicht einfach spin-off ein worker-thread erstellen ein dummy-fullscreen-Fenster?

InformationsquelleAutor Waylon Flinn | 2009-07-22
Schreibe einen Kommentar