Wie Grafikkarten Speicher ermitteln ?
Wie Grafikkarten Speicher ermitteln ?
Hi,
Wie der Titel schon sagt suche ich nach einer lösung die Größe des Arbeitsspeichers zu ermitteln.
In der Registry bin ich leider nicht fündig geworden. Bin für jeden Tipp Dankbar
Ciao
AL90
Wie der Titel schon sagt suche ich nach einer lösung die Größe des Arbeitsspeichers zu ermitteln.
In der Registry bin ich leider nicht fündig geworden. Bin für jeden Tipp Dankbar
Ciao
AL90
Re: Wie Grafikkarten Speicher ermitteln ?
Hallo!
Versuche das hier mal:
Windows-Version:
Anbei:
Unter MacOs könnte man das hier probieren:
RunProgram("system_profiler", "SPDisplaysDataType", "", #PB_Program_Open | #PB_Program_Read)
Versuche das hier mal:
Windows-Version:
Code: Alles auswählen
; wmic PATH win32_videocontroller GET description
; wmic PATH win32_videocontroller GET adapterram
; wmic PATH win32_videocontroller GET driverversion
; wmic PATH win32_videocontroller GET pnpdeviceid
Define.i GPUInfo
GPUInfo = RunProgram("wmic", "PATH win32_VideoController GET adapterram", "", #PB_Program_Open | #PB_Program_Read)
Output$ = ""
If GPUInfo
While ProgramRunning(GPUInfo)
If AvailableProgramOutput(GPUInfo)
Output$ + ReadProgramString(GPUInfo, #PB_Unicode) + Chr(13)
EndIf
Wend
Output$ + Chr(13) + Chr(13)
Output$ + "Exitcode: " + Str(ProgramExitCode(GPUInfo))
CloseProgram(GPUInfo)
EndIf
;VRAM in Mb
Debug StringField(Output$, 1, Chr(13))
Debug (Val(StringField(Output$, 2, Chr(13))) / 1024)/1024
Unter MacOs könnte man das hier probieren:
RunProgram("system_profiler", "SPDisplaysDataType", "", #PB_Program_Open | #PB_Program_Read)
Betriebssysteme: div. Windows, Linux, Unix - Systeme
no Keyboard, press any key
no mouse, you need a cat
no Keyboard, press any key
no mouse, you need a cat
Re: Wie Grafikkarten Speicher ermitteln ?
Hm, zunächst erhalte ich nur Müll. Mit ReadProgramString(GPUInfo, #PB_Ascii) statt #PB_Unicode erhalte ich zumindest eine Ausgabe, diese ist jedoch nicht richtig:
Meine Grafikkarte hat 6 GB.AdapterRAM
4095
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Re: Wie Grafikkarten Speicher ermitteln ?
Hallo STARGÅTE,
die Ausgabe von "wmic" scheint nicht zuverlässig genug zu sein.
Ich erhalte mit #PB_Ascii und #PB_UTF8 nur Müll, mit #PB_Unicode bekomme ich die korrekte Ausgabe.
Bei einer internen Intel-Chip - Grafikkarte stimmt die VRAM Angabe absolut genau.
Für Nvidia oder ATI werden glaube ich weite Plugins benötigt, oder es geht nur über spezielle Treiber.
die Ausgabe von "wmic" scheint nicht zuverlässig genug zu sein.
Ich erhalte mit #PB_Ascii und #PB_UTF8 nur Müll, mit #PB_Unicode bekomme ich die korrekte Ausgabe.
Bei einer internen Intel-Chip - Grafikkarte stimmt die VRAM Angabe absolut genau.
Für Nvidia oder ATI werden glaube ich weite Plugins benötigt, oder es geht nur über spezielle Treiber.
Betriebssysteme: div. Windows, Linux, Unix - Systeme
no Keyboard, press any key
no mouse, you need a cat
no Keyboard, press any key
no mouse, you need a cat
Re: Wie Grafikkarten Speicher ermitteln ?
Hier gibt's Code zum Ausprobieren: WMI Queries for Hardware
Note: Win32_VideoController's UInt32 property AdapterRAM cannot return values exceeding 4GB.
Hygge
Re: Wie Grafikkarten Speicher ermitteln ?
@Kiffi
Jauw, Super das funktioniert. Danke Dir
Ich musste aber auch die Konstante auf #pb_AscII setzen, ansonsten wurden nur Hieroglyphen angezeigt.
Aber ansonsten klappt es sehr gut auf meinen MiniPC. CPU+GPU in einem. Zeigt mir 512 MB an. Also genu so
wie ich es auch erwartet habe.
Jauw, Super das funktioniert. Danke Dir
Ich musste aber auch die Konstante auf #pb_AscII setzen, ansonsten wurden nur Hieroglyphen angezeigt.
Aber ansonsten klappt es sehr gut auf meinen MiniPC. CPU+GPU in einem. Zeigt mir 512 MB an. Also genu so
wie ich es auch erwartet habe.
Re: Wie Grafikkarten Speicher ermitteln ?
Ich bin gerade dabei ein SysInfoPanel mit einer übersicht für mein aktuelles Project zusammenzustellen.
Für das meiste wurde ich im Inet auch fündig. Nur für den GraKa RAM konnte ich da nichts finden.
Ich poste mal hier den Code. Sicherlich können andere das evtl. auch gebrauchen. Der Kerncode ist
natürlich noch nicht fertig. Kann bestimmt noch einiges verbessert/geändert werden. Aber insoweit
Funktioniert es schonmal soweit.
Für das meiste wurde ich im Inet auch fündig. Nur für den GraKa RAM konnte ich da nichts finden.
Ich poste mal hier den Code. Sicherlich können andere das evtl. auch gebrauchen. Der Kerncode ist
natürlich noch nicht fertig. Kann bestimmt noch einiges verbessert/geändert werden. Aber insoweit
Funktioniert es schonmal soweit.
Code: Alles auswählen
Procedure.s ReadRegKey(OpenKey.i,SubKey.s,ValueName.s,Type.i=1)
hKey.i=0
DataSize.i=255
keyvalue$=""
mem=AllocateMemory(1024)
If mem
If RegOpenKeyEx_(OpenKey,SubKey,0,#KEY_READ,@hKey)
keyvalue$="Error"
Else
If RegQueryValueEx_(hKey,ValueName,0,0,mem,@DataSize)
keyvalue$="Error"
Else
If Type=0
keyvalue$=Str(PeekI(mem))
ElseIf Type=1
keyvalue$=PeekS(mem)
EndIf
EndIf
RegCloseKey_(hKey)
EndIf
FreeMemory(mem)
EndIf
ProcedureReturn keyvalue$
EndProcedure
Procedure.s GetComputerName()
a$=ComputerName()
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorName()
a$=CPUName()
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorSpeed()
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"HARDWARE\DESCRIPTION\System\CentralProcessor\0","~MHz",0)
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s CountProcessorCores()
x=CountCPUs()
ProcedureReturn Str(x)
EndProcedure
Procedure.s GetProcessorArchitecture()
a$=GetEnvironmentVariable("PROCESSOR_ARCHITECTURE")
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Session Manager\Environment","PROCESSOR_ARCHITECTURE")
EndIf
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorIdentifier()
a$=GetEnvironmentVariable("PROCESSOR_IDENTIFIER")
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Session Manager\Environment","PROCESSOR_IDENTIFIER")
EndIf
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorLevel()
a$=GetEnvironmentVariable("PROCESSOR_LEVEL")
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Session Manager\Environment","PROCESSOR_LEVEL")
EndIf
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorRevision()
a$=GetEnvironmentVariable("PROCESSOR_REVISION")
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Session Manager\Environment","PROCESSOR_REVISION")
EndIf
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s GetGraphicCardName()
Protected device.DISPLAY_DEVICE
Protected settings.DEVMODE
device\cb = SizeOf(DISPLAY_DEVICE)
settings\dmSize = SizeOf(DEVMODE)
EnumDisplayDevices_(#Null,#Null,device,#Null)
a$=PeekS(@device\DeviceString)
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000","DriverDesc")
If a$=""
a$="<Unbekannt>"
EndIf
EndIf
ProcedureReturn a$
EndProcedure
Procedure.i GetTotalInstalledMemory()
Protected Info.MEMORYSTATUS
Info\dwLength = SizeOf(MEMORYSTATUS)
GlobalMemoryStatus_(@Info)
ProcedureReturn Info\dwTotalPhys
EndProcedure
Procedure.i GetTotalFreeMemory()
Protected Info.MEMORYSTATUS
Info\dwLength = SizeOf(MEMORYSTATUS)
GlobalMemoryStatus_(@Info)
ProcedureReturn Info\dwAvailPhys
EndProcedure
Procedure.i GetTotalUsedMemory()
Protected Info.MEMORYSTATUS
Info\dwLength = SizeOf(MEMORYSTATUS)
GlobalMemoryStatus_(@Info)
ProcedureReturn Info\dwTotalPhys-Info\dwAvailPhys
EndProcedure
Procedure Show_SystemInformations()
a$=GetComputerName()
Window_0 = OpenWindow(#PB_Any, 420, 134, 640, 551, "Syseminformationen für "+a$, #PB_Window_SystemMenu|#PB_Window_TitleBar|#PB_Window_ScreenCentered)
If Window_0
fnt=LoadFont(#PB_Any,"verdana",10,#PB_Font_HighQuality)
SetGadgetFont(#PB_Default,FontID(fnt))
Button_1 = ButtonGadget(#PB_Any, 503, 508, 116, 30, "Schließen")
Container_0 = ContainerGadget(#PB_Any, 21, 19, 598, 477, #PB_Container_Raised)
Frame_1 = FrameGadget(#PB_Any, 21, 23, 551, 216, "CPU")
Text_1 = TextGadget(#PB_Any, 36, 41, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_2 = TextGadget(#PB_Any, 36, 68, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_3 = TextGadget(#PB_Any, 36, 95, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_4 = TextGadget(#PB_Any, 36, 122, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_5 = TextGadget(#PB_Any, 36, 149, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_6 = TextGadget(#PB_Any, 36, 176, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_7 = TextGadget(#PB_Any, 36, 203, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Frame_2 = FrameGadget(#PB_Any, 21, 250, 551, 56, "GPU")
Text_8 = TextGadget(#PB_Any, 36, 268, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Frame_3 = FrameGadget(#PB_Any, 21, 317, 551, 124, "Arbeitsspeicher (Physikalisch)")
Text_9 = TextGadget(#PB_Any, 36, 335, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_10 = TextGadget(#PB_Any, 36, 362, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_11 = TextGadget(#PB_Any, 36, 389, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
SetGadgetColor(Text_1, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_2, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_3, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_4, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_5, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_6, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_7, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_8, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_9, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_10, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_11, #PB_Gadget_BackColor, $cccccc)
SetGadgetText(Text_1, GetProcessorName())
SetGadgetText(Text_2, GetProcessorSpeed()+" Mhz")
SetGadgetText(Text_3, CountProcessorCores()+" Cores")
SetGadgetText(Text_4, "Architecture: "+GetProcessorArchitecture())
SetGadgetText(Text_5, "Revision: "+GetProcessorRevision())
SetGadgetText(Text_6, "Identifier: "+GetProcessorIdentifier())
SetGadgetText(Text_7, "Level: "+GetProcessorLevel())
SetGadgetText(Text_8, GetGraphicCardName())
x=GetTotalInstalledMemory()/1024/1024/1024
If (x/2)*2<>x : x+1 : EndIf
SetGadgetText(Text_9, "Gesamtspeicher: "+Str(x)+" GB")
x=GetTotalFreeMemory()/1024/1024/1024
SetGadgetText(Text_10, "Freier Speicher: "+Str(x)+" GB")
x=GetTotalUsedMemory()/1024/1024/1024
SetGadgetText(Text_11, "Belegter Speicher: "+Str(x)+" GB")
CloseGadgetList()
EndIf
Repeat
Event=WaitWindowEvent()
If Event=#PB_Event_Gadget
gad=EventGadget()
Else
gad=0
EndIf
If gad=Button_1
Break
EndIf
Until Event=#PB_Event_CloseWindow
EndProcedure
Show_SystemInformations()
Re: Wie Grafikkarten Speicher ermitteln ?
Könnt ihr das hier:
mal testen?
Code: Alles auswählen
;Tested under Windows 11 -Version 21H2 (Build 22000.675)
Define.i GPUInfo
GPUInfo = RunProgram("reg", "query HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0001 /v HardwareInformation.qwMemorySize", "", #PB_Program_Open | #PB_Program_Read)
Output$ = ""
If GPUInfo
While ProgramRunning(GPUInfo)
If AvailableProgramOutput(GPUInfo)
Output$ + ReadProgramString(GPUInfo, #PB_Ascii) + Chr(13)
EndIf
Wend
Output$ + Chr(13) + Chr(13)
Output$ + "Exitcode: " + Str(ProgramExitCode(GPUInfo))
CloseProgram(GPUInfo)
EndIf
;Debug Output$
field$ = StringField(Output$, 3, Chr(13))
field2$ = StringField(field$, 13, Chr(32))
VMem.q = Val("$"+RemoveString(field2$, "0x"))
;VRam in Mb
Debug ((VMem / 1024) / 1024)
Betriebssysteme: div. Windows, Linux, Unix - Systeme
no Keyboard, press any key
no mouse, you need a cat
no Keyboard, press any key
no mouse, you need a cat
Re: Wie Grafikkarten Speicher ermitteln ?
Ergibt bei mir 0 mit dem Exitcode 1
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
- TroaX
- Beiträge: 660
- Registriert: 08.03.2013 14:27
- Computerausstattung: PC: Ryzen 9 3950X, 96 GB RAM, RX6800XT, 2.5 TB SSD, 21:9 Display, Pop_OS! | Lappi: Ryzen 7 5800H, 16 GB RAM, 1 TB SSD, Pop_OS!
- Wohnort: NRW
- Kontaktdaten:
Re: Wie Grafikkarten Speicher ermitteln ?
Versuch es mal so (etwas lang, weil ich jetzt keine Zeit hatte, eine ReadRegKeyInt) zu bauen. Da kommen bei mir 8 GB raus (3060 TI mit 8 GB):
Hier dein Sysinfo:
Viel Spaß damit
Code: Alles auswählen
Str(Val(ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000","HardwareInformation.qwMemorySize",0))/1024/1024/1024)
Code: Alles auswählen
Procedure.s ReadRegKey(OpenKey.i,SubKey.s,ValueName.s,Type.i=1)
hKey.i=0
DataSize.i=255
keyvalue$=""
mem=AllocateMemory(1024)
If mem
If RegOpenKeyEx_(OpenKey,SubKey,0,#KEY_READ,@hKey)
keyvalue$="Error"
Else
If RegQueryValueEx_(hKey,ValueName,0,0,mem,@DataSize)
keyvalue$="Error"
Else
If Type=0
keyvalue$=Str(PeekI(mem))
ElseIf Type=1
keyvalue$=PeekS(mem)
EndIf
EndIf
RegCloseKey_(hKey)
EndIf
FreeMemory(mem)
EndIf
ProcedureReturn keyvalue$
EndProcedure
Procedure.s GetComputerName()
a$=ComputerName()
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorName()
a$=CPUName()
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorSpeed()
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"HARDWARE\DESCRIPTION\System\CentralProcessor\0","~MHz",0)
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s CountProcessorCores()
x=CountCPUs()
ProcedureReturn Str(x)
EndProcedure
Procedure.s GetProcessorArchitecture()
a$=GetEnvironmentVariable("PROCESSOR_ARCHITECTURE")
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Session Manager\Environment","PROCESSOR_ARCHITECTURE")
EndIf
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorIdentifier()
a$=GetEnvironmentVariable("PROCESSOR_IDENTIFIER")
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Session Manager\Environment","PROCESSOR_IDENTIFIER")
EndIf
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorLevel()
a$=GetEnvironmentVariable("PROCESSOR_LEVEL")
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Session Manager\Environment","PROCESSOR_LEVEL")
EndIf
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s GetProcessorRevision()
a$=GetEnvironmentVariable("PROCESSOR_REVISION")
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Session Manager\Environment","PROCESSOR_REVISION")
EndIf
If a$=""
a$="<Unbekannt>"
EndIf
ProcedureReturn a$
EndProcedure
Procedure.s GetGraphicCardName()
Protected device.DISPLAY_DEVICE
Protected settings.DEVMODE
device\cb = SizeOf(DISPLAY_DEVICE)
settings\dmSize = SizeOf(DEVMODE)
EnumDisplayDevices_(#Null,#Null,device,#Null)
a$=PeekS(@device\DeviceString)
If a$=""
a$=ReadRegKey(#HKEY_LOCAL_MACHINE,"HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0001","DriverDesc")
If a$=""
a$="<Unbekannt>"
EndIf
EndIf
ProcedureReturn a$
EndProcedure
Procedure.i GetTotalInstalledMemory()
Protected Info.MEMORYSTATUS
Info\dwLength = SizeOf(MEMORYSTATUS)
GlobalMemoryStatus_(@Info)
ProcedureReturn Info\dwTotalPhys
EndProcedure
Procedure.i GetTotalFreeMemory()
Protected Info.MEMORYSTATUS
Info\dwLength = SizeOf(MEMORYSTATUS)
GlobalMemoryStatus_(@Info)
ProcedureReturn Info\dwAvailPhys
EndProcedure
Procedure.i GetTotalUsedMemory()
Protected Info.MEMORYSTATUS
Info\dwLength = SizeOf(MEMORYSTATUS)
GlobalMemoryStatus_(@Info)
ProcedureReturn Info\dwTotalPhys-Info\dwAvailPhys
EndProcedure
Procedure Show_SystemInformations()
a$=GetComputerName()
Window_0 = OpenWindow(#PB_Any, 420, 134, 640, 551, "Syseminformationen für "+a$, #PB_Window_SystemMenu|#PB_Window_TitleBar|#PB_Window_ScreenCentered)
If Window_0
fnt=LoadFont(#PB_Any,"verdana",10,#PB_Font_HighQuality)
SetGadgetFont(#PB_Default,FontID(fnt))
Button_1 = ButtonGadget(#PB_Any, 503, 508, 116, 30, "Schließen")
Container_0 = ContainerGadget(#PB_Any, 21, 19, 598, 477, #PB_Container_Raised)
Frame_1 = FrameGadget(#PB_Any, 21, 23, 551, 216, "CPU")
Text_1 = TextGadget(#PB_Any, 36, 41, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_2 = TextGadget(#PB_Any, 36, 68, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_3 = TextGadget(#PB_Any, 36, 95, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_4 = TextGadget(#PB_Any, 36, 122, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_5 = TextGadget(#PB_Any, 36, 149, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_6 = TextGadget(#PB_Any, 36, 176, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_7 = TextGadget(#PB_Any, 36, 203, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Frame_2 = FrameGadget(#PB_Any, 21, 250, 551, 78, "GPU")
Text_8 = TextGadget(#PB_Any, 36, 268, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_12 = TextGadget(#PB_Any, 36, 295, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Frame_3 = FrameGadget(#PB_Any, 21, 344, 551, 108, "Arbeitsspeicher (Physikalisch)")
Text_9 = TextGadget(#PB_Any, 36, 362, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_10 = TextGadget(#PB_Any, 36, 389, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
Text_11 = TextGadget(#PB_Any, 36, 416, 522, 25, "", #PB_Text_Border|#PB_Text_Center)
SetGadgetColor(Text_1, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_2, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_3, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_4, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_5, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_6, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_7, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_8, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_9, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_10, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_11, #PB_Gadget_BackColor, $cccccc)
SetGadgetColor(Text_12, #PB_Gadget_BackColor, $cccccc)
SetGadgetText(Text_1, GetProcessorName())
SetGadgetText(Text_2, GetProcessorSpeed()+" Mhz")
SetGadgetText(Text_3, CountProcessorCores()+" Cores")
SetGadgetText(Text_4, "Architecture: "+GetProcessorArchitecture())
SetGadgetText(Text_5, "Revision: "+GetProcessorRevision())
SetGadgetText(Text_6, "Identifier: "+GetProcessorIdentifier())
SetGadgetText(Text_7, "Level: "+GetProcessorLevel())
SetGadgetText(Text_8, GetGraphicCardName())
x=GetTotalInstalledMemory()/1024/1024/1024
If (x/2)*2<>x : x+1 : EndIf
SetGadgetText(Text_9, "Gesamtspeicher: "+Str(x)+" GB")
x=GetTotalFreeMemory()/1024/1024/1024
SetGadgetText(Text_10, "Freier Speicher: "+Str(x)+" GB")
x=GetTotalUsedMemory()/1024/1024/1024
SetGadgetText(Text_11, "Belegter Speicher: "+Str(x)+" GB")
SetGadgetText(Text_12, Str(Val(ReadRegKey(#HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000","HardwareInformation.qwMemorySize",0))/1024/1024/1024) +" GB Video-Memory")
CloseGadgetList()
EndIf
Repeat
Event=WaitWindowEvent()
If Event=#PB_Event_Gadget
gad=EventGadget()
Else
gad=0
EndIf
If gad=Button_1
Break
EndIf
Until Event=#PB_Event_CloseWindow
EndProcedure
Show_SystemInformations()
PC: Ryzen 9 3950X | 96 GB RAM | RX6800XT | 2,5 TB NVMe | Pop_OS!
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript
Notebook: 16" 3:2 | Ryzen 7 5800H | 16 GB RAM | Radeon Vega | 1TB NVMe | Pop_OS!
NAS: Fritz.Box
Coding: Purebasic 6.04 | PHP | HTML | CSS | Javascript