Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

problem sa RegSaveKey funkcijom

[es] :: Pascal / Delphi / Kylix :: problem sa RegSaveKey funkcijom

[ Pregleda: 418 | Odgovora: 6 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Nemanja_666
Nemanja Tatic
Gradiska

Član broj: 116292
Poruke: 126
87.250.102.*



Profil

icon problem sa RegSaveKey funkcijom23.12.2007. u 02:37

Radim neki program i potrebno mi je da uradim backup nekih kljuceva u registriju.

Probao sam na dva nacina:

Code:

var
  Reg : TRegistry;
begin
  Reg := TRegistry.Create;
  Reg.Rootkey := HKEY_CURRENT_USER;
  Reg.Savekey('\Software\Blablabla', 'blablabla.reg');
end;


i

Code:

var
  RootKey, phKey: HKey;
  Key : string;
begin
  RootKey := HKEY_CURRENT_USER;
  Key := '\Software\Blablabla';
  RegOpenKeyEx(RootKey, PChar(Key), 0, KEY_ALL_ACCESS, phKey);
  RegSaveKey(phKey, PChar('test.reg'), nil);
  RegCloseKey(phKey);
end;


Program pokren sa administratorskim provilegijama (na visti) i nikad mi ne uradi sta se ocekujem :)

Ako ima neko resenja osim:

Code:

  ShellExecute(Handle, 'open', PChar('regedit.exe /e Key Filename'), '', sw_hide) ;


Pozz
23.12.2007. u 02:37 

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 1101
*.adsl-1.sezampro.yu.



Profil

icon Re: problem sa RegSaveKey funkcijom23.12.2007. u 11:08
> Radim neki program i potrebno mi je da uradim backup nekih kljuceva u registriju.

Koje greške dobijaš, možeš saznati sa GetLastError ili RaiseLastOSError.
Pokušaj da stavke otvaraš sa KEY_READ pravom pristupa ne sa KEY_ALL_ACCESS.
23.12.2007. u 11:08 

Nemanja_666
Nemanja Tatic
Gradiska

Član broj: 116292
Poruke: 126
87.250.102.*



Profil

icon Re: problem sa RegSaveKey funkcijom23.12.2007. u 13:23
Pokusao sam sa KEY_READ i nije opet radilo.
Greska koju dobijem kad koristim funkciju koju se spomenuo gore je "A call to an OS function fail"
23.12.2007. u 13:23 

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 1101
*.adsl-1.sezampro.yu.



Profil

icon Re: problem sa RegSaveKey funkcijom23.12.2007. u 15:27
> Greska koju dobijem kad koristim funkciju koju se spomenuo gore je "A call to an OS function fail"

Posle koje fukcije? Da li tvoj proces ima SE_BACKUP_NAME privilegiju?

Code:

var
  RootKey, phKey: HKey;
  Key : string;
  lRet: Longint;
begin
  RootKey := HKEY_CURRENT_USER;
  Key := 'Software\BitTorrent';
  lRet := RegOpenKeyEx(RootKey, PChar(Key), 0, KEY_READ, phKey);
  if lRet = ERROR_SUCCESS then
  begin
    lRet := RegSaveKey(phKey, PChar('C:\test.reg'), nil);
    if lRet <> ERROR_SUCCESS then
      raise Exception.Create(SysErrorMessage(lRet));
  end
  else
    raise Exception.Create(SysErrorMessage(lRet));
end;


23.12.2007. u 15:27 

Nemanja_666
Nemanja Tatic
Gradiska

Član broj: 116292
Poruke: 126
87.250.102.*



Profil

icon Re: problem sa RegSaveKey funkcijom23.12.2007. u 18:19
> Da li tvoj proces ima SE_BACKUP_NAME privilegiju?

Ocito nema. Greska sa ovim tvojim kodom "A required privilege is not held by the client".

Ako znas pomozimi kako da ovo resim.
23.12.2007. u 18:19 

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 1101
*.adsl-1.sezampro.yu.



Profil

icon Re: problem sa RegSaveKey funkcijom23.12.2007. u 20:17
Downloaduj JCL i pozovi JclSecurity.EnableProcessPrivilege(True, 'SeBackupPrivilege');
23.12.2007. u 20:17 

Nemanja_666
Nemanja Tatic
Gradiska

Član broj: 116292
Poruke: 126
87.250.102.*



Profil

icon Re: problem sa RegSaveKey funkcijom23.12.2007. u 21:07
Hmmm nisam se sjetio toga.
Idem sad malo plofetati kako to radi.
Hvala.
23.12.2007. u 21:07 

[es] :: Pascal / Delphi / Kylix :: problem sa RegSaveKey funkcijom

[ Pregleda: 418 | Odgovora: 6 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.