![]() |
DLL Funktionen einbinden
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
hat jemand einen Plan, wie man folgende DLL in delphi aufrufen kann, habe nur das C-Header File, hoffe es kann jemand was damit anfangen, habe schon das ganze Wochenende damit verplempert - ohne Erfolg (kann immerhin mit "function GetUsbDeviceListName(lpszNameArray: PPChar): Integer; StdCall; external 'USBLibrary.dll' name '?GetUsbDeviceListName@@YAHQAPAPAD@Z'; " schon mal die Geräte-ID abfragen) Es handelt sich hier um einen USB-Treiber, ich müsste nur wissen, wie ich den USBPipe öffnen kann. In C sieht das<ganz einfach aus. Hier das Header:
Code:
#include <windows.h>
#include <setupapi.h> #include <basetyps.h> class USBLIBRARY_API CFCPipeUSB { HANDLE m_hPipeIn; // Handel of the input file HANDLE m_hPipeOut; // Handel of the output file public : CFCPipeUSB(); // Constructor short Open(char *sDeviceName); // Open pipe short Close(); // Close pipe virtual short ReadPipe(LPVOID pBuffer, ULONG ulBufferSize); // Read data virtual short WritePipe(LPVOID pBuffer, ULONG ulBufferSize, ULONG *pBytesWritten); // Write data }; // Get list of connected device USBLIBRARY_API int GetUsbDeviceListName(char** deviceList[]); Ernstl PS: Habe mal die C-Datei angehängt [edit=sakura] [c]-Tags Mfg, sakura[/edit] |
Re: DLL Funktionen einbinden
Zitat:
ich weiß nicht, ob dir das weiterhelfen wird. Aber in Delphi werden DLLs, die mit C oder C++ geschrieben sind normalerweise mit der Aurufkonvention cdecl augerufen und nicht mit stdcall. |
Re: DLL Funktionen einbinden
Das wäre mir aber neu. Alle Windows API Funktionen werden mit stdcall aufgerufen.
|
Re: DLL Funktionen einbinden
Delphi Hilfe -> Aufrufkonventionen
Dort ist nochmal erklärt, was stdcall und cdecl unterscheidet und wo die Gemeinsamkeiten liegen. :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz