Admin-Mode auf Knopfdruck

Für allgemeine Fragen zur Programmierung mit PureBasic.
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Admin-Mode auf Knopfdruck

Beitrag von Lambda »

Habe eine Anwendung die nicht bei jedem Start Administrator-Rechte brauchen würde. Entweder prüft es ein Programm auf Aktualität oder führt dann gegeben falls Updates durch.

Schild auf Button

Ist öfter bei Windowsgedöns zu sehen, der Modus wird erst bei klick auf einen Button mit dem Schild-Symbol angefordert. Weiß jemand wie?

Edit: Ist für Programme unter C:\Program Files nicht der User-Mode ausreichend?
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: Admin-Mode auf Knopfdruck

Beitrag von ts-soft »

Admin-Mode kannst Du mit folgendem Code Deiner Exe hinzufügen:

Code: Alles auswählen

Procedure.i RelaunchAndElevate(params.s = "")
  Protected info.SHELLEXECUTEINFO, exe.s
  exe = ProgramFilename()
  If exe
    info\hwnd            = GetForegroundWindow_()
    info\cbSize          = SizeOf(SHELLEXECUTEINFO)
    info\lpVerb          = @"runas"
    info\lpFile          = @exe
    info\lpParameters    = @params
    info\nShow           = #SW_SHOWNORMAL
    ProcedureReturn ShellExecuteEx_(info)
  EndIf
EndProcedure
Die Exe muß hierfür neugestartet werden. Ein Weg zurück weiß ich im moment nicht, weil jeder Process, der von einem
Process mit Adminrechten gestartet wird, diese erbt.

Zum speichern in ProgramFiles oder ähnlich sind Admin-Rechte erforderlich.
Lediglich in Dokumente, APPDATA und den nicht Systemordnern kann geschrieben werden.
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
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: Admin-Mode auf Knopfdruck

Beitrag von Lambda »

Bedeutet solch ein Button ist dem System vorbehalten? Meine es bei anderen Updater auch gesehen zu haben.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Admin-Mode auf Knopfdruck

Beitrag von RSBasic »

@cOoki3druqs
Wenn du so einen Admin-Button erstellen möchtest: http://www.rsbasic.de/aktualisierung/wi ... minicon.pb
Beim Klick-Event führst du dann mit Hilfe von ts-softs Beispielcode deine Anwendung (mit Parameter oder externe Anwendung) aus.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
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: Admin-Mode auf Knopfdruck

Beitrag von ts-soft »

Besser ist es in jedem Falle, eine andere Anwendung mit Adminrechten zu starten, sonst wird man die Rechte nicht wieder los :mrgreen:
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
Lambda
Beiträge: 526
Registriert: 16.06.2011 14:38

Re: Admin-Mode auf Knopfdruck

Beitrag von Lambda »

Danke dir, also ist so ein Button eher nur symbolisch für "Klick mich und ich starte neu mit Admin-Rechte". :D Also keine Anforderung zur Laufzeit.
Antworten