Datafox DFCom - API 04.03.22
Dokumentation zur Datafox Kommunikationsbibliothek (DFComDLL.dll / DFCom_x64.dll)
Programmbeispiele

Im folgenden soll kurz aufgezeigt werden wie Sie in C++ mit der Kommunikationsbibliothek auf ein Datafox-Gerät zugreifen können.

Passiv-Mode

Im Passiv-Mode erwartet das Gerät eine eingehende Verbindung.

#include <stdlib.h>
int connectionId = 1;
int deviceAddress = 254;
int errorNumber;
int serialNumber;
// Eine TCP / IP - Verbindung zum Gerät aufbauen.
if ( DFCComOpenIV( connectionId, 0, 3, "192.168.1.88", 8000, 3000 ) == 1 )
{
printf( "Verbindungs wurde erfolgreich geöffnet.\n" );
// Seriennummer lesen.
if ( DFCGetSeriennummer( connectionId, deviceAddress, &serialNumber, &errorNumber ) == 1 )
{
printf( "Seriennummer ist: %d\n", serialNumber );
}
else
{
printf( "Seriennummer konnte nicht ermittelt werden. Fehlernummer %i\n", errorNumber );
}
// Verbindung zu Gerät schließen.
DFCComClose( connectionId );
}
else
{
printf( "Verbindung konnte nicht hergestellt werden.\n" );
}
int DF_API_CALL DFCGetSeriennummer(int connectionNumber, int deviceAddress, int *errorNumber, int *value)
Die Seriennummer des Gerätes auslesen.
void DF_API_CALL DFCComClose(int connectionNumber)
Schließen einer geöffneten Verbindung.
int DF_API_CALL DFCComOpenIV(int connectionNumber, int deviceAddress, int connectionType, const char *connectionString, int connectionValue, int comunicationReadTimeout)
Initalisiert die Kommunikationsverbindung.


Konfigurationsdatei konvertieren

Für die Konvertierung von Dateien mit Hilfe der Kommunikationsbibliothek wird keine Verbindung zu einem Gerät benötigt.

#include <stdlib.h>
#include <string>
std::string srcFilePath = "srcConfig.aes"
std::string dstFilePath = "dstConfig.xml"
int flags = 0;
// AES-Konfigurationsdatei in XML konvertieren unter Verwendung der automatischen Dateityperkennung.
int result = DFCConvertFile( srcFilePath.c_str(), 0, dstFilePath.c_str(), 0, flags );
switch (result)
{
// Ausführung war erfolgreich, Ergebnis wurde in die Datei geschrieben.
case 1:
{
printf( "Die Datei '%s' wurde erfolgreich in '%s' konvertiert.", srcFilePath.c_str(), dstFilePath.c_str() );
break;
}
// Konvertierung der Formate nicht unterstützt.
case 2:
{
printf( "Die Konvertierung von '%s' nach '%s' wird nicht unterstützt.", srcFilePath.c_str(), dstFilePath.c_str() );
break;
}
// Fehler bei Ausführung
case 0:
default:
{
int connectionId = 400; // Standard-Id (Logkanal), um Fehler ohne eine aktive Verbindung zu protokollieren
int deviceAddress = 0;
int errorNumber = DFCGetLastErrorNumber(connectionId, deviceAddress);
printf( "Die Datei '%s' konnte nicht in '%s' konvertiert werden. Fehlernummer %i\n", srcFilePath.c_str(), dstFilePath.c_str(), errorNumber );
break;
}
}
DF_API_EXTERN int DF_API_CALL DFCGetLastErrorNumber(int connectionNumber, int deviceAddress)
Liefert die Fehlernummer welche zuletzt aufgetreten ist.
DF_API_EXTERN int DF_API_CALL DFCConvertFile(const char *srcFilePath, int srcType, const char *dstFilePath, int dstType, int flags)
Konvertieren von Datenformaten auf Dateiebene.

© 2003-2024 Datafox GmbH