Vra

Ek weet dat ons nie moet word met behulp van die register te Application Data meer slaan nie, maar in die opdatering van 'n Legacy program (en wil die minste verander nie), wat Register Korwe is nie-administrateurs toegelaat word om te gebruik?

Kan ek toegang tot al HKEY_CURRENT_USER (die aansoek op die oomblik toegang HKEY_LOCAL_MACHINE) sonder administrateur regte?

Was dit nuttig?

Oplossing

In die algemeen, 'n nie-administrateur gebruiker het hierdie toegang tot die register:

Lees / Skryf aan:

  • HKEY_CURRENT_USER

Slegs Lees:

  • HKEY_LOCAL_MACHINE
  • HKEY_CLASSES_ROOT (wat net 'n skakel om HKEY_LOCAL_MACHINE\Software\Classes)

Dit is moontlik om 'n paar van hierdie regte op 'n sleutel-vir-key basis verander, maar dit is uiters skaars. Jy moet nie bekommerd te wees oor dit.

Vir jou doeleindes, moet jou aansoek skryf instellings en opset om HKEY_CURRENT_USER. Die kanonieke plek is oral binne HKEY_CURRENT_USER\Software\YourCompany\YourProduct\

Jy kan potensieel hou instellings wat globale is (vir alle gebruikers) in HKEY_LOCAL_MACHINE. Dit is baie skaars nodig om dit te doen, en jy moet dit vermy. Die probleem is dat 'n gebruiker kan "lees" die, maar net 'n administrateur (of deur uitbreiding, jou setup / installeer program) kan "stel" hulle.

Ander algemene bron van benoudheid: jou aansoek moet nie skryf na enigiets in die Program files of die Windows dopgehou. As jy nodig het om te skryf aan lêers, is daar verskeie opsies op hande; beskrywing almal sal 'n langer gesprek wees. Al die opsies beland onder %USERPROFILE% skryf aan 'n subgids of 'n ander vir die gebruiker in vraag.

Ten slotte, moet jou aansoek uit HKEY_CURRENT_CONFIG bly. Dit miernes hou hardeware opset, dienste konfigurasies en ander items wat 99,9999% van aansoeke nie moet moet kyk na (byvoorbeeld, dit hou die lys huidige plug-and-play toestel). As jy iets van daar af nodig het, die meeste van die inligting is beskikbaar deur middel van ondersteuning APIs elders.

Ander wenke

Ja, moet jy in staat wees om enige plek onder HKEY_CURRENT_USER te skryf sonder administrateur regte. Maar dit is eintlik 'n private winkel wat geen ander gebruiker op hierdie masjien toegang sal wees, sodat jy 'n gedeelde opset wat nie daar kan sit.

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top