012
03.04.2003, 13:12 Uhr
Tommix
|
Ich versuch's: Auf Funktionen innerhalb DLLs greift man über Zeiger zu. m_pSCardCommand ist ein Zeiger auf die Funktion SCardComand in der DLL. Um dessen Wert zu bekommen, rufe ich die Funtion GetProcAddress(Handle_der_DLL, Name_der_Funktion) auf. Diese liefert den Zeiger als FARPROC, was einfach ein umbenanntes int ist. Also muß ich es noch in den richtigen Typ wandeln: neuer_Ausdruck = reinterpret_cast<neuer_typ>(alter_Ausdruck); Geht auch im alten C-Stil: neuer_Ausdruck = (neuer_Typ)alter_Ausdruck. Den Funktionsprototyp kenne ich aus der Dokumentation: long __stdcall SCardComand(long *pHandle, char *cmd, long *pCmdLen, char *dataIn, long *pDataInLen, char *dataOut, long *pDataOutLen); und der kryptische Ausdruck oben beschreibt einen Zeiger darauf.
Gruß, Tommix |