/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
EnumDisplayDevices
Fra : Rasmus Christian Kaa~


Dato : 27-03-03 12:34

Hejsa,

jeg har netop hentet MS Core SDK da jeg skal til at lave et program der kan
skelne mellem forskellige skærme/skærmkort i en windows maskine. Derfor har
jeg skrevet følgende program (efter at have sat paths op for både includes
og libraries til at pege på sdk-diren):

#include "stdafx.h"

int main(int argc, char* argv[])
{
DISPLAY_DEVICE dd;

printf("Enumerating devices\n");

for (int i=0; EnumDisplayDevices(NULL, i, &dd, 0); i++)
{
printf(" DeviceName: '%s'\n", dd.DeviceName);
printf(" DeviceString: '%s'\n", dd.DeviceString);
printf(" Flags: %08X %s%s\n",
dd.StateFlags,
((dd.StateFlags & DISPLAY_DEVICE_ATTACHED_TO_DESKTOP) ?
"Desktop " : ""),
((dd.StateFlags & DISPLAY_DEVICE_PRIMARY_DEVICE) ? "Primary " : ""));
}

return 0;
}



Mit problem er så, at EnumDisplayDevices crasher i NTDLL med "First-chance
exception in enumdevies.exe: 0xC0000005: Access Violation" i
debug-out-vinduet. Ovenstående kode er mere eller mindre cutnpastet fra
noget kode jeg fandt via google. Har i nogen gode ideer? Jeg tror lidt det
har noget at gøre med at jeg har forskellige versioner af SDK og de DLL'er
der ligger i mit windows\system-dir, men jeg vil helst ikke rode for meget
med det hvis der er nogen der har en løsning


Mvh, Rasmus



 
 
Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste