![]() |
Power-Status des Computers ermitteln?
Hab diese Lösung zur realisierung gefunden.
Code:
Nur beim Compeilieren des codes bekomme ich immer folgende fehlermeldungen.
procedure GetStatus;
var SystemPowerStatus: TSystemPowerStatus; begin GetSystemPowerStatus(SystemPowerStatus); with SystemPowerStatus do begin // Wird das System mit Wechselstrom oder Akku betrieben ? case ACLineStatus of 0: Label1.Caption := 'System wird mit Akku betrieben'; 1: Label1.Caption := 'System wird mit Wechselstrom betrieben'; else Label1.Caption := 'Unbekannter Status'; end; // Ladezustand der Batterie case BatteryFlag of 1 : Label2.Caption := 'Hoher Ladezustand'; 2 : Label2.Caption := 'Niedriger Ladezustand'; 4 : Label2.Caption := 'Kritischer Ladezustand'; 8 : Label2.Caption := 'Die Batterie wird geladen'; 128: Label2.Caption := 'Es existiert keine System-Batterie'; 255: Label2.Caption := 'Unbekannter Status'; end; // Ladezustand in Prozent if BatteryLifePercent <> 255 then Label3.Caption := IntToStr(BatteryLifePercent) + ' %' else Label3.Caption := 'Unbekannter Status'; end; end; [Error] Unit1.pas(34): Undeclared identifier: 'Label1' [Error] Unit1.pas(35): Missing operator or semicolon [Error] Unit1.pas(36): Missing operator or semicolon [Error] Unit1.pas(41): Undeclared identifier: 'Label2' [Error] Unit1.pas(42): Missing operator or semicolon [Error] Unit1.pas(43): Missing operator or semicolon [Error] Unit1.pas(44): Missing operator or semicolon [Error] Unit1.pas(45): Missing operator or semicolon [Error] Unit1.pas(46): Missing operator or semicolon [Error] Unit1.pas(51): Undeclared identifier: 'Label3' [Error] Unit1.pas(53): Missing operator or semicolon [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas' Esetze ich die label mit showmessage dann gehts. Und hat irgend wer noch mehr infos was ich da alles auslesen kann. Mfg joe666sa |
Re: Power-Status des Computers ermitteln?
Hi!
Hast du auch 3 Labels auf deine Form gezogen? Ciao fkerber |
Re: Power-Status des Computers ermitteln?
Moin Joe,
schau Dir doch einfach im PSDK oder auf MSDN mal die Dokumentation zu ![]() |
Re: Power-Status des Computers ermitteln?
Hi!
@Christian: Die Funktion ist Ok, er muss nur 3 Labels aufs Form ziehen, dann geht es fehlerfrei. Ciao fkerber |
Re: Power-Status des Computers ermitteln?
Binde diese procedur unter private ein, oder schreibe einfach immer
Delphi-Quellcode:
Aber ich kann dir auch die komplette Unit zeigen, falls du das möchtest. ;)
Form1.Label1.Caption := ...
|
Re: Power-Status des Computers ermitteln?
Ach, hier haste es:
Delphi-Quellcode:
type
TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private-Deklarationen } procedure GetStatus; public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.GetStatus; var SystemPowerStatus: TSystemPowerStatus; begin GetSystemPowerStatus(SystemPowerStatus); with SystemPowerStatus do begin // Wird das System mit Wechselstrom oder Akku betrieben ? case ACLineStatus of 0: Label1.Caption := 'System wird mit Akku betrieben'; 1: Label1.Caption := 'System wird mit Wechselstrom betrieben'; else Label1.Caption := 'Unbekannter Status'; end; // Ladezustand der Batterie case BatteryFlag of 1 : Label2.Caption := 'Hoher Ladezustand'; 2 : Label2.Caption := 'Niedriger Ladezustand'; 4 : Label2.Caption := 'Kritischer Ladezustand'; 8 : Label2.Caption := 'Die Batterie wird geladen'; 128: Label2.Caption := 'Es existiert keine System-Batterie'; 255: Label2.Caption := 'Unbekannter Status'; end; // Ladezustand in Prozent if BatteryLifePercent <> 255 then Label3.Caption := IntToStr(BatteryLifePercent) + ' %' else Label3.Caption := 'Unbekannter Status'; end; end; procedure TForm1.Button1Click(Sender: TObject); begin GetStatus; end; |
Re: Power-Status des Computers ermitteln?
Moin fkerber,
die von der Funktion genutzte Struktur hat aber noch mehr Felder, und die eigentliche Frage lautete ja Zitat:
|
Re: Power-Status des Computers ermitteln?
Hi!
Oh, sorry, muss ich überlesen haben :oops: Hatte nur die Fehler im Auge. Ciao fkerber |
Re: Power-Status des Computers ermitteln?
Ich auch :oops: Gute Nacht! :lol:
|
Re: Power-Status des Computers ermitteln?
Zitat:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var SystemPowerStatus: TSystemPowerStatus; Text: string; begin if GetSystemPowerStatus(SystemPowerStatus) then with SystemPowerStatus do begin // Wird das System mit Wechselstrom oder Akku betrieben ? case ACLineStatus of 0: Text := 'System wird mit Akku betrieben'; 1: Text := 'System wird mit Wechselstrom betrieben'; else Text := 'Unbekannter Status'; end; Label1.Caption := Text; // Ladezustand der Batterie if (BatteryFlag = 255) then Text := 'Unbekannter Status' else if (BatteryFlag and 128 = 128) then Text := 'Es existiert keine System-Batterie' else begin case (BatteryFlag and (1 or 2 or 4)) of 1: Text := 'Hoher Ladezustand'; 2: Text := 'Niedriger Ladezustand'; 4: Text := 'Kritischer Ladezustand'; else Text := 'Unbekannter Ladezustand'; end; if (BatteryFlag and 8 = 8) then Text := Text + ' (Die Batterie wird geladen)'; end; Label2.Caption := Text; // Ladezustand in Prozent if (BatteryLifePercent <> 255) then Text := IntToStr(BatteryLifePercent) + ' %' else Text := 'Unbekannter Status'; Label3.Caption := Text; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz