Ukryj Start Orb na Vista / Win 7 w C #

Podczas ukrywania paska zadań w systemie Vista i Windows 7 przycisk Start (znany również jako Kula startowa) nie zostaje ukryty. Szukałem rozwiązania tego problemu i znalazłem rozwiązanie, ale wydaje się ono bardziej złożone niż to konieczne. ToArtykuł CodeProject opisuje (i zawiera kod) rozwiązanie, w którym wylicza się wszystkie okna potomne wszystkich wątków w procesie, które zawierają menu startowe.

Czy ktoś znalazł prostsze rozwiązanie?

Tylko w celach informacyjnych. Kod do ukrycia paska zadań (bez ukrywania kuli) jest następujący. Najpierw wykonaj niezbędne importowanie i deklaracje Win32.

[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;

Następnie, gdzieś w metodzie, wywołaj je odpowiednimi argumentami

IntPtr hwndTaskBar = FindWindow("Shell_TrayWnd", "");
ShowWindow(this.hwndTaskBar, SW_HIDE);

questionAnswers(1)

yourAnswerToTheQuestion