PDA

Ver la Versión Completa : Problemas OleVariant y C#


argami
06-10-2006, 10:31:55
Estamos haciendo un servicio web en c# puro y duro este nos sirve de pasarela para usar un dcom pero desde la web.

es decir
------- ----------- --------
INET ------> WebServ ------> dcom
------- ----------- --------

Este Dcom esta programado en delphi7 y si fuera que el webservice fuese un soap en delphi no habria problema pero no es asi.

El codigo que se usa en delphi es el siguiente (solo es un ejemplo)


TMyRecord = Record
a:Integer;
end;

function RecordToVariant(r: TMyRecord):OleVariant;
var
P:Pointer;
begin
result :=VarArrayCreate([0, sizeof(TMyRecord)], varByte);

P := VarArrayLock(result);
Move(P^, result, sizeof(r));
VarArrayUnlock(result);
end;


//La funcion exportada es:

procedure SomeFunction(var v:OleVariant);
var
myRecord:TMyRecord;
begin
myRecord.a := 1;
v := RecordToVariant(myRecord);
end;





Se ha creado una estructura con la mismas caracteristicas que el TMyRecord el problema que tengo es que no se como extraer la informacion retenida en el OleVariant.

si alguno tiene alguna idea y me puede ayudar os lo agradeceria

un saludo.