![]() |
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 11:43 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