AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Vista - Dienst starten

Ein Thema von hirnstroem · begonnen am 3. Apr 2008 · letzter Beitrag vom 4. Apr 2008
Antwort Antwort
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#1

Vista - Dienst starten

  Alt 3. Apr 2008, 10:28
'loha Folks,

eine Applikation wurde als Dienst unter Windows Vista installiert. Dieser Dienst soll nun gestartet werden. Geschieht dies über "Dienste" in der Systemsteuerung, so startet der Dienst anstandslos, wird er über das Kommandozeilenprogramm (cmd.exe) gestartet, so heisst es stets, Systemfehler 5 sei aufgetreten und der Zugriff wird verweigert.

In beiden Fällen wurde mit demselben Benutzer, welcher Administratorenrechte hat, gearbeitet.

Aussagen weshalb dies geschieht oder wie man es verhindern kann, nehme ich gerne entgegen.


Grüsse
hirnstroem
inde deus abest
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Vista - Dienst starten

  Alt 3. Apr 2008, 10:31
Ich vermute mal das du UAC noch aktiv hast, un da mußt Du die Kommandozeile auch mit Administratorrechten starten.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Vista - Dienst starten

  Alt 3. Apr 2008, 10:39
Dies (Kommandozeile auch mit Administratorrechten starten) geschieht also nicht automatisch, wenn ein Benutzer mit entsprechenden Rechten das Kommandozeilenprogrämmlein startet?

Es ist so, dass die Applikation prüfen soll ob ein bestimmter Dienst bereits läuft, wenn nicht, diesen startet und am Ende in jedem Fall eine bestimmte URL aufruft. Das starten des Dienstes und das aufrufen der URL wird über die ShellExecute Methode realisiert.
inde deus abest
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Vista - Dienst starten

  Alt 3. Apr 2008, 10:41
Zitat von hirnstroem:
Dies (Kommandozeile auch mit Administratorrechten starten) geschieht also nicht automatisch, wenn ein Benutzer mit entsprechenden Rechten das Kommandozeilenprogrämmlein startet?
Jeder neue Prozess wird ohne Adminrechte gestartet außer im Manifest steht etwas anderes oder Windows erkennt aufgrund von Dateiinformationen und Name das der Prozess Adminrechte benötigt (wenn das Manifest nicht die Vista-Erweiterungen beinhaltet).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Vista - Dienst starten

  Alt 3. Apr 2008, 10:45
Ja so ist das. Bei mir läuft dieses Vista erst seit zwei Tagen, ich bitte deshalb um Nachsicht : )

Dann werde ich jetzt versuchen die Kommandozeile sich mit entsprechenden Rechten starten zu lassen. Die Applikation welche die ShellExecute Methode ausführt, wurde bereits mit einem Manifest (requireAdministrator) ausgestattet, das genügt nun ja aber nicht, wenn ich das richtig verstehe.
inde deus abest
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Vista - Dienst starten

  Alt 3. Apr 2008, 10:58
Zitat von hirnstroem:
Die Applikation welche die ShellExecute Methode ausführt, wurde bereits mit einem Manifest (requireAdministrator) ausgestattet
Wenn du willst das deine Adminrechte vererbt werden nimm CreateProcess. Bei ShellExecute wird die Shell beauftragt den Prozess zu starten und diese wird den Prozess dann wieder ohne Adminrechte starten (außer du gestartete Exe hat wieder entsprechendes Manifest).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: Vista - Dienst starten

  Alt 3. Apr 2008, 14:36
[OT]
Ich häng mich hier einfach mal rein.

Zitat von Bernhard Geyer:
... oder Windows erkennt aufgrund von Dateiinformationen und Name das der Prozess Adminrechte benötigt ...
Welche Informationen bzw. Namen könnten das beispielsweise sein?
Gibts da was zum nachlesen?

Zu CreateProcess: Gibt es da nicht auch irgendwelche Einschränkungen. Ich glaube da mal was vor geraumer Zeit gehört zu haben.
Da gings um Viren und die Verhinderung dass diese API-Funktion so einfach gerufen werden könne. Oder irre ich mich da?
Als Alternative zu CreateProcess hat man (damals) SendKeys an das Startmenü->Ausführen geschickt ...

Könnt ihr was dazu sagen?

[/OT]
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: Vista - Dienst starten

  Alt 3. Apr 2008, 15:00
Zitat von gmc616:
Welche Informationen bzw. Namen könnten das beispielsweise sein?
Dateiname beinhaltet setup/install oder update im Namen oder in den Dateiinformationen.

Zitat von gmc616:
Gibts da was zum nachlesen?
Sicherlich. Weiß aber nicht mehr wo. Einfach mal googeln oder jemand hat solche Links noch parad.

Zitat von gmc616:
Ich glaube da mal was vor geraumer Zeit gehört zu haben.
Da gings um Viren und die Verhinderung dass diese API-Funktion so einfach gerufen werden könne. Oder irre ich mich da?
Sicherlich gibt es immer mal übereifige Virenscanner.

Zitat von gmc616:
Als Alternative zu CreateProcess hat man (damals) SendKeys an das Startmenü->Ausführen geschickt ...
Und das soll sicherer sein? Wenn zu viele mißbrauchen würden, wird MS da auch per UAC oder anderen Mechanismen was dazwischenbasteln.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#9

Re: Vista - Dienst starten

  Alt 3. Apr 2008, 15:23
Ah, Danke für die Infos.

Zitat von Bernhard Geyer:
Und das soll sicherer sein?
Nein. Eben nicht.
In dem Video ging es um die Sinnlosigkeit von Personal Firewalls. Dort hat der CCC verschiedene Firewalls und Virenscanner getested und festgestellt, dass ALLE einen Rechner nur ungenügend sicher machen können.

Kann durchaus sein, das da auch erwähnt wurde, das ein Virenscanner CreateProcess "blockieren" könne. Ich weiß es nicht mehr genau, is schon ne ganze Weile her als ich das gesehen hab.

Wie auch immer.
Mit SendKeys hat der Referent nur gezeigt, das es trotz Blockierens von CreateProcess, möglich ist, ein Fremdprogramm ohne Zutun des Benutzers auf einem Rechner zu starten und auszuführen. Alles aus dem Blickwinkel eines Virenprogrammieres.
  Mit Zitat antworten Zitat
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Vista - Dienst starten

  Alt 4. Apr 2008, 07:24
Wollte mich noch bei Herrn Geyer für den Tipp mit CreateProcess bedanken, nun funktioniert die alles wie gewünscht.
inde deus abest
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:22 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