Jump to content

Ausführung eines Programms nach Aufruf in Aufgabe fehlerhaft


PeterSto

Recommended Posts

Hallo,

ich habe auf meinem Laptop ein Programm, mit dem ich vor dem Ausschalten des Gerätes verschiedene Dinge durchführe, es werden Backups gestartet, Statusmeldungen gesetzt usw. und dann das System heruntergefahren. Wenn ich dieses manuell starte, funktioniert das seit Jahren klaglos. Nun möchte ich dieselben Aktionen nach einer Aufnahme durchführen und dann das System herunterfahren. Also habe ich dieses Programm als Aufgabe hinterlegt und diese in im Timer entsprechend hinterlegt. Das Programm wird auch aufgerufen, aber es arbeitet die Sequenz nicht vollständig ab. Mir ist nicht klar warum.

Im Übersichtsbild der Aufgaben ist eine Checkbox "Erweiterte Privilegien ... aktiven Benutzerkonto" vorhanden, allerdings ist sie ausgegraut, also nicht eingabebereit.

Dasselbe in der Aufgabe selbst: "Im aktiven Benutzerkonto ausführen (erlaubt Benutzeroberfläche)" ist vorhanden aber grau.

Die Settings des MediaServer werden natürlich als Admin ausgeführt.

Wie bekomme ich diese Checkboxen eingabebereit bzw. wie kann sonst die vollständige Ausführung meines Programms erzwungen werden?

Danke um Kümmern!

VG Peter

Link to comment
vor einer Stunde schrieb PeterSto:

Das Programm wird auch aufgerufen, aber es arbeitet die Sequenz nicht vollständig ab. Mir ist nicht klar warum.

 

Wahrscheinlich fehlen Rechte. Bei welchem Teil der Sequenz bzw. welchen Teilen scheitert es?

 

Du kannst probieren, wie es aussieht, wenn du den DMS als Anwendung im Benutzerkonto laufen lässt: Stoppe ihn als Service und starte dann DVBVservice.exe mit einem Doppelklick, worauf ein Dummy-Fenster erscheint.

 

vor einer Stunde schrieb PeterSto:

Im Übersichtsbild der Aufgaben ist eine Checkbox "Erweiterte Privilegien ... aktiven Benutzerkonto" vorhanden, allerdings ist sie ausgegraut, also nicht eingabebereit.

Dasselbe in der Aufgabe selbst: "Im aktiven Benutzerkonto ausführen (erlaubt Benutzeroberfläche)" ist vorhanden aber grau.

 

Das soll dich daran hindern, den DMS in einen Zustand zu versetzen, in dem er nicht mehr als Service startet. Mehr dazu hier.

 

Link to comment

Hallo,

vielen Dank für die schnelle Antwort.

DMS läuft bereits wie in dem Link beschrieben mit Benutzerrname und Passwort mit Adminrechten. Das wurde mir früher bereits empfohlen (hatte aber nichts mit meinem derzeitigen Problem zu tun).

Zu Frage, welcher Zugriff klappt und welcher nicht: Es scheinen alle Schreib-/Lesezugriffe auf Files zu funktionieren, aber keine Aufrufe von weitreren Programmen. In meinem "Shutdown-Programm" werden sequentiell Backup-Aufgaben abgearbeitet, die werden nicht aufgerufen. Das "Programm" ist ein cmd, das mit BAT2EXE zu einer ausführbaren Datei kompiliert wurde. Old fashioned, aber wie gesagt in der normalen (nicht Admin)-Umgebung unter Windows 10 ohne Probleme lauffähig. Da werden alle Sequenzen abgearbeitet und dann mit shutdown.exe das Laptop heruntergefahren. Das klappt nach Aufruf durch den Timer auch, die weiteren Aufrufe aber nicht.

Ich versuche es mal zu illustrieren:

cmd bzw. daraus erzeugte exe arbeitet folgende Sequenzen ab:

Lese Datei   klappt

Schreibe Datei    klappt

rufe abc.exe auf      klappt nicht

rufe xyz.exe auf     klappt nicht

"shutdown.exe /s /t 0"   klappt

Dann werde ich als nächstes probieren, DMS nicht über den Dienst zu starten, sondern per Autostart und ausgeknipstem Dienst.

VG Peter

Link to comment
vor 29 Minuten schrieb PeterSto:

DMS läuft bereits wie in dem Link beschrieben mit Benutzerrname und Passwort mit Adminrechten. Das wurde mir früher bereits empfohlen (hatte aber nichts mit meinem derzeitigen Problem zu tun).

 

Deshalb kannst du die erweiterten Privilegien nicht einschalten, weil der DMS als Service dann nicht mehr starten würde. Das Recht, ein Programm im aktiven Benutzerkonto auszuführen und die Verwendung von Benutzername und Passwort für einen Service vertragen sich nicht. Warum das so ist, weiß ich auch nicht. Es kommt mir nicht gerade logisch vor.

 

vor 30 Minuten schrieb PeterSto:

