![]() |
Registry: String auslesen?
hallo,
hat jemand nen code, wie ich einen string aus der registry bekomme oder den funktionsnamen? mfg |
Re: Registry: String auslesen?
Hai,
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var reg : TRegistry; anmeldung : string; begin reg := TRegistry.Create; try reg.RootKey := HKEY_CURRENT_USER; anmeldung := ''; if reg.OpenKey('Software\Euro_Auftrag', True) then begin anmeldung := reg.ReadString('Benutzer'); end; finally reg.free; end; end; |
Re: Registry: String auslesen?
hi
ich verweise mal auf das (sehr gute) tutorial von ![]() dort steht u.a:
Delphi-Quellcode:
anstelle von ReadInteger gibts natürlich auch noch andere, z.B. ReadString.
uses Registry;
procedure TForm1.FormCreate(Sender: TObject); var regist: TRegistry; begin regist:=TRegistry.Create; regist.RootKey:=HKEY_CURRENT_USER; regist.OpenKey('Software\MeineFirma\MeinProgramm\1.0', true); Form1.Left:=regist.ReadInteger('Left'); Form1.Top:=regist.ReadInteger('Top'); regist.free; end; gruss, dave //war wohl wieder einer schneller :) |
Re: Registry: String auslesen?
oops sorry, dachte wenn ich es in "Windows API" poste, wissen es die leute was ich meine *gg*
also es geht darum die api funktionen zu benutzen, wie z.b RegCreateKey usw, hat da jemand nen code? |
Re: Registry: String auslesen?
Ja, wirf mal einen Blick in Luckies Win32-API-Tutorials. Da gibt´s ein ganzes Kapitel zum Thema.
|
Re: Registry: String auslesen?
Zitat:
Ich bin über die Portalseite in dein Posting und habe überhaupt nicht auf die Sparte geachtet. Sorry :oops: |
Re: Registry: String auslesen?
Trotzdem danke für die Mühe :)
@Mathias, gucke ich mal rein, danke^^ EDIT: ziemlich kompliziert O_o, hat jemand den genauern teil daraus? ich weiss nicht was "pBuf" tut |
Re: Registry: String auslesen?
Es gibt auch noch die Demos dazu. Hast du da schon mal gekuckt?
|
Re: Registry: String auslesen?
ne, habe ich noch nicht, wo finde ich die? bei de downloads habe ich nichts gefunden
|
Re: Registry: String auslesen?
Da wo du auch die Tutorials her hast.
![]() |
Re: Registry: String auslesen?
hoi luckie.
ist dies der richtige part?:
Delphi-Quellcode:
wenn ja...
function Reg_ReadString(const RootKey: HKEY; const RegVal: string): string;
var lpType, cbData : DWORD; begin Result := ''; // no assigned key if(RootKey = 0) then exit; // "ValueExists"? lpType := REG_NONE; cbData := 0; if(RegQueryValueEx(RootKey,@RegVal[1],nil,@lpType,nil,@cbData) = ERROR_SUCCESS) and (lpType in[REG_SZ,REG_EXPAND_SZ]) and (cbData > 0) then begin SetLength(Result,cbData); if(RegQueryValueEx(RootKey,@RegVal[1],nil,nil, @Result[1],@cbData) = ERROR_SUCCESS) then SetLength(Result,cbData-1) else Result := ''; end; end; kann ich statt @lpType nicht direkt "REG_NONE" eingeben? und ich weiss auch nicht welcher der variablen dort den zu suchenden key enthält, bzw den zulesenden. Ich sehe nur Rootkey und den pfad. |
Re: Registry: String auslesen?
Du siehst das Prinzip etwas falsch. Es ist nicht wie bei TRegistry, wo du in "OpenKey" den kompletten Pfad angibst, usw. Hier öffnest du den Schlüssel zunächst mit "RegOpenKeyEx"
Delphi-Quellcode:
und erhältst dann im letzten Parameter dieser Funktionen eine HKEY-Variable, die quasi den offenen Schlüssel identifiziert. Damit kannst du dann einen String auslesen, bspw. mit der von dir zitierten Funktion:
if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,'Software\Microsoft\...usw.',0,
KEY_READ,rgHandle) = ERROR_SUCCESS) then try
Delphi-Quellcode:
und dann machst du die Sache wieder zu.
s := Reg_ReadString(rgHandle, // <-- der offene Schlüssel
'DeinWert'); MessageBox(0,pchar(s),nil,0);
Delphi-Quellcode:
finally
RegCloseKey(rgHandle); end; Zitat:
Zitat:
|
Re: Registry: String auslesen?
ok, danke für die erkärung
btw: glückwunsch zum 1234 beitrag ^^ |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:04 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