FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Problema con Psafearray
Hola gente,
Tengo un pequeño gran problema, pequeño porque estoy seguro que es fácil de resolver, grande porque llevo varios dias estancado. Os comento, quiero enviar un Psafearray desde un serverCOM y luego recuperar esos datos. En realidad quiero enviar pares nombre-valor donde el nombre seria string y el valor tipo integer, pero primero que funcione esto. Os paso el sencillo codigo de test que estoy haciendo. Al pulsar el botón me tiene que mostrar el valor de un elemento del Psafearray Le he añadido una comprobación que me dice que estoy enviando mal los parámetros con SafeArrayGetElement y me dice que está mal enviados, pero no se por qué. He mirado mil ejemplos y nada. Los misterios de los safearrays, la documentación de msdn, pero no encuentro el fallo o fallos function pipo:PsafeArray; var Data: Variant; SafeArray: PSafeArray; begin Data := VarArrayCreate([0, 1], VT_VARIANT); Data[0]:=1; Data[1]:=2; SafeArray := PSafeArray(TVarData(Data).VArray); result:=SafeArray; end; procedure TForm2.Button1Click(Sender: TObject); var SafeArray: PSafeArray; LBound, HBound, I : Integer; D: integer; begin safeArray:=pipo; SafeArrayGetLBound(safeArray, 1, LBound); //esto lo imprimo y sale correcto SafeArrayGetUBound(safeArray, 1, HBound); //esto lo imprimo y sale correcto I:=0; if E_INVALIDARG=SafeArrayGetElement(safeArray, I, D) then begin showMessage('caca de argumentos'); //siempre sale caca end else begin showMessage('argumentos niquelados'); end; showMessage(inttostr(D)); end; Os estaría bastante agradecido! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Convertir PSafeArray a String | Lizeth | Varios | 10 | 02-06-2011 21:51:02 |
Meter un Array de strings con Datos en un PSafearray | camomilass | OOP | 1 | 28-06-2006 12:09:39 |
|