Ich habe jetzt vor auch in die DKK einzusteigen und habe dazu erstmal eine grundsätzliche Frage.
Ich importiere eine Funktion mit [DllImport("cfgmgr32.dll")].
In der DKK steht in der cfgmgr32.h der Prototyp der Funktion.
Allerdings weiß ich nicht, welche Parameter die Funktion alle annimmt und verarbeitet.
Der Prototyp sieht z.B. so aus:
CMAPI
CONFIGRET
WINAPI
CM_Set_HW_Prof_FlagsA(
IN DEVINSTID_A szDevInstName,
IN ULONG ulConfig,
IN ULONG ulValue,
IN ULONG ulFlags
);
Als Flags weiß ich aus mehreren Beispielen, dass es da mehrere Möglichkeiten gibt.
Z.b. CSCONFIGFLAG_DISABLE.
Zum richtigen Programmieren brauche ich aber eine komplette Dokumentation über die einzelnen Parameter dieser Funktionen.
Ich kann diese aber in der DKK nirgends finden.
Habe ich da irgendwas falsch verstanden?
Die Programmierer dieser Beispiele müssen die ja auch irgendwo her kennen.
Ein Beispiel ist z.B: dieses: Beispiel
Das wichtigste ist ganz unten in blau, wo es über die Flags geht.
Meine Frage ist jetzt:
Woher bekomme ich weitere Informationen über die Funktionen?
Mit den Prototypen alleine kann ich wenig anfangen, oder?
Vielen Dank für eure Hilfe im Voraus
Original von cdr
(Was ist DKK? Meinst du DDK?)
DKK = Deutsche Krankenkasse! 😁
Jetzt unabhängig davon, was DKK bedeutet, aber du kannst anhand von Prototypen die Prozeduren/Funktionen über DllImport einfügen. In deinem Falle könnte das so aussehen:
[DllImport("cfgmgr32.dll", EntryPoint="CM_Set_HW_Prof_FlagsA")]
private static extern void SetHwProfFlagsA(
DEVINSTID_A szDevInstName,
uint ulConfig,
uint ulValue,
uint ulFlags
);
DEVINSTID_A sieht wie eine Struktur aus. Diese mußt du ebenfalls im Quellcode definieren und eventuell, je nach Aufbau und Art der Struktur, noch MarshalAs-Attribute verwenden, damit .NET weiß wie er Werte zu verarbeiten/umzuwandeln hat.
([bb]|[^b]{2})
Erstmal vielen Dank für eure Antworten.
Sorry, ich meinte die DDK.
Mit dem DllImport habe ich jetzt verstanden.
Nur, was ich noch nicht verstanden habe, ist:
Die Funktionen, die in cfgmgr32.dll exportiert sind, erwarten doch verschiedene Parameter, z.B. für Flags könnte man CSCONFIGFLAG_DISABLE einsetzen.
Aber es gibt da noch mehr Parameter, die man einsetzen könnte, je nach dem, was die Funktion machen soll.
Meine Frage ist ja, wo ich diese verschieden Parameter nachsehen kann.
D.h. wo es eine genau Beschreibung dieser einzelenen Funktionen gibt.
In der DDK finde ich nur die Prototypen, aber keinerlei Beschreibung, was die Funktionen machen.
Diese kenne ich nur aus dem Beispiel wir oben angegeben.
Die Konstanten müssten in der Header-Datei cfgmgr32.h stehen, falls du sie hast. In der Online Msdn-Hilfe steht bisschen was zur Verwendung. Bei CM_Set_HW_Prof_Flags steht allerdings: diese Funktion nicht benutzen. Die Erklärung, warum nicht und was es als Ersatz gibt, fehlt leider.
Hallo,
DDK scheint ja wichtig zu sein, kann mir vieleicht jemand sagen um was es sich mit DDK aufsich hat? X(
Hat sich erledigt =)
Mfg taotao