2009-04-05 12 views
8

Jedes Mal, wenn ich mit dlls wie der user32.dll interagieren brauche ich Konstanten wie MF_REMOVE. Gibt es einen Überblick über all diese Konstanten oder eine C# -Bibliothek, die alle diese Konstanten konstant hält?Wo finde ich eine Liste von Windows-API-Konstanten

+0

Verwenden das Windows SDK wenn du kannst! –

+0

Wo finde ich dieses Windows SDK für winXP? –

Antwort

7

Sie werden alle Konstanten in den C-Header der Win32-API finden. Der Low-Tech-Weg, diese Informationen zu erhalten, besteht darin, einfach eine Textsuche im Header-Ordner von Visual Studio oder dem Plattform-SDK auszuführen.
Dies wird in der Regel so etwas wie:

C: \ Programme \ Microsoft SDKs \ Windows \ V6.0A \ Include \

3

Ich glaube, Sie werden alle finden, was Sie über APIs wollen es: http://pinvoke.net/

+0

Wir bieten ein Add-in zu Visual Studio 2003 und 2005 Ich habe vs 2008 und das Tool nicht in meinem VS angezeigt – Tarion

3

die PInvoke Interop Assistant Versuchen. Für die meisten Konstanten müssen Sie lediglich ihren Namen eingeben und es wird der C# - oder VB.Net-Code ausgegeben, der diese Konstanten darstellt.

Das Werkzeug ist nicht auf Konstanten beschränkt. Es kann auch bei Typdefinitionen, Funktionen und Funktionszeigern helfen. Es kann auch die meisten Definitions-Snippets direkt in verwalteten Code übersetzen.

http://blogs.msdn.com/blogfiles/jaredpar/WindowsLiveWriter/MakingPInvokeEasy_E069/Pinvoke2_thumb.png

0

Dieses Online-Tool MagnumDb als "Magic Number Database" (Disclaimer: Ich habe es geschrieben) ist eine völlig kostenlose Suchmaschine, die 99% der Windows SDK-Konstanten enthält.

Sie können nach Namen oder Wert abfragen, Platzhalter verwenden, usw., zum Beispiel: http://www.magnumdb.com/search?q=MF_REMOVE

werden Ihnen diese (Name, Typ, Wert, Hex-Wert, SDK Header-Datei Standort) erhalten:

MF_REMOVE Int32 4096 0x00001000 %ProgramFiles(x86)%\Windows Kits\10\Include\10.0.16299.0\um\winuser.rh(1213,0) 
Verwandte Themen