Avatar billede hmm_t Nybegynder
18. maj 2002 - 23:35 Der er 16 kommentarer

Skærmkort

Kan nogen fortælle mig hvordan jeg laver et program der fortæller mig hvilket grafikkort der sidder i min puter?
Avatar billede psitron Nybegynder
18. maj 2002 - 23:48 #1
Øhh, du kan se det i Windows (hvis du kører det)

Start -> Indstillinger -> Kontrolpanel -> System -> Enhedshåndtering -> Skærmkort.
(win98, mindre variationer i andre versioner)

regards
chris
Avatar billede zerohero Nybegynder
19. maj 2002 - 00:42 #2
Du kan gøre det via OpenGL eller Directx... da jeg formoder at det er med Delphi du gerne vil gøre det!!!
Avatar billede psitron Nybegynder
19. maj 2002 - 09:53 #3
Ja, man kan også gøre det med DXdiag. Et godt diaognosticerings og test værktøj indbygget i Windåse. Kan altid bruges til at se om drivere fungerer ordentligt.

Start -> Kør -> "dxdiag" -> Skærm.

regards
chris
Avatar billede darkside Nybegynder
19. maj 2002 - 09:54 #4
psitron, det her er Delphi Kategori'en, det du siger har jo ikke en pind med Delphi at gøre.
Avatar billede psitron Nybegynder
19. maj 2002 - 23:29 #5
my bad
Avatar billede tormork Nybegynder
20. maj 2002 - 20:06 #6
Hvis computeren selv ved det skulle dette kunne gøre det:

var y: _DISPLAY_DEVICEA; MonNum: Cardinal;
begin
  y.cb := SizeOf(_DISPLAY_DEVICEA);
  MonNum:=0;
  while boolean(EnumDisplayDevices(nil, MonNum, y, 0)) do
  begin
    Memo1.Lines.Add('Device nr. '+ inttostr(MonNum));
    Memo1.Lines.Add(y.DeviceName);
    Memo1.Lines.Add(y.DeviceString);
    inc(MonNum);
  end;
end;

Skermkortet skulle vistnok vere device nr. 0, men jeg er ikke sikker. Det er det hos mig. Jeg får en "NetMeeting driver" som device nr. 1.
Avatar billede zerohero Nybegynder
21. maj 2002 - 00:39 #7
tormork>> hvor har det kode fra? fra en bog eller en site?
Avatar billede tormork Nybegynder
21. maj 2002 - 00:48 #8
Jeg har lige lavet den. Hvorfor?
Avatar billede zerohero Nybegynder
21. maj 2002 - 00:53 #9
Bare nysgerrighed :-)) Jeg har nemlig kigget efter lign. kode men fandt kun noget der virkede gennem OpenGL og DirectX...

Men jeg har lige fundet dette. Det er vist det samme som dit bare skrevet på en lidt anden måde. Forresten når jeg afprøver din kode og mit kode får jeg af vide at jeg har en "NVida Riva TNT2/TNT2 Pro" - så bare lige for at være vanskelig så skulle du vel ikke kende en måde så den kun skriver "NVida Riva TNT2" da det dette kort jeg har?

var
  D : TDisplayDevice;
begin
  D.cb := sizeof(D);
  if bool(enumdisplaydevices(nil, 0, D, 0)) then
  caption := D.devicestring;
end;
Avatar billede tormork Nybegynder
21. maj 2002 - 01:11 #10
Ne du kan prøve EnumDisplaySettings eller EnumDisplaySettingsEx. Jeg tror at det er fordi at de bruger samme driver og windows ikke ved hvilket kort det er. Jeg får også at vide at mit er: 3D Blaster GeForce2 MX200/MX400 og jeg har kun 400 versionen.
Det er det samme som jeg får i DxDiag, Enhedshåndtering og Skærm Egenskaber->Advanceret. Jeg vil gætte på at det ikke er muligt.
Avatar billede zerohero Nybegynder
21. maj 2002 - 01:25 #11
Hmmm... Ok! Du kender vel ikke noget kode der kan fortælle alle skærm-opløsninger der er tilgængelige med det skærm-kort man nu har installeret?
Avatar billede zerohero Nybegynder
21. maj 2002 - 01:34 #12
Jooo det burde være muligt, for i min Egenskaber->Avanceret->Kort står der

Oplysninger om kort...

Chip-type: Riva TNT2
Dac-type: Integrated RAMDAC
Hukommelse: 32 MB
Kortstreng: Riva TNT2
Bios-oplysninger: Version 2.05.1300

Spørsmålet er så bare om den går ind og læser i Rivas dll for at få de informationer?
Avatar billede tormork Nybegynder
21. maj 2002 - 01:35 #13
Nej desverre
Avatar billede zerohero Nybegynder
21. maj 2002 - 01:36 #14
Eller det kan være man skal bruge noget assembler (ligesom hvis man vil have information omkring sin processor-chip på ens bundkort)!!!
Avatar billede tormork Nybegynder
21. maj 2002 - 01:47 #15
I regedit kan man finde nogle oplysninger under HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318} bla. nogle skærm-opløsninger. Der er flere nøgler der hedder det samme du skal have fat i den der har default=Display Adapters. Jeg har win2000, ved ikke om det kan bruges på andre systemer.
Avatar billede zerohero Nybegynder
21. maj 2002 - 10:46 #16
Jeg har fundet noget kode der muligvis kan løse problemet - men mange tak :-))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester