System.IntPtr

01/11/2005 - 10:55 por Mario Barro | Informe spam
Hola;

A ver si me echaís un cable.
Tengo una librería para Net Compact Framework que realmente traduce una
hecha en C++

Y en una función en concreto dice su ayuda de la librería de C++

BOOL WINAPI GetState (
BOOL*
);
Parameters
BOOL*
Returns the current input state.

Return Value
A nonzero value indicates success. Zero indicates failure. To get extended
error information, call GetLastError.


Y en la que intento usar en .Net me su parámetros es:

bool GetState (System.IntPtr);

Pregunta (se agradece ejemplo)

Cómo paso el parámetro System.IntPtr para recuperar el valor booleano que
devuelve la función (incluido conversion de InPtr a boolean).
Cómo llamo a GetLastError si hay devuelve cero la función.

Preguntas similare

Leer las respuestas

#1 Octavio Hernandez
01/11/2005 - 20:22 | Informe spam
Mario,

Creo que el prototipo que deberías utilizar para llamar a esa función
debería ser:

bool GetState(ref bool state);

De esa forma, la llamada sería tan sencilla como:

bool resultado = 0; // donde depositaremos el resultado de la llamada
bool estado = 0; // la variable en que recibiremos el estado

resultado = GetState(ref estado);

Para llamar a GetLastErrror, mira este enlace:

http://www.pinvoke.net/default.aspx...Error.html

PInvoke.net es un sitio excelente para resolver todos los temas relacionados
con las llamadas a la API Win32.

Slds - Octavio


"Mario Barro" escribió en el mensaje
news:e$

Hola;

A ver si me echaís un cable.
Tengo una librería para Net Compact Framework que realmente traduce una
hecha en C++

Y en una función en concreto dice su ayuda de la librería de C++

BOOL WINAPI GetState (
BOOL*
);
Parameters
BOOL*
Returns the current input state.

Return Value
A nonzero value indicates success. Zero indicates failure. To get extended
error information, call GetLastError.


Y en la que intento usar en .Net me su parámetros es:

bool GetState (System.IntPtr);

Pregunta (se agradece ejemplo)

Cómo paso el parámetro System.IntPtr para recuperar el valor booleano que
devuelve la función (incluido conversion de InPtr a boolean).
Cómo llamo a GetLastError si hay devuelve cero la función.



Respuesta Responder a este mensaje
#2 Mario Barro
02/11/2005 - 08:24 | Informe spam
Gracias Octavio;

A mi tampoco me parece muy correcto el prototipo realizado, pero el caso es
que está así y no tengo las fuentes.
Con lo cual tengo que ceñirme, de momento, a como está ahora.
Ideas?

Saludos


"Octavio Hernandez" escribió en el mensaje
news:e$
Mario,

Creo que el prototipo que deberías utilizar para llamar a esa función
debería ser:

bool GetState(ref bool state);

De esa forma, la llamada sería tan sencilla como:

bool resultado = 0; // donde depositaremos el resultado de la llamada
bool estado = 0; // la variable en que recibiremos el estado

resultado = GetState(ref estado);

Para llamar a GetLastErrror, mira este enlace:

http://www.pinvoke.net/default.aspx...Error.html

PInvoke.net es un sitio excelente para resolver todos los temas


relacionados
con las llamadas a la API Win32.

Slds - Octavio


"Mario Barro" escribió en el mensaje
news:e$
>
> Hola;
>
> A ver si me echaís un cable.
> Tengo una librería para Net Compact Framework que realmente traduce una
> hecha en C++
>
> Y en una función en concreto dice su ayuda de la librería de C++
>
> BOOL WINAPI GetState (
> BOOL*
> );
> Parameters
> BOOL*
> Returns the current input state.
>
> Return Value
> A nonzero value indicates success. Zero indicates failure. To get


extended
> error information, call GetLastError.
>
>
> Y en la que intento usar en .Net me su parámetros es:
>
> bool GetState (System.IntPtr);
>
> Pregunta (se agradece ejemplo)
>
> Cómo paso el parámetro System.IntPtr para recuperar el valor booleano


que
> devuelve la función (incluido conversion de InPtr a boolean).
> Cómo llamo a GetLastError si hay devuelve cero la función.
>
>
>


Respuesta Responder a este mensaje
#3 Mario Barro
02/11/2005 - 08:30 | Informe spam
Octavio;

Muchas gracias por el Link, un buen sitio de referencia.


"Mario Barro" escribió en el mensaje
news:e$

Hola;

A ver si me echaís un cable.
Tengo una librería para Net Compact Framework que realmente traduce una
hecha en C++

Y en una función en concreto dice su ayuda de la librería de C++

BOOL WINAPI GetState (
BOOL*
);
Parameters
BOOL*
Returns the current input state.

Return Value
A nonzero value indicates success. Zero indicates failure. To get extended
error information, call GetLastError.


Y en la que intento usar en .Net me su parámetros es:

bool GetState (System.IntPtr);

Pregunta (se agradece ejemplo)

Cómo paso el parámetro System.IntPtr para recuperar el valor booleano que
devuelve la función (incluido conversion de InPtr a boolean).
Cómo llamo a GetLastError si hay devuelve cero la función.



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida