Código:
//BBCFPCOM 1.0 Type Library
//Version: 1.0
BBCFPCOMLib;
GUID = {C2CFDD51-0603-4889-9FF5-B943AA46118B};
Enum CFP_TYPE;
CFP_TYPE_NORMAL = 0;
CFP_TYPE_PATRIOT = 1;
CFP_TYPE_EDW = 2;
CFP_TYPE_RMA = 3;
CFP_TYPE_STP = 4;
CFP_TYPE_BRL = 5;
//ICFPEvents Interface
Interface _ICFPEvents;
GUID = {E219CDC3-58B9-4FF5-BC61-6295E378208E};
//method OnProgress
function OnProgress(bstrCode: BSTR; nPercent: I4; ulExtraInfo: UI4): HResult; stdcall;
//method OnDebugMessage
function OnDebugMessage(nLogLevel: I4; bstrMessage: BSTR): HResult; stdcall;
//method OnNeedPassword
function OnNeedPassword(nTriesRemaining: I4; out password: ^BSTR): HResult; stdcall;
//CFPGRSCOM Class
CoClass CFPGRSCOM;
GUID = {3B5626A7-724D-4F17-A980-002FDC26B567};
//BBCFPCOM 1.0 Type Library
Interface ICFPGRSCOM;
GUID = {33CF20BC-B452-4529-B78E-B48E821AF3A8};
//Connect via COM port
function Connect(nComport: I4; nConnectBaudRate: I4; nMaxTimeoutMs: I4; nResetTimeOusMs: I4): HResult; stdcall;
//Connect to Any USB device found
function ConnectAnyUSB(nMaxTimeoutMs: I4; nResetTimeOutMs: I4): HResult; stdcall;
//Connect USB device using a specific property
function ConnectUSB(bstrProperty: BSTR; bstrValue: BSTR; nMaxTimeoutMs: I4; nResetTimoeOutMs: I4): HResult; stdcall;
//method ConnectToBootImage
function ConnectToBootImage: HResult; stdcall;
//method ConnectToBootrom
function ConnectToBootrom: HResult; stdcall;
//ReloadPlantImage - SFI
function ReloadPlantImage(bstrFileName: BSTR): HResult; stdcall;
//ReloadPlantImageWithPatriot - MFI
function ReloadPlantImageWithPatriot(bstrFileName: BSTR): HResult; stdcall;
//method ReloadFileSystem
function ReloadFileSystem(bstrFileName: BSTR): HResult; stdcall;
//method SaveFileSystem
function SaveFileSystem(bstrFileName: BSTR; bVerifyToAPP: Bool): HResult; stdcall;
//Terminate all interfaces
function Disconnect: HResult; stdcall;
//Signal any in-process commands to abort
function Abort: HResult; stdcall;
//method GetCFPVersion
function GetCFPVersion(out pulCFPver: ^UI4): HResult; stdcall;
//method GetBootromInfo
function GetBootromInfo(out pulBRver: ^UI4; out pbSecurityEnabled: ^Bool): HResult; stdcall;
//method PatriotConnectToTunnel
function PatriotConnectToTunnel: HResult; stdcall;
//method PatriotGetInfo
function PatriotGetInfo(out pulPATver: ^UI4; out pulTunnelver: ^UI4; out pbBatteryVoltageOk: ^Bool): HResult; stdcall;
//method PatriotDisconnect
function PatriotDisconnect: HResult; stdcall;
//method PatriotLastLoadSuccessful
function PatriotLastLoadSuccessful(out pbSuccess: ^Bool): HResult; stdcall;
//method PatriotLoadImage
function PatriotLoadImage(bstrFileName: BSTR): HResult; stdcall;
//method PatriotGetOSVersionOfFile
function PatriotGetOSVersionOfFile(bstrFileName: BSTR; out pulOSver: ^UI4): HResult; stdcall;
//method GetOSVersionOfSFI
function GetOSVersionOfSFI(bstrFileName: BSTR; out pulOSver: ^UI4): HResult; stdcall;
//method GetCOMBuildVersion
function GetCOMBuildVersion(out pbstrVersion: ^BSTR): HResult; stdcall;
//method ReloadOS
function ReloadOS(bstrFileName: BSTR): HResult; stdcall;
//Erase files and OS
function Wipe(bWipeOS: Bool): HResult; stdcall;
//Erase files/OS and passwords
function NukeDevice: HResult; stdcall;
//Erase the Appstore
function SuperNukeDevice: HResult; stdcall;
//Toast the device
function ToastDevice(bstrPassword: BSTR): HResult; stdcall;
//method HeadInTheSandMode
function HeadInTheSandMode(bChangeMode: Bool; out pbHISMode: ^Bool): HResult; stdcall;
//method GetFlashSizeInBytes
function GetFlashSizeInBytes(out pulFlashSizeBytes: ^UI4): HResult; stdcall;
//method GetPlatformID
function GetPlatformID(out pulPID: ^UI4; out pbstrDeviceString: ^BSTR): HResult; stdcall;
//method GetVendorID
function GetVendorID(out pnVendorID: ^UI2): HResult; stdcall;
//method GetSFIOSVersionPlatID
function GetSFIOSVersionPlatID(bstrFileName: BSTR; out pulOSver: ^UI4; out pulPlatID: ^UI4): HResult; stdcall;
//method GetVersionOfAPPfile
function GetVersionOfAPPfile(bstrFileName: BSTR; out pbstrAPPversion: ^BSTR; out pbVersionValid: ^Bool; out pbstrAppNumber: ^BSTR; out pbNumberValid: ^Bool): HResult; stdcall;
//method GetSupportedBands
function GetSupportedBands(out pulBands: ^UI4): HResult; stdcall;
//method GetCOMBuildVersionID
function GetCOMBuildVersionID(out pulVersion: ^UI4): HResult; stdcall;
//Invoke a custom method
function InvokeMethod(bstrMethod: BSTR; out pulParam: ^UI4; out pbstrParam: ^BSTR): HResult; stdcall;
//property ConnectType
property-get ConnectType(out pVal: ^CFP_TYPE): HResult; stdcall;
//property ConnectType
property-put ConnectType(pVal: CFP_TYPE): HResult; stdcall;
//method GetPatriotVersion
function GetPatriotVersion(out pbstrPatVersion: ^BSTR): HResult; stdcall;
//method PatriotGetOSVersionOfFileStr
function PatriotGetOSVersionOfFileStr(bstrFileName: BSTR; out pbstrPatVer: ^BSTR): HResult; stdcall;
//method PatriotInBerbugMode
function PatriotInBerbugMode(out pbBerbugMode: ^Bool): HResult; stdcall;
//method SetConnectValues
function SetConnectValues(nMaxTimeoutMs: I4; bIncremental: Bool): HResult; stdcall;
//method GetOSVersionOfSFIEx
function GetOSVersionOfSFIEx(bstrFileName: BSTR; out pulOSver: ^UI4; out pbstrOSver: ^BSTR): HResult; stdcall;
//method ResetPatriot
function ResetPatriot: HResult; stdcall;
//method WhoAmI
function WhoAmI(bstrWhoAmI: BSTR): HResult; stdcall;
//Load Bootrom Binary
function LoadBootrom(bstrFileName: BSTR): HResult; stdcall;
//MassStorage
function SetMassStorage(nOn: I4): HResult; stdcall;
No tengo mas informacion de dicha libreria. Ya un companero lo pudo hacer funcionar en Linux en C++, como podria obtener yo que funciones hace cada funcion???