Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Schattenkopien über einen Dienst erstellen (https://www.delphipraxis.net/194640-schattenkopien-ueber-einen-dienst-erstellen.html)

amigage 15. Dez 2017 11:23

Betriebssystem: Win 10

Schattenkopien über einen Dienst erstellen
 
Hallo,

ich habe einen Dienst erstellt, der es mir erlauben soll, ferngesteuert über eine Pipe eines anderen Programms, Schattenkopien zu erstellen und dann den Schattenkopiepfad zurückzuliefern.
Dies funktioniert ganz prima mit einem als Administrator ausgeführten Programm, jedoch nicht über den Dienst.

Ich vermute einmal, dies liegt daran, dass der Dienst keine Administratorrechte hat, oder?
Wie kann ich den Dienst als Administrator ausführen lassen, damit er die Schattenkopien erstellen darf?

Über einen Tipp würde ich mich freuen, danke.

LTE5 15. Dez 2017 11:26

AW: Schattenkopien über einen Dienst erstellen
 
Mit einem entsprechenden Manifest.

amigage 15. Dez 2017 11:31

AW: Schattenkopien über einen Dienst erstellen
 
Ich habe bereits in den Berlin 10.1 Einstellungen unter Manifestdatei die Administratorrechte aktiviert.

LTE5 15. Dez 2017 11:34

AW: Schattenkopien über einen Dienst erstellen
 
Dann wird der Service wohl schon als Administrator gestartet und es liegt nicht daran.
Bau sicherheitshalber mal eine simple Abfrage Is_Admin ein und lasse dir das Ergebnis ausgeben.

himitsu 15. Dez 2017 11:40

AW: Schattenkopien über einen Dienst erstellen
 
Du hast aber auch alle Rückgabewerte der verwendeten API ausgewertet?

Im Allgemeinen wird dir ja gesagt wo es hängt. :stupid:


PS: Auch ein Administrator muß nicht unbedingt Backup-Rechte besitzen, bzw. bei einem Dienst kommt es drauf an in welchem Kontext er ausgeführt wird und welche Rechte er dann besitzt.
Auch könnte er über das nötige Recht verfügen, aber es ist nicht aktiv.


nötiges Privileg: Backup and Restore

amigage 15. Dez 2017 12:56

AW: Schattenkopien über einen Dienst erstellen
 
Zur Vorsicht habe ich ein benutzerdefiniertes Manifest mit
Delphi-Quellcode:
<requestedExecutionLevel level="requireAdministrator"/>
eingebunden.
Hilft auch nichts.

Das Programm scheitert schon an der Initialisierung der Schattenkopie. Ich nutze das Delphi Interface von http://www.rathlev-home.de/sources/delphi.html
Und dort gibt er den Fehler bei "TVolumeShadowCopy.Initialize:VssBackupComponents. InitializeForBackup" aus.

Hat sonst noch jemand eine Idee? Es muss doch wohl möglich sein, das normale Programm mit Adminrechten auch als Service zum Laufen zu bekommen, oder?

LTE5 15. Dez 2017 12:59

AW: Schattenkopien über einen Dienst erstellen
 
Schattenkopien zu machen scheint mit Delphi echt ein hartes Pflaster zu sein.

Delphi.Narium 15. Dez 2017 13:05

AW: Schattenkopien über einen Dienst erstellen
 
Unter welchen Benutzerkonto läuft Dein Dienst denn?

Mal in der Diensteverwaltung nachgeschaut?
Hat das dort gewählte Konto die entsprechenden Rechte?

Mal geschaut, ob Dein Dienst mit dem gleichen Benutzerkonto läuft, wie der hier genannte Dienst "swprv"?

amigage 15. Dez 2017 13:14

AW: Schattenkopien über einen Dienst erstellen
 
Der Dienst läuft unter einem Benutzerkonto mit Adminrechten, also keine Einschränkungen.
Der Dienst swprv läuft unter dem "Lokalen Systemkonto", genau wie mein Dienst.

Was sich jedoch unterscheidet, ist im Register "Abhängigkeiten", dass der swprv Abhängigkeiten besitzt, mein Dienst aber nciht.
Da stellt sich die Frage, wie definiert man die Abhängigkeiten? :roll:

Delphi.Narium 15. Dez 2017 13:21

AW: Schattenkopien über einen Dienst erstellen
 
Gibt es denn Abhängigkeiten? Benötigt Dein Dienst zwingend das Laufen anderer Dienste?


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:48 Uhr.
Seite 1 von 2  1 2      

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