Seite 1 von 1

Grafikkarte - GDDR ermitteln

Verfasst: 18.06.2010 22:00
von netzcoder
Hallo,

ich bin immer wieder von der API Library von RS-Basic begeistert und habe dort folgenden Code gefunden:

Code: Alles auswählen

EnableExplicit

Procedure.i GetDisplay()
  Protected device.DISPLAY_DEVICE
  Protected settings.DEVMODE
  device\cb = SizeOf(DISPLAY_DEVICE)
  settings\dmSize = SizeOf(DEVMODE)
  EnumDisplayDevices_(#Null,#Null,device,#Null)
  MessageRequester("","Grafikkarte: "+PeekS(@device\DeviceString,128),0)
EndProcedure

GetDisplay()
Das Hilft mir bei meinem Projekt schon mal weiter aber kann man auch den GDDR rausfinden?

Danke schon mal
netzcoder

Re: Grafikkarte - GDDR ermitteln

Verfasst: 18.06.2010 22:47
von Mok
Ohne mich weiter mit dem Thema auseinandergesetzt zu haben, schätze ich, dass da jeder Hersteller ein eigenes Süppchen für eine API kocht, eine Allzweckmethode wird es dafür nicht geben.

Re: Grafikkarte - GDDR ermitteln

Verfasst: 18.06.2010 23:08
von netzcoder
Okay das ist zwar schade aber nicht zu ändern. Danke für die schnelle Antwort.

Re: Grafikkarte - GDDR ermitteln

Verfasst: 19.06.2010 00:30
von Thorium
Was genau meinst du mit GDDR? Meinst du welche Version oder wieviel Video-RAM?
GDDR ansich ist garkein Standart, das ist einfach nur höher getackteter DDR. GDDR2 = höher getackteter DDR, GDDR3 = höher getackteter DDR2, usw.

Re: Grafikkarte - GDDR ermitteln

Verfasst: 19.06.2010 00:57
von netzcoder
Ja genau wieviel Speicher meinte ich. Jo sry dacte irgendwie das wäre Standard.

Re: Grafikkarte - GDDR ermitteln

Verfasst: 19.06.2010 11:37
von RSBasic
Hallo netzcoder,


ja, dieses Problem hatte ich auch.
Ich wollt auch mal wissen, wie man ermitteln kann, wieviel Speicher die Graka hat.
Ob es eine direkte WinAPI-Schnittstelle gibt, weiß ich zwar immernoch nicht, aber du hast zwei Möglichkeiten.
1. Entweder DirectX initialisieren, afaik mit diesem Code: http://www.purearea.net/pb/CodeArchiv/G ... &Window.pb
Im Internet findest du auch Informationen, wie du in DirectX den Speicher ermitteln kannst.
Als ich das ausprobiert habe, hat es bei mir zwar einwandfrei funktioniert, aber ein Nachteil hat es afaik: Es muss ein Screen erstellt/geöffnet sein, um diese Informationen ermitteln zu können.
Vielleicht kann man die Screen-Anwendung versteckt starten o.ä.

2. Oder du könntest dxdiag dafür benutzen und mit einem Parameter ausführen.
DirectX-Diagnoseprogramm hat geschrieben:Syntax: dxdiag [/dontskip] [/whql:on | /whql:off] [/x Ausgabedatei]
[/t Ausgabedatei]
/x Ausgabedatei - Speichert die XML-Informationen ohne Nachfrage in der
<Ausgabedatei> und beendet das Programm.
/t Ausgabedatei - Speichert die TXT-Informationen ohne Nachfrage in der
<Ausgabedatei> und beendet das Programm.
/dontskip - Diagnosen aufgrund vorheriger Abstürze in DxDiag werden
nicht umgangen.
/whql:on - Lässt die Überprüfung auf digitale WHQL-Signaturen durch
dxdiag zu.
/whql:off - Lässt die Überprüfung auf digitale WHQL-Signaturen durch
dxdiag nicht zu.
Hinweis: Beim Überprüfen auf digitale WHQL-Signaturen wird ggf. eine
Verbindung zum Internet hergestellt, um WHQL-Zertifikate zu aktualisieren.
D.h., dass du die Informationen in einer TXT- oder XML-Datei abspeicherst und dein Programm muss die Daten nur noch filtern.

Re: Grafikkarte - GDDR ermitteln

Verfasst: 19.06.2010 12:26
von netzcoder
Danke RSBasic das werde ich mir mal genauer anschauen.