Systeminfo abrufen

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
mk-soft
Beiträge: 3902
Registriert: 24.11.2004 13:12
Wohnort: Germany

Systeminfo abrufen

Beitrag von mk-soft »

Ich habe ab und zu Probleme mit eine Windows 2003 Server.
Jetzt möchte ich diesen Überwachen. Dazu brauche ich aber folgende Information.

Die im Taskmanger angezeigt werden:
- Handles, Threads, Prozesse.
- Speicher, Ganz wichtig "Kernelspeicher"

Netzwerkstatus:
- Anzahl Verbindungen
- Freie Verbindungs-Resourcen

etc.

Wo liegen die Grenzen eigendlich für Handle, Threads, etc.

Vielleicht hat ja jemand ein paar codes zur Verfügung. Die Suche hat mir nicht geholfen...

Danke im vorraus

Michael
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Systeminfo abrufen

Beitrag von RSBasic »

Prozesse: http://www.rsbasic.de/aktualisierung/wi ... ssnamen.pb
Handles:

Code: Alles auswählen

EnableExplicit

Procedure ListWindows(hwnd,Param)
  
  Debug hwnd ;Du kannst dies sicherlich noch erweitern, um deren Klassennamen etc. zu ermitteln
  
  ProcedureReturn #True
EndProcedure

EnumChildWindows_(FindWindow_("ToolbarWindow32",#Null),@ListWindows(),0)
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
mk-soft
Beiträge: 3902
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: Systeminfo abrufen

Beitrag von mk-soft »

Schon mal ein Ansatz. Danke...

Suche aber noch die Möglichkeit auf die Anzahl abzufragen. der Taskmanager macht es ja auch...

Gerade der Kernelspeicher machte probleme weil irgend ein Programm mal der Meinung war den nicht frei zu geben. Oder die maximale Anzahl der Handles überschritten.
Das ergebnis war das kein neues Fenster erstellt werden konnte.

Weiteres Problem war das keine Netzwerkresourcen mehr frei waren. Das Ergebnis war das der Server nicht mehr erreichbar war. Laufende Prozesse liefen,
aber kein es konnte kein Netzwerklaufwerk geöffnet werden, Remotedesktop und VNC nicht ereichbar.

Allso kickoff Server...
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Systeminfo abrufen

Beitrag von RSBasic »

Du könntest noch außerdem, falls bei dir vorhanden ist, in der Konsole folgendes eingeben:

Code: Alles auswählen

systeminfo > C:\abc\test.txt
(Ausgabepfad musst du natürlich anpassen)
Vielleicht gibt es in dieser exportierten Datei Informationen, die du gebrauchen kannst.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Re: Systeminfo abrufen

Beitrag von Falko »

Oder vielleicht mithilfe tasklist.exe, was unter XP,Vista und 7 laufen soll?

Code: Alles auswählen

If OpenWindow(0, 0, 0, 800, 600, "EditorGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    EditorGadget(0, 8, 8, 784, 583)
    PRGN=RunProgram("C:\Windows\System32\tasklist.exe","/V /FO List","C:\Windows\System32\", #PB_Program_Open|#PB_Program_Read)
    a=0
    If IsProgram(PRGN)
      While AvailableProgramOutput(PRGN) or ProgramRunning(PRGN)
           a+1
          AddGadgetItem(0, a, ReadProgramString(PRGN))
      Wend
    EndIf
    CloseProgram(PRGN)
    Repeat
    Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Systeminfo abrufen

Beitrag von RSBasic »

@Falko
Das funktioniert aber nicht unter XP Home, weil diese Datei "tasklist.exe" bei Home nicht vorhanden ist. Das würde also nur unter XP Pro, Vista und 7 funktionieren.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Re: Systeminfo abrufen

Beitrag von Falko »

Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
mk-soft
Beiträge: 3902
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: Systeminfo abrufen

Beitrag von mk-soft »

Das sind alles Aufrufe von externe Programme. Möchte aber es über API oder Interfaces abrufen und in einer Datenbank bei Änderung speichern...
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Re: Systeminfo abrufen

Beitrag von Falko »

Vielleicht dann mit der PSAPI.DLL ?
Beispiele hierzu findest du hier:

http://www.purebasic.fr/english/viewtop ... 83#p325483

MfG Falko
Bild
Win11 Pro 64-Bit, PB_6.11b1
Antworten