rufe abc.exe auf      klappt nicht

rufe xyz.exe auf     klappt nicht

 

Was machen die Programme? Klappt der Aufruf nicht, oder werden sie aufgerufen, beenden sich dann aber wieder mit einem Fehler? Hast du schon probiert, die originale (nicht in eine EXE verwandelte) Batchdatei ausführen zu lassen?

 

Link to comment

Aah, jetzt habe ich die Kurve was du meinst...

Weil ich den Dienst bereits mit Name/Passwort laufen habe, kann ich diese Option nicht mehr aufrufen. Sorry für die lange Leitung.

Das habe ich seinerzeit eingerichtet, weil ich auf einem NAS speichern wollte. Das mache ich aber nicht mehr, insofern benötige diesen Aufruf dann ja eigentlich nicht mehr.

Also den Dienst wieder "normal" starten und dann die Option "...priviligiert..." ausprobieren. Ob das überhaupt mein Problem löst, kann ich nicht abschätzen, aber einen Versuch ist es wert.

Da ich momentan aufnehme, kann ich das nicht spontan ausprobieren. Ich werde aber die Tage machen und wenn das keinen Erfolg hat als nächstes DMS nicht per Dienst starten.

Mal sehen...

Zur Frage nach den Programmen: Es handelt sich um Aufrufe von FreeFileSync, das Ordner synchronisiert bzw. "backupt". Soweit ich sehen kann, werden die Programme gar nicht gestartet.

Ich melde mich mit dem Ergebnis.

Vielen Dank bis hierher!

VG Peter

Link to comment

Hallo,

ich habe den Dienst nun im lokalen Konto gestartet und dann in der Aufgabe die erweiterten Privilegien eingeschaltet. Damit läuft die Sequenz nun vollständig durch, das Problem ist also gelöst.

Vielen Dank für die schnelle und kompetente Hilfe!

VG Peter

Link to comment
vor 1 Stunde schrieb PeterSto:

ich habe den Dienst nun im lokalen Konto gestartet und dann in der Aufgabe die erweiterten Privilegien eingeschaltet.

 

Wenn der DMS als Anwendung im lokalen Konto läuft, haben die erweiterten Priviliegien keine Wirkung. Sie betreffen nur einen Service, der im Systemkonto läuft.

 

Link to comment

OK, dann ist der Effekt nicht durch die privilegierten Rechte beseitigt worden sondern durch das Starten des Dienstes im lokalen Konto. Ich werde das jetzt trotzdem so eingestellt lassen, never touch a running system...

Peter

Link to comment
vor 6 Minuten schrieb PeterSto:

Ich werde das jetzt trotzdem so eingestellt lassen

 

Du darfst es dann nur nicht vergessen. Wenn du den DMS wieder als Service startest, hat es Auswirkungen. Insbesondere wenn dem Service ein Benutzername und Passwort zugeordnet ist, wird er nicht mehr starten.

 

Link to comment

Zur Klarstellung, oder ich verstehe dich falsch mit "...als Service gestartet..." : Der DMS ist als Dienst (meinst du damit "Service"?) gestartet, u.z. ohne Name/Passwort und gesetzten erweiterten Privilegien (die ja lt. Deiner Aussage nichts bewirken).

In dieser Konstellation läuft alles wie erwartet.

Link to comment
vor 12 Stunden schrieb PeterSto:

Zur Klarstellung, oder ich verstehe dich falsch mit "...als Service gestartet..." : Der DMS ist als Dienst (meinst du damit "Service"?) gestartet, u.z. ohne Name/Passwort und gesetzten erweiterten Privilegien (die ja lt. Deiner Aussage nichts bewirken).

 

Ok, eine Klarstellung. Es gibt drei Möglichkeiten:

  1. Der DMS läuft als Service (Dienst) im Systemkonto ohne Benutzername/Passwort. Das ist die Standardkonfiguration nach der Installation des DMS. Vorteil: Er läuft auch (und kann aufnehmen), wenn kein Benutzer angemeldet ist. Er kann mit erweiterten Privilegien ausgestattet werden, die die Ausführung von Tasks (Programmen) im aktiven Benutzerkonto mit Benutzeroberfläche erlauben (wenn denn eines aktiv ist bzw. sich jemand am PC angemeldet hat). Nachteil: Windows 10 erlaubt ohne Authentifizierung mit Benutzername und Passwort keinen Zugriff auf Netzwerklaufwerke (NAS).
  2. Der DMS läuft als Service im Systemkonto und wird mit Benutzername/Passwort eines Benutzerkontos ausgestattet (was jedoch nicht heißt, dass er in dem entsprechenden Konto läuft!). Vorteil: Er läuft auch (und kann aufnehmen), wenn kein Benutzer angemeldet ist. Er kann sich bei Netzwerklaufwerken authentifizieren und auf sie zugreifen. Nachteil: Er kann nicht mit erweiterten Privilegien für die Ausführung von Tasks (Programmen) im aktiven Benutzerkonto mit Benutzeroberfläche konfiguriert werden. Tasks laufen zwangsläufig im Systemkonto, sie bleiben für den Benutzer unsichtbar.
  3. Der DMS läuft als Anwendung in einem Benutzerkonto (durch manuellen oder Auto-Start von DVBVservice.exe). Vorteil: Er darf ohne weitere Maßnahmen alles, was der Benutzer darf (Zugriff auf Netzwerklaufwerke, Ausführung von Tasks im Benutzerkonto). Eingestellte Privilegien sind ohne Wirkung, da sie nur für einen Service gelten. Nachteil: Er läuft nur, wenn der Benutzer angemeldet ist. Er kann nicht in Verzeichnisse schreiben, für die nur das System und Admins Schreibrechte haben. Dies betrifft insbesondere die automatische Erzeugung oder Aktualisierung der Dateien ffmpegprefs.ini und iphoneprefs.ini mit Presets für die Transkodierung in C:\Program Files (x86)\DVBViewer\config. Wenn die Dateien bereits existieren, spielt das keine Rolle mehr, außer eventuell nach Installation einer neueren Version. Wenn sie noch nicht existieren, muss man DVBVservice.exe mit Adminrechten starten und dann eine entsprechende Transkodierung anstoßen (WebM für die ffmpegprefs.ini, HLS für die iphoneprefs.ini), oder die Zugriffsrechte für das Verzeichnis ändern.

Vom DMS ausgeführte Tasks erben grundsätzlich seine Privilegien und Rechte. D.h. wenn eine Task auf ein NAS zugreifen will, muss der DMS das auch dürfen, sonst klappt es nicht. Klar jetzt?

 

Link to comment

Dann erklär doch mal dem staundenen Fachpersonal, wie Du meinst, Deinen Punkt #2 einrichten zu können?

 

ETWEDER SYSTEM oder Passwort, ein Mischmasch ist nicht vorgesehen.

 

Was geht ist, dass sich der Dienst nach Start selber "personifiziert", aber das kann man mit den vorhandenen Bordmitteln nicht einrichten. Da musst Du dem Anwender schon mitteilen, mit welchem speziellen Tool und wie er das aktivieren soll. In Deinen beliebten Tweaks kann ich nichts dergleichen entdecken.

 

Also, erleuchte uns Erhabener! Wo hast Du das Mysterium versteckt???

 

 

Link to comment

Ich danke euch nochmals allen für die Tipps und klinke mich aus den weiteren Diskussionen hier mal aus.

Ich habe doch noch einmal ausprobiert ob alles auch funktioiert wenn "erweiterte Privilegien" nicht gesetzt sind (das habe ich oben gelesen). Das ist nicht der Fall, jedenfalls werden die einzelnen exe´s nicht aufgerufen! Nachdem ich sie wieder gesetzt habe, ist alles wunderbar.

FAZIT: Bei mir muss der Dienst lokal laufen UND die "erweiterte Privilegien" müssen gesetzt sein!

 

VG Peter

Link to comment
vor einer Stunde schrieb PeterSto:

FAZIT: Bei mir muss der Dienst lokal laufen UND die "erweiterte Privilegien" müssen gesetzt sein!

 

Ist das Möglichkeit 1., 2. oder 3.? Ich hatte zunächst 3. verstanden, aber du meintest wahrscheinlich 1., richtig? Dann haben die Privilegien natürlich Wirkung. Sie stehen übrigens in der Registry in

 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DVBVRecorder -> RequiredPrivileges

 

und sind hier beschrieben. Notfalls kann man sie in der Registry setzen/entfernen, wenn man weiß, was man tut. Grundregel: Aus Sicherheitsgründen so viele wie nötig, so wenig wie möglich! Vor allem, wenn der DMS aus dem Internet erreichbar ist.

 

Der Benutzer, dessen Anmeldedaten verwendeten werden (oder halt LocalSystem), steht im Eintrag ObjectName.

 

Link to comment

Hi,

Es ist derzeit 1 (Dienst im lokalen Konto). Mit Privilegien geht's, ohne nicht. Wobei ich nicht in der registry unterwegs war um auf das notwendige Maß einzuschränken.

3 habe ich dann gar nicht mehr ausprobiert, weil ich mit dem lokalen Start des Dienstes Erfolg hatte. Wenn ich ein mögliches Sicherheitsthema abräumen kann, werde ich das wohl doch noch einmal machen. Aber nicht mehr heute...

Danke, Peter

Link to comment

Hallo,

der Vollständigkeit halber habe ich 3) doch noch einmal ausprobiert. Wenn ich den Dienst nicht am Laufen habe und dann DVBVservice.exe starte, bleibt der Bildschirm schwarz!

Wenn ich den Dienst automatisch oder auch manuell bei Bedarf gestartet habe, läuft alles wie zuvor.

Ich belasse es jetzt beim manuell gestarteten Dienst, damit geht alles was ich benötige.

Danke nocmals,

Peter

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...