Les comento que la unidad a la cual deseo realizar la conexion es una Lectora Biometrica V-Station 4G, ya logre convertir algo de codigo a delphi pero no encuentro el similar en Delphi para la parte de Marshall, les indico donde me marca el error.
Gracias de antemano.
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
max_datalogs, TotalEntries, numTrans, All_Transactions: Integer ;
Manejador_Memoria, IntPtr: ^integer ;
m_pUnitHandle: HUNIT ;
buffSizeTotal, buffSize1Trans, lStatus, m_NumTransToEvaluate, m_NumTransProcessed, m_Result: Integer;
BII_Transaction: BII_Transaction_Log_Struct ;
begin
Max_Datalogs := 500;
Manejador_Memoria:= IntPtr;
All_Transactions := 0;
m_pUnitHandle:= null;
lStatus := BII_Status_MT(m_pUnitHandle) ;
if lStatus <> 0 then begin
end ;
TotalEntries := BII_Get_Num_Transaction_Log_MT(m_pUnitHandle, ALL_TRANSACTIONS);
if TotalEntries <0 then begin
end;
m_NumTransToEvaluate := -1 ;
m_NumTransProcessed := 0 ;
m_Result := 1 ;
While TotalEntries > 0 And m_Result > 0 And lStatus := 0 do
begin
If TotalEntries > MAX_DATALOGS then begin
numTrans := MAX_DATALOGS ;
end
else
begin
numTrans := TotalEntries;
End ;
TotalEntries := numTrans ;
Try
buffSizeTotal := buffSize1Trans * numTrans ;
rawData: array[buffSizeTotal..-1] of Byte ;
Manejador_Memoria := Marshal.AllocHGlobal(buffSizeTotal) ;
lStatus := BII_Status_MT(m_pUnithandle)
If lStatus := 0 Then
m_Result := BII_Read_Transaction_Log_MT(m_pUnitHandle, ALL_TRANSACTIONS, 1, numTrans, Manejador_Memoria)
If m_Resul > 0 Then
Marshal.Copy(Manejador_Memoria, rawData, 0, buffSizeTotal)
Marshal.FreeHGlobal(Manejador_Memoria)
end;