Moin Zusammen,<br>
<br>
ich möchte die Funktion RegQueryInfoKey aus der advapi32.dll verwenden, da ich ansonsten keinen Ersatz ausmachen konnte (z.B. für die LastWriteTime).<br>
<br>
Das ganze habe ich dann innerhalb einer Klasse wie folgt deklariert:<br>
<br>
<pre>
[DllImport("advapi32.dll", CharSet = CharSet.Auto)]
public static extern int
RegQueryInfoKey(
int hKey,
[MarshalAs(UnmanagedType.LPTStr)]
ref string lpClass,
ref int lpcClass,
ref int lpReserved,
ref int lpcSubKeys,
ref int lpcMaxSubKeyLen,
ref int lpcMaxClassLen,
ref int lpcValues,
ref int lpcMaxValueNameLen,
ref int lpcMaxValueLen,
ref int lpcbSecurityDescriptor,
ref FILETIME lpftLastWriteTime
);
</pre>
<br>
Gemäss einer Doku, die ich bei MS gefunden habe sollte das auch so gehen.<br>
Leider stosse ich beim Aufruf der Funktion auf verschiedene Probleme:<br>
Da ich, für den konkreten Anwendungsfall, nur wenige der Werte benötige, gedachte ich null bzw. 0 für die entsprechenden Stellen zu übergeben. Da dies nicht funktionierte ('typ' kann nicht zu 'ref typ' konvertiert werden... Tolle Fehlermeldung, warum nicht? ) hab' ich mir versucht mit Dummy Variablen der entsprechenden Typen weiterzuhelfen. Gleicher Fehler.<br>
Weiss jemand, was ich da falsch mache, bzw. wie ich auch null übergeben kann?<br>
<br>
Ciao<br>
Chris
<br>
ich möchte die Funktion RegQueryInfoKey aus der advapi32.dll verwenden, da ich ansonsten keinen Ersatz ausmachen konnte (z.B. für die LastWriteTime).<br>
<br>
Das ganze habe ich dann innerhalb einer Klasse wie folgt deklariert:<br>
<br>
<pre>
[DllImport("advapi32.dll", CharSet = CharSet.Auto)]
public static extern int
RegQueryInfoKey(
int hKey,
[MarshalAs(UnmanagedType.LPTStr)]
ref string lpClass,
ref int lpcClass,
ref int lpReserved,
ref int lpcSubKeys,
ref int lpcMaxSubKeyLen,
ref int lpcMaxClassLen,
ref int lpcValues,
ref int lpcMaxValueNameLen,
ref int lpcMaxValueLen,
ref int lpcbSecurityDescriptor,
ref FILETIME lpftLastWriteTime
);
</pre>
<br>
Gemäss einer Doku, die ich bei MS gefunden habe sollte das auch so gehen.<br>
Leider stosse ich beim Aufruf der Funktion auf verschiedene Probleme:<br>
Da ich, für den konkreten Anwendungsfall, nur wenige der Werte benötige, gedachte ich null bzw. 0 für die entsprechenden Stellen zu übergeben. Da dies nicht funktionierte ('typ' kann nicht zu 'ref typ' konvertiert werden... Tolle Fehlermeldung, warum nicht? ) hab' ich mir versucht mit Dummy Variablen der entsprechenden Typen weiterzuhelfen. Gleicher Fehler.<br>
Weiss jemand, was ich da falsch mache, bzw. wie ich auch null übergeben kann?<br>
<br>
Ciao<br>
Chris
Comment