Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/01/2012, 01:54
Fw190
 
Fecha de Ingreso: junio-2010
Ubicación: Madrid
Mensajes: 620
Antigüedad: 13 años, 11 meses
Puntos: 73
Respuesta: (C) Error de variables

Comprueba qué parámetros debes pasar a GetWindowLong. El primer error/warning (no has indicado exactamente si te da error o warning) que te da te está diciendo que estás intentando pasar un entero cuando espera un puntero. Abre el archivo windows.hwin.h, depende de tu compilador), que probablemente estará en el subdirectorio include de tu compilador. Encontrarás algo parecido a esto (los puntos suspensivos indican que hay más líneas):

Código C:
Ver original
  1. ...
  2. typedef void *HANDLE;
  3. ...
  4. typedef HANDLE HWND;
  5. ...
  6. LONG STDCALL GetWindowLongA(HWND,int);
  7. ...
  8. #define GetWindowLong GetWindowLongA
  9. ...

Es decir, que el parámetro HWND que espera GetWindowLongA (que es la función que te indica el mensaje de warning, debido al #define) es en realidad un puntero a tipo void.

El segundo mensaje se debe a que estás pasando como parámetro un puntero a long (al haber definido hWnd como long, &hWnd es un puntero a long), cuando está esperando un puntero a void.

No sé de donde procede el valor que has asignado a hWnd en su declaración, tampoco sé mucho de programación para Windows, pero entiendo que hWnd debería haber sido declarada como tipo HWND y su valor el obtenido al crear la ventana correspondiente.

Saludos,