B3D - Dll Benutzung

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Benibaerenstark

Betreff: B3D - Dll Benutzung

BeitragDo, Apr 27, 2006 20:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo zusammen,

wie übergebe ich mit B3D einen "Pointer" auf einen "Buffer" welcher einen "null-terminating string" enthält an eine dll?

Konkret geht es um das ansprechen von meinen Webcams. Die Avicap32.dll soll ja schon ziemlich erfolgreich verwendet worden sein. Ich möchte mir die Infos zu den Devices (Cams) hohlen.

Die entsprechend Funktion der dll heisst: capGetDriverDescriptionA(index, Pointer1,bufferlänge von Pointer1, Pointer2, bufferlänge von Pointer2), ich habe sie schon über eine decls-Datei eingebunden, jetzt muss ich ihr noch sagen, wo sie die Rückgabewerte hinfüllen soll.

Original msdn-beschrieb zur entsprechenden Variable (Pointer?) welcher der Funktion übergeben werden soll:

Zitat:
Pointer to a buffer containing a null-terminated string corresponding to the capture driver name.


mfg beni
3D Scanner selber bauen? -> www.bewe-3dscanner.ch.vu
 

BlackError

BeitragDo, Apr 27, 2006 21:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Sorry, da kann ich dir leider nicht behilflich sein. Aber ich bin mal wieder erstaunt, was man alles mit dlls und b3d anfangen kann. Ich bewundere alle, die mit soetwas umgehn können! Hoffe, du findest die Lösung deines Problems Wink
 

Dreamora

BeitragDo, Apr 27, 2006 21:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Datentransfers von und zu externen Libraries läuft normalerweise über Banks, da diese alle xbeliebigen Daten beinhalten können.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Benibaerenstark

Betreff: noch weiteres material gefunden

BeitragDo, Apr 27, 2006 22:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Nach weiterer suche auf msdn habe ich noch folgendes Beispiel für C gefunden:

wenn ich die Funktion richtig integriert habe (decls) und Strings anstelle von "char" verwende sowie eine Blitz-For-schleife hinbaue, sollte es doch funktionieren?! Confused

Zitat:
Enumerating Installed Capture Drivers

The following example uses the capGetDriverDescription function to obtain the names and versions of the installed capture drivers.

Code: [AUSKLAPPEN]
char szDeviceName[80];
char szDeviceVersion[80];

for (wIndex = 0; wIndex < 10; wIndex++)
{
    if (capGetDriverDescription (wIndex, szDeviceName,
        sizeof (szDeviceName), szDeviceVersion,
        sizeof (szDeviceVersion))
    {
        // Append name to list of installed capture drivers
        // and then let the user select a driver to use.
    }
}




Hier noch die komplette Beschreibung der Funktion:

Zitat:
capGetDriverDescription

The capGetDriverDescription function retrieves the version description of the capture driver.

BOOL VFWAPI capGetDriverDescription(
WORD wDriverIndex,
LPSTR lpszName,
INT cbName,
LPSTR lpszVer,
INT cbVer
);

Parameters

wDriverIndex

Index of the capture driver. The index can range from 0 through 9.

Plug-and-Play capture drivers are enumerated first, followed by capture drivers listed in the registry, which are then followed by capture drivers listed in SYSTEM.INI.

lpszName

Pointer to a buffer containing a null-terminated string corresponding to the capture driver name.

cbName

Length, in bytes, of the buffer pointed to by lpszName.

lpszVer

Pointer to a buffer containing a null-terminated string corresponding to the description of the capture driver.

cbVer

Length, in bytes, of the buffer pointed to by lpszVer.

Return Values

Returns TRUE if successful or FALSE otherwise.

Remarks

If the information description is longer than its buffer, the description is truncated. The returned string is always null-terminated. If a buffer size is zero, its corresponding description is not copied.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group