Entwickler-Ecke
Windows API - dos privilegien
Andreas95 - Mo 01.02.10 19:47
Titel: dos privilegien
Ist es möglich mit delphi die dos privelegien zu ändern? tät mich interessieren weil man ja zum ausschalten des pcs die privelegien ändert.
also ich meine wenn dos gesperrt wurde.
danke.
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Mo 01.02.2010 um 20:00
Xentar - Mo 01.02.10 20:11
Ich versteh die Frage nicht..
was für "DOS Privilegien"? Meinst du die Konsole, die man mit Start -> Ausführen -> CMD erreicht?
Und was hat das mit Ausschalten des PCs zu tun? Wenn du den Befehl "shutdown" meinst: Such mal hier im Forum nach Rechner herunterfahren, da gibts schon einige Themen zu.
ALF - Mo 01.02.10 20:24
:lol:
Er meint bestimmt nicht DOS im sinne von MsDos, sondern dieses DoS :wink:
Egal ob der Rechner runtergefahren wird oder gestarted, die Privilegien bleiben immer gleich.
Warum willst Du also welche ändern?
Selbst wenn Du MSDos meinst, kannst Du trotzdem normale Konsolenprogramme starten!
Gruss Alf
Andreas95 - Mo 01.02.10 20:26
ok tut mir leid frage war angeblich nicht klar. Ich weiss wie man den pc abschaltet. Aber wenn man das macht muss man es ersteinstellen das man es darf. :
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| function MyWindowsShutdown(AForce: Boolean): Boolean; var hToken: THandle; tp: TTokenPrivileges; h, Flag: DWord; begin flag:=EWX_SHUTDOWN; if (Win32Platform = VER_PLATFORM_WIN32_NT) then begin flag:=EWX_POWEROFF; OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES, hToken); LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tp.Privileges[0].Luid); tp.PrivilegeCount:=1; tp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED; h:=0; AdjustTokenPrivileges(hToken, False, tp, 0, PTokenPrivileges(nil)^, h); CloseHandle(hToken) end else ; if AForce then flag:=flag or EWX_FORCE; Result:=ExitWindowsEx(flag, 0); |
da verändere ich ja die shutdown pivilegie.
und ich meine wenn dos so gesperrt ist das es zwar öffnet aber man nichts machen kann.
tut mir echt leid wenn meine frage nicht klar is ich bitte um verständnis ( :
ALF - Mo 01.02.10 20:30
Zitat: |
....ersteinstellen das man es darf. |
must Du nicht!
Es sei, das Du sie ändern willst, das kein anderer mehr Windoes beenden kann!
warum auch immer
Gruss ALf
Andreas95 - Mo 01.02.10 20:31
ALF hat folgendes geschrieben : |
Zitat: | ....ersteinstellen das man es darf. |
must Du nicht! |
wenn ich auf einen pc wäre das keine administrator rechte hat
ALF - Mo 01.02.10 20:34
Delphi-Quelltext
1:
| wenn ich auf einen pc wäre das keine administrator rechte hat |
Dann kannst trotzdem Windows beenden oder!???
Andreas95 - Mo 01.02.10 20:41
ALF hat folgendes geschrieben : |
Delphi-Quelltext 1:
| wenn ich auf einen pc wäre das keine administrator rechte hat |
Dann kannst trotzdem Windows beenden oder!??? |
ok sorry ich glaub du verstehst ich wirklich net ( ; das mit dem ausschalten war nur ein besispiel. ich wollte nur wissen ob es auch so möglich ist andere sachen wie zum Beispiel dos oder cmd freizuschalten wenn sie von einen administrator gesperrt wurden.
ALF - Mo 01.02.10 20:47
Das sieht doch nach Hacks aus!
Wenn ein Admin sowas macht, dann hatt es einen Grund!
Hab ich doch recht DoS :mahn:
Gruss ALf
Andreas95 - Mo 01.02.10 21:00
ALF hat folgendes geschrieben : |
Das sieht doch nach Hacks aus!
Wenn ein Admin sowas macht, dann hatt es einen Grund!
Hab ich doch recht DoS :mahn:
Gruss ALf |
ich hab es nicht nötig zu hacken ich bin der Administrator an diesen pc und an allen, die ich benutze. wäre nur mal interessant gewesen. muss ja nicht DoS sein ich meine inzgesamt alles.
Narses - Mo 01.02.10 21:01
Moin!
Andreas95 hat folgendes geschrieben : |
das mit dem ausschalten war nur ein besispiel. ich wollte nur wissen ob es auch so möglich ist andere sachen wie zum Beispiel dos oder cmd freizuschalten wenn sie von einen administrator gesperrt wurden. |
Das Stichwort, was du suchst, ist:
GRUPPENRICHTLINIEN :idea:
Und ja, man kann das ändern, dazu muss man aber wieder Admin sein. :P
cu
Narses
ALF - Mo 01.02.10 21:11
1. in Deiner Anfrage steht nicht das du Admin bist.
2. beziehe ich das auf deiner Aussage
Andreas95
Zitat: |
wenn ich auf einen pc wäre das keine administrator rechte hat |
Was ist also an meiner Antwort Falsch!
Grus ALf
Andreas95 - Mo 01.02.10 21:15
ALF hat folgendes geschrieben : |
1. in Deiner Anfrage steht nicht das du Admin bist.
2. beziehe ich das auf deiner Aussage Andreas95
Zitat: | wenn ich auf einen pc wäre das keine administrator rechte hat |
Was ist also an meiner Antwort Falsch!
Grus ALf |
nichts.. angeblich ist es nicht möglich vielen danke für eure hilfe
Bernhard Geyer - Mo 01.02.10 22:16
Andreas95 hat folgendes geschrieben : |
ich hab es nicht nötig zu hacken ich bin der Administrator an diesen pc und an allen, die ich benutze. wäre nur mal interessant gewesen. muss ja nicht DoS sein ich meine inzgesamt alles. |
Dann solltest du deine Grundkenntnisse von Windows mal auf aktuellen Stand bringen. Windows ME war die letzte Windows-Version die eine DOS-Kern besaß. Die NT-Basierte Schiene (NT/W2K/XP/2003/Vista/2008/7) basiert nicht auf DOS.
Und seit Vista ist es einem Prozess nicht mehr möglich Adminrechte zu bekommen wenn diese nicht schon beim Prozesstart vorhanden sind (UAC lässt grüßen). Über COM/ActiveX lässt sich zwar noch was machen abe damit hab ich mich bisher nicht beschäftigt. Beispiele sollten aber hier oder in anderen Delphi-Foren zu finden sein.
Delete - Mo 01.02.10 23:04
Andreas95 hat folgendes geschrieben : |
ok tut mir leid frage war angeblich nicht klar. Ich weiss wie man den pc abschaltet. Aber wenn man das macht muss man es ersteinstellen das man es darf. :
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| function MyWindowsShutdown(AForce: Boolean): Boolean; var hToken: THandle; tp: TTokenPrivileges; h, Flag: DWord; begin flag:=EWX_SHUTDOWN; if (Win32Platform = VER_PLATFORM_WIN32_NT) then begin flag:=EWX_POWEROFF; OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES, hToken); LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tp.Privileges[0].Luid); tp.PrivilegeCount:=1; tp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED; h:=0; AdjustTokenPrivileges(hToken, False, tp, 0, PTokenPrivileges(nil)^, h); CloseHandle(hToken) end else ; if AForce then flag:=flag or EWX_FORCE; Result:=ExitWindowsEx(flag, 0); |
da verändere ich ja die shutdown pivilegie.
und ich meine wenn dos so gesperrt ist das es zwar öffnet aber man nichts machen kann.
tut mir echt leid wenn meine frage nicht klar is ich bitte um verständnis ( : |
Du redest ziemlich wirres Zeug, kann aber auch daran liegen, dass du eigentlich gar nicht weiß wo von du redest und was du willst.
Mit obigen Code wird das Privileg zum Runterfahren des Rechners nur aktiviert. "Haben" muss es der Benutzer schon vorher.
Andreas95 hat folgendes geschrieben : |
ich wollte nur wissen ob es auch so möglich ist andere sachen wie zum Beispiel dos oder cmd freizuschalten wenn sie von einen administrator gesperrt wurden. |
Gesetz dem Fall das wäre möglich ohne administrative Rechte zu besitzen, welchen Wert hätten dann die Gruppenrichtlinien für die Sicherheit des Systems?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!