User32 API-Aufrufe in .NET
Frage
Ich plane derzeit ein Projekt, an dem aus einem Shell-Ersatz für Windows-Erstellung (basierend auf Blackbox, bblean speziell). Allerdings möchte ich die Leistung von .NET nutzen, dies zu tun. Viele der API-Aufrufe Ich muss innerhalb der User32 Bibliothek untergebracht. Ich kann natürlich Verwendung P / Invoke und erstellen Sie eine statische Klasse für mich zu handhaben.
Allerdings ist eine Menge von dieser Funktionalität bereits in dem .NET-Framework zur Verfügung, und zwar im System.Management Namensraum mit Prozessen und aktiven Fenstern für den Umgang usw. Einige scheinen es beispielsweise zu fehlen, die SetForegroundWindow Funktionen.
Haben Sie Kenntnis von irgendetwas in den .NET-Framework aufgebaut, die bereits diese Funktionalität bereitstellt, oder muß ich die P nehmen / route Invoke?
Lösung
Ich experimentierte vor kurzem mit meinem eigenen Windowing-System zu schaffen, wirklich schaffen nur neue Grenzen um alle Fenster, aber es benötigt, um eine Vielzahl von Funktionen aus der Win32-API, die ich P / Invoke hinzufügen in.
Aber es ist ein gebrauchsfertiger to-go-Bibliothek in .NET, die meisten von dem Win32-API wickelt bereits gefunden hier
Andere Tipps
Unofrtunately, für eine Menge Dinge, werden Sie die P gehen müssen / Invoke Route. Glücklicherweise gibt es pinvoke.net mit Definitionen für viele Win32-APIs.