Delphi-PRAXiS
Seite 4 von 5   « Erste     234 5      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Abfragen ob Process Adminrechte hat? (https://www.delphipraxis.net/68281-abfragen-ob-process-adminrechte-hat.html)

Eiswuxe 12. Dez 2006 15:08

Re: Abfragen ob Process Adminrechte hat?
 
Ich dachte eigentlich nicht, dass du Dir die Mühe machen würdest, hier nochmal genauer drauf einzugehen, da das Thema ja schon ne Weile her ist, darum hab ich das nicht gleich gepostet. Aber um so besser:
Delphi 6
Ich benutze den Code aus deiner Unit. Um genauer zu sein, nur die Funktion CheckForAdminPrivileges;
Beim 2. Durchlauf der "For i := 0 to TokenInformation^.GroupCount - 1 do" Schleife bekomme ich direkt in der 1. Zeile folgendes:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt FEX.exe ist eine Exception der Klasse ERangeError aufgetreten. Meldung: 'Fehler bei Bereichsprüfung'. Prozeß wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.

Beim Debuggen ist mir aber nichts weiter aufgefallen. Alle Variablen, die verwendet werden, sind definiert.

NicoDE 12. Dez 2006 15:27

Re: Abfragen ob Process Adminrechte hat?
 
Der einfachste Lösung ist das Deaktivieren der Bereichsüberprüfung in den Projektoptionen.
(liegt an der Art und Weise wie TTokenGroups deklariert wurde)

Eiswuxe 12. Dez 2006 15:31

Re: Abfragen ob Process Adminrechte hat?
 
Ich hab das ganze jetzt schon anders umgangen, so dass keine Exception mehr auftritt. Das Problem ist nach wie vor das selbe. Das liegt einfach daran, dass Vista Programme, wenn nicht anders angegeben, automatisch im eingeschränkten Kontext laufen lässt. Hab eben das Stichwort "manifest file" in diesem Zusammenhang gelesen, vielleicht hilft mir das weiter. Aber danke für die Mühen :-D

NicoDE 12. Dez 2006 16:17

Re: Abfragen ob Process Adminrechte hat?
 
Zitat:

Zitat von Eiswuxe
Das Problem ist nach wie vor das selbe. Das liegt einfach daran, dass Vista Programme, wenn nicht anders angegeben, automatisch im eingeschränkten Kontext laufen lässt.

Nun. Ich weiß nicht was du anders machst, aber bei mir liefert die Funktion unter Vista RTM False zurück wenn das Programm mit eingeschränkten Rechten läuft.

Luckie 12. Dez 2006 17:53

Re: Abfragen ob Process Adminrechte hat?
 
Eventuell noch was zu den Rechten: http://www.c-plusplus.de/forum/viewt...is-167580.html

Eiswuxe 13. Dez 2006 10:31

Re: Abfragen ob Process Adminrechte hat?
 
Zitat:

bei mir liefert die Funktion unter Vista RTM False zurück wenn das Programm mit eingeschränkten Rechten läuft
Ja bei mir auch. Allerdings liefert es AUCH false zurück, wenn ich von einem lokalen admin konto aus die Anwendung starte.

NicoDE 13. Dez 2006 12:46

Re: Abfragen ob Process Adminrechte hat?
 
Zitat:

Zitat von Eiswuxe
Allerdings liefert es AUCH false zurück, wenn ich von einem lokalen admin konto aus die Anwendung starte.

Adminkonto hin oder oder her. Mit aktiviertem UAC werden standardmäßig alle Programme mit eingeschränkten Rechten gestartet. Im Zweifelsfall das Programm mit der rechten Maustaste "Als Admin starten" ausführen.

EinsteinXXL 21. Aug 2015 23:06

AW: Abfragen ob Process Adminrechte hat?
 
hallo

ich wollte die funktion auch verwenden, jedoch findet meine IDE "SE_GROUP_ENABLED" nicht. Welche unit bzw. api muss ich denn bei uses eintragen? Habe schon google befragt, aber nichts richtiges gefunden.

Luckie 21. Aug 2015 23:09

AW: Abfragen ob Process Adminrechte hat?
 
Das sieht nach einer Konstanten aus. Eine schnelle Suche mit Google bringt Klarheit.

EWeiss 21. Aug 2015 23:15

AW: Abfragen ob Process Adminrechte hat?
 
Delphi-Quellcode:
const
SE_GROUP_ENABLED = 4;
gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:45 Uhr.
Seite 4 von 5   « Erste     234 5      

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