problema con EnumMonitors

01/12/2003 - 12:27 por Manuel Coca | Informe spam
Tengo un problema con la función EnumMonitors, me devuelve que no tengo
instalado ningun monitor en la pc cuando yo se que si tengo monitores
instalados. En el ejemplo ejecuto la función para obtener cuantos monitores
tengo para así despues poder visualizarlos, pero la variable2 en la cual me
debería mostrar la cantidad de monitores me da = 0

#include <stdio.h>
#include <winspool.h>

void main()
{

DWORD variable1;
DWORD variable2;
int i;

EnumMonitors(NULL, 2, NULL, 0, &variable1, &variable2 );

printf("Requerido: %d", variable1);
printf("Requerido: %d", variable2);
}
 

Leer las respuestas

#1 Rodrigo Corral González
01/12/2003 - 13:17 | Informe spam
Dos cuestiones:

1) Esa funcion no enumera los monitores graficos, sino los monitores de
impresión.

2) La manera correcta de usarla es:
#include <windows.h>
#include <stdio.h>
int _tmain(int argc, _TCHAR* argv[])
{
DWORD dwNeededBytes = 0;
DWORD dwNumMonitors = 0;
EnumMonitors(NULL, 2, NULL, 0, &dwNeededBytes, &dwNumMonitors );
LPBYTE pbBuff = new BYTE[dwNeededBytes];
EnumMonitors(NULL, 2, pbBuff, dwNeededBytes, &dwNeededBytes,
&dwNumMonitors );
}

Un saludo
Rodrigo Corral González

Preguntas similares