Registry - Wert ändern ohne Adminstrator Berechtigungen

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
pyromane
Beiträge: 276
Registriert: 09.09.2010 14:10

Registry - Wert ändern ohne Adminstrator Berechtigungen

Beitrag von pyromane »

Hallo,

ich habe neuerdings einen Windows Tablet PC. Der hat ein Auto Rotation "Feature", wie man es von Smartphones kennt. Manchmal ist das sehr lästig. Es gibt viele Optionen das Aus-/Anzustellen. Da ich aber 2 "programmierbare" Hardware Buttons habe, wollte ich ein Script schreiben welches in der Registry den Wert von 0 auf 1 bzw von 1 auf 0 setzt. Das klappt auch, allerdings benötigt mein Code Admin-Rechte, damit er den Wert ändert. Die habe ich auch nur wenn ich unter den Tablet Einstellungen sage welche .exe gestartet werden soll wenn ich den Button drücke gibt es diese Option nicht mehr bzw die Programme werden einfach ohne Admin rechte ausgeführt. Gibt es eine Möglichkeit, dass meine Software sich entweder die Rechte holt oder das ich den Wert ohne Admin rechte ändere?

Betriebssystem ist Windows 8.1 und der Schlüssel liegt hier:

Code: Alles auswählen

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AutoRotation
und heißt Enabled. Ist ein DWORD und kann 0 bzw 1 sein.

Ich nutze die Funktionen von hier: http://www.purebasic.fr/english/viewtop ... gistry.pbi

Danke für eure Hilfe!
PureBasic 5.21 LTS auf Windows 7 x64 (Intel i5 2500K, 8GB Ram, Nvidia GTX 780)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Registry - Wert ändern ohne Adminstrator Berechtigungen

Beitrag von ts-soft »

Einfach die Manifest für Admin in den Compileroptionen aktivieren.
Falls das OS 64-Bit ist und Deine Anwendung 32-Bit, wird der Schlüssel dank Virtualisierung nicht mehr stimmen!
Dafür kannst Du aber meine etwas aktuelleren Registry-Funktionen nutzen, findest Du hier:
http://www.purebasic.fr/english/viewtop ... 72#p422572
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
pyromane
Beiträge: 276
Registriert: 09.09.2010 14:10

Re: Registry - Wert ändern ohne Adminstrator Berechtigungen

Beitrag von pyromane »

Meinst du damit die Checkbox das die exe als Admin ausgeführt wird unter den Compiler-Optionen? Wenn ja, die habe ich die ganze Zeit schon gesetzt. Mein Code funktioniert ja auch nur nicht mehr wenn Windows ihn ausführt. Bei deinem Code bekome ich beim testenden Fehler: "Ungültiger Zugriff auf Speicherbereich"

Folgende Codezeile nutze ich hierfür:

Code: Alles auswählen

WriteValue(#HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion\AutoRotation", "Enable", Str(1), #REG_DWORD))
Ja, dass OS ist Win 8.1 x64.
PureBasic 5.21 LTS auf Windows 7 x64 (Intel i5 2500K, 8GB Ram, Nvidia GTX 780)
Antworten