AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

kann registry eintrag nicht anzeigen

Ein Thema von Gehstock · begonnen am 22. Feb 2007 · letzter Beitrag vom 26. Feb 2007
Antwort Antwort
Seite 1 von 2  1 2      
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#1

kann registry eintrag nicht anzeigen

  Alt 22. Feb 2007, 13:06
Delphi-Quellcode:
var
Upd:string;

Delphi-Quellcode:
If upd= '1then Checkbox1.Checked :=true;
Checkbox1.Caption:=upd;//nur zum test

Delphi-Quellcode:
function GetCPUUpdate;
var
  Reg: TRegistry;
  begin
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKey('\Hardware\Description\System\CentralProcessor\0',
False) then
    upd:=String(Reg.ReadString('Update Status'));
  finally
    Reg.Free;
  end;
end;
programm soll praktisch anzeigen ob die CPU upgrade fähig ist

zeigt aber nix an

sollte daran liegen das der eintrag ein Dword ist
aber wie kann ich das anzeigen
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von SnuffMaster23
SnuffMaster23

Registriert seit: 13. Feb 2006
Ort: Kempten
253 Beiträge
 
#2

Re: kann registry eintrag nicht anzeigen

  Alt 22. Feb 2007, 13:11
Wenn du ein DWORD auslesen willst, wieso benutzt du dann Reg.ReadString?
Probier mal ReadInteger
"Conspiracy is the poor man's mapping of the world" - Fredric Jameson
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#3

Re: kann registry eintrag nicht anzeigen

  Alt 22. Feb 2007, 13:14
ja klappt jetzt aber er liest den wert falsch


laut registry steht bei mit ne 1 für upgradefähig

programm liest aber 0


Upd:integer;
Delphi-Quellcode:
function GetCPUUpdate;
var
  Reg: TRegistry;
  begin
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKey('\Hardware\Description\System\CentralProcessor\0',
False) then
    upd:=(Reg.ReadInteger('Update Status'));
  finally
    Reg.Free;
  end;
end;
Delphi-Quellcode:
If upd= 1 then Checkbox1.Checked :=true;
Checkbox1.Caption:=inttostr(upd);
Marcel
  Mit Zitat antworten Zitat
22. Feb 2007, 13:35
Dieses Thema wurde von "SirThornberry" von "Programmieren allgemein" nach "VCL / WinForms / Controls" verschoben.
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#5

Re: kann registry eintrag nicht anzeigen

  Alt 25. Feb 2007, 20:16
Push

Komm da wirklich net weiter

Delphi-Quellcode:
function GetCPUUpdate:string;
var
  Reg: TRegistry;
  begin
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKey('\Hardware\Description\System\CentralProcessor\0',
False) then
    upd:=(Reg.ReadInteger('Update Status'));
  finally
    Reg.Free;
  end;
end;
upd:Integer;
Delphi-Quellcode:
If upd= 1 then Checkbox1.Checked :=true;
Checkbox1.Caption:=inttostr(upd);//zum test
hat jemand vieleicht ne idee
Marcel
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: kann registry eintrag nicht anzeigen

  Alt 25. Feb 2007, 23:09
Moin Gehstock,

mir ist nicht ganz klar, was da nicht klappt.
Wenn ich Deinen Code per Copy&Paste übernehme, erhalte ich den korrekten Wert.
Es könnte eigentlich nur noch sein, dass Dein globale Variable upd irgendwo überschrieben wird.

BTW:
Warum schreibst Du eigentlich eine Funktion mit String als Rückgabewert, wenn Du dann einen Integer brauchst?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: kann registry eintrag nicht anzeigen

  Alt 25. Feb 2007, 23:21
Moin,

wozu schreibst du eine Funktion, wenn du Result gar keinen Wert zuweisen tust?
Versuche mal folgenden Code:
Delphi-Quellcode:
function GetCPUUpdate: integer;
var
  Reg: TRegistry;
begin
  Result:= 0;
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKey('\Hardware\Description\System\CentralProcessor\0',
False) then
    result:= Reg.ReadInteger('Update Status');
  finally
    Reg.Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  If GetCPUUpdate= 1 then
    Checkbox1.Checked :=true
  else
  Checkbox1.Checked :=false
end;
Bei mir ist Result übrigens gleich 2.
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#8

Re: kann registry eintrag nicht anzeigen

  Alt 25. Feb 2007, 23:23
Hallo,

arbeitest du an deinem Rechner mit eingeschränkten Rechten? In diesem Fall solltest du es einmal mit

Reg.OpenKeyReadOnly() versuchen.

Gruß Hawkeye
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#9

Re: kann registry eintrag nicht anzeigen

  Alt 26. Feb 2007, 21:42
Laut Registry 00000001 also 1
Ausgabe und Source siehe Bild

bleibt alles beim alten

Edit: also richtig checken tut er jetzt bei mir aber die Caption (o statt 1 ) klappt net
Miniaturansicht angehängter Grafiken
unbenannt_199.jpg  
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: kann registry eintrag nicht anzeigen

  Alt 26. Feb 2007, 21:51
CheckBox1.Caption:= inttostr(GetCPUUpdate); EDIT: oder so:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  upd:= GetCPUUpdate;
  If upd= 1 then
    Checkbox1.Checked :=true
  else
  Checkbox1.Checked :=false

  CheckBox1.Caption:= inttostr(upd);
end;
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz