AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi RunAs Dialog vor dem Programmstart???
Thema durchsuchen
Ansicht
Themen-Optionen

RunAs Dialog vor dem Programmstart???

Ein Thema von Piro · begonnen am 8. Mär 2006 · letzter Beitrag vom 5. Mai 2006
Antwort Antwort
Seite 3 von 5     123 45      
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#21

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 14:13
Zitat von MathiasSimmack:
@Codex: Hast du da nicht ein Zitat vergessen:
Zitat:
The SE_TCB_NAME privilege is not required for this function unless you are logging onto a Passport account.
wir schmeissen hier mit zitatfetzen um uns ...
also hier mal vollständig:

Zitat:
Remarks

The LOGON32_LOGON_NETWORK logon type is fastest, but it has the following limitations:

* The function returns an impersonation token, not a primary token. You cannot use this token directly in the CreateProcessAsUser function. However, you can call the DuplicateTokenEx function to convert the token to a primary token, and then use it in CreateProcessAsUser.
* If you convert the token to a primary token and use it in CreateProcessAsUser to start a process, the new process cannot access other network resources, such as remote servers or printers, through the redirector. An exception is that if the network resource is not access controlled, then the new process will be able to access it.

The SE_TCB_NAME privilege is not required for this function unless you are logging onto a Passport account.

Windows 2000: The process calling LogonUser requires the SE_TCB_NAME privilege. If the calling process does not have this privilege, LogonUser fails and GetLastError returns ERROR_PRIVILEGE_NOT_HELD. In some cases, the process that calls LogonUser must also have the SE_CHANGE_NOTIFY_NAME privilege enabled; otherwise, LogonUser fails and GetLastError returns ERROR_ACCESS_DENIED. This privilege is not required for the local system account or accounts that are members of the administrators group. By default, SE_CHANGE_NOTIFY_NAME is enabled for all users, but some administrators may disable it for everyone. For more information about privileges, see Privileges.
ich habe den code jetzt ausprobiert. unter XP funktioniert das einwandfrei.
unter 2000 jedoch nicht. LogonUser liefert hier false zurück. das wird wohl genau der hinweis sein, den ich als zitat gepostet habe.
kann das bitte jemand auch ausprobieren und bestätigen/dementieren? (btw: als DOMAIN habe ich '' genommen, da ich das lokal machen möchte. ging unter XP, vllt braucht 2000 was anderes?)

für meine zwecke müsste eine solche funktion für 2000/XP/2003 funktionieren. die 2000 user möchste/kann ich auf keinen fall ausnehmen.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#22

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 14:16
Warum nimmst du nicht MSDN-Library durchsuchenCreateProcessWithLogonW? das funktioniert sowohl unter Windows 2000 als auch Windows XP. Und du kannst dir auch mal RunAsUser angucken.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Piro
Piro

Registriert seit: 14. Jul 2003
Ort: Flintbek
810 Beiträge
 
Delphi XE2 Professional
 
#23

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 14:31
Habe mit mal CreateProcessWithLogonW angeschaut. würde für meinen Fall auch zu treffen. Funktioniert das auch mit delphi3? Bekomme immer ein fehlermeldung das er EnablePrivilege oder CreateProcessAsLogon nicht kennt.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#24

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 14:36
EnablePrivilege
Und dann brauchst du wahrscheinlich noch die Unit MpuWinNT.pas von meiner Homepage.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#25

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 14:40
Zitat von Luckie:
Warum nimmst du nicht MSDN-Library durchsuchenCreateProcessWithLogonW? das funktioniert sowohl unter Windows 2000 als auch Windows XP. Und du kannst dir auch mal RunAsUser angucken.
klar, das geht. nachteil ist hier, dass das nicht im laufenden programm geändert werden kann.
um das in einer exe verwenden zu können, muss sich das programm damit selber aufrufen und die aktuelle instanz beenden.
dürfte den programmstart entsprechend verlangsamen.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#26

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 15:12
Moin Daywalker,

Zitat von daywalker299:
Funktioniert das auch mit delphi3? Bekomme immer ein fehlermeldung das er EnablePrivilege oder CreateProcessAsLogon nicht kennt.
Funktionieren wird das mit D3 grundsätzlich schon, nur wirst Du vermutlich die Funktionen selber importieren müssen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
kalmi01
(Gast)

n/a Beiträge
 
#27

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 16:38
Zitat von daywalker:
Schöner wäre ja nur wenn das ganze Tool mit Admimrechten laufen würde
Tut es ja, wenn Du einen Admin-Account kennst
Ansonsten müsste man davon ausgehen müssen, dass Du was "Böses" machen willst.

Zitat:
unter XP funktioniert das einwandfrei.
unter 2000 jedoch nicht.
.....
als DOMAIN habe ich '' genommen
Probiers mal mit der realen Domäne, also Domäne oder Computername.

Zitat:
sicherheitshalber im OnClose noch das RevertToSelf rein
Warum ?
Wenn das Prog schliesst ist alles um !
Kein Prog = keine Rechte !

Zitat von TerronG:
Hätt ich dden Code nur eher gekannt ..
Na ja, gekannt hab ich ihn auch nicht.
Ich glaub man nennt das "Erarbeiten"

Zitat von CodeX:
jetzt lass mich raten: du arbeitest dabei mit services, richtig?
Definitiv NEIN.
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#28

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 17:24
Zitat von kalmi01:
Zitat:
unter XP funktioniert das einwandfrei.
unter 2000 jedoch nicht.
.....
als DOMAIN habe ich '' genommen
Probiers mal mit der realen Domäne, also Domäne oder Computername.
habe ich nun mit dem computernamen probiert.
XP: geht
2000: geht nicht
  Mit Zitat antworten Zitat
kalmi01
(Gast)

n/a Beiträge
 
#29

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 17:30
Zitat:
habe ich nun mit dem computernamen probiert.
XP: geht
2000: geht nicht
Tja, dann weiss ich auch nicht weiter.
Wie ich schon sagte, Win2000-PC waren nur (sehr) wenige bei mir im Test, da wir 2K übersprungen haben (schade).
Mit SP2 und allen/letzen Patches gehts bei mir.

Aber vielleicht kriegst Du es ja raus, woran es liegt
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#30

Re: RunAs Dialog vor dem Programmstart???

  Alt 10. Mär 2006, 21:55
Moin Zusammen,

ich habe das gerade mal ausprobiert beide angesprochenen Privilegien zu aktivieren:
Unter XP SP2 und W2K SP4 hat das geklappt, dennoch schlägt der Aufruf von LogonUser unter W2K fehl (Der Client besitzt ein erforderliches Recht nicht)
Vorhanden sein müssen die Privilegien, sonst könnte ich sie nicht erfolgreich aktivieren.
Irgendwie scheint in der Dokumentation eines (oder mehrere) zu fehlen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz