Nazwa aktualnie aktywnego okna aplikacji w Windows

0

Jak w C# pobrać nazwę aktualnie aktywne okienka? ma ktoś jakiś pomysł?
głównie chce sterować np. allplayer poprzez skróty klawiszowe które będzie podawać aplikacja.
"wciskanie klawiszy" przez aplikację już mam SendKeys.Send

2
	class Program {
		[DllImport("user32.dll")]
		static extern IntPtr GetForegroundWindow();

		[DllImport("user32.dll")]
		static extern int GetWindowText(IntPtr hWnd, StringBuilder text, int count);

		static string GetActiveWindowTitle() {
			const int count = 256;
			var hwnd = GetForegroundWindow();
			var buffer = new StringBuilder(count);
			
			if(GetWindowText(hwnd, buffer, count) > 0) {
				return buffer.ToString();
			}

			return null;
		}

		static void Main(string[] args) {
			var title = GetActiveWindowTitle();
			if(title != null) {
				Console.WriteLine("Tytul aktywnego okna => {0}", title);
			}
		}
	}

Drobny edit:
Widze, ze sie bawisz w korzystanie z API Windowsa w C#, wiec dorzuce jeszcze 2 linki:
http://pinvoke.net/index.aspx -> sygnaturki funkcji winapi, jakie maja byc w C#. + drobne docsy.
http://msdn.microsoft.com/en-us/library/ff818516(v=vs.85).aspx -> opis calego winapi ;]

1 użytkowników online, w tym zalogowanych: 0, gości: 1