Win 10 Aufgabenplanung Programmstart als Trigger

Die Verzögerung des Skripts kannst du doch ganz einfach umgehen: Als erstes GTA mittels "start" Kommando starten und erst danach der Befehl zum Aufräumen.
Es gehen natürlich auch andere Kombinationen, der Schlüssel ist einfach nicht auf die fertige Ausführung zu warten.
 
Exakt.

Und man kann das Loeschen des Ordners auch in den Autostart des Nutzers packen.

BFF
 
  • Gefällt mir
Reaktionen: navi.
BFF schrieb:
Und man kann das Loeschen des Ordners auch in den Autostart des Nutzers packen.
Worum es mir hier halt geht, wenn irgendwann etliche Scripte auf diese Weise starten, habe ich beim Anmelden auch wieder Wartezeit, bis alles im Hintergrund abgeschlossen ist und der Rechner flüssig läuft. Daher lieber jetzt schon eine Möglichkeit finden, diese nur dann auszuführen, wenn sie wirklich gebraucht werden.
 
@Micha45 Erstmal Danke für dein Skript, funktioniert bei mir sogar durchschnittlich 1 sec. schneller als die Batch.
Sry falls ich etwas schwer von Begriff bin, bis jetzt ist der Stand, ich muss GTA über ein gesondertes Skript starten, weil GTA als Trigger nicht funktioniert, oder bietet dein Skript hier neue Möglichkeiten, die ich als Neuling nicht erkenne?

Micha45 schrieb:
Wie man in der Aufgabenplanung mittels Powershell Trigger erstellt und ausführt, ist hier beschrieben:
https://www.windowspro.de/script/register-scheduledtask-geplante-aufgaben-erstellen-powershell
Könnte man hier mittels Powershell, einen Tigger erstellen, der die Tasklist ausliest oder ähnliches, und dann prüft, ob GTA läuft? Oder sonst noch irgendwie zum Ziel kommen?
Gruß
Nilo
 
Zuletzt bearbeitet:
Ich versuche es mal zusammen zu fassen und zu erklaeren wie ich das machen wuerde per Batch.

Ein Script per Taskplaner nach Anmeldung verzoegert starten welches prueft ob im betreffendem Ordner Dateien sind, wenn ja loeschen, wenn nein halt nix und Ende. Per Taskplaner die nette Moeglichkeit benutzen das der Job wiederholt werden kann.

https://www.thewindowsclub.com/how-to-schedule-batch-file-run-automatically-windows-7

Der Script koennte zusaetzlich eine Abfrage haben nach laufendem Prozess von GTA, wenn GTA aktiv mache nix, wenn nicht aktiv loesche.

Ob das per Batch, Powershell, AutoIT oder wasimmer gescriptet wird ist wurscht.

Ich persoenlich wuerde AutoIT benutzen um das zu coden, eine EXE erzeugen und die per Autostart rennen lassen. Die EXE prueft alle X Minuten ob GTA rennt und/oder zu Loeschendes vorhanden ist und reagiert/tut dann das Entsprechende.

Nilo schrieb:
Worum es mir hier halt geht, wenn irgendwann etliche Scripte auf diese Weise starten, habe ich beim Anmelden auch wieder Wartezeit, bis alles im Hintergrund abgeschlossen ist und der Rechner flüssig läuft. Daher lieber jetzt schon eine Möglichkeit finden, diese nur dann auszuführen, wenn sie wirklich gebraucht werden.

Es waere genau ein Script.

Das Grundproblem ist, das GTA wohl nicht in das Ereignisprotokoll von Windows schreibt. Damit fehlt jede Moeglichkeit einfach dieses Ereignis auszulesen und entsprechende Aktionen darauf hin durchzufuehren. Zusaetzlich kommt hinzu, dass Dein Starten der Aufzeichnung von Videos rein zufaellig passiert. Um dann "per Ereignis", in diesem Fall GTA war an und hat Filmchen erzeugt, loesche die, zu reagieren ist etwas mehr wie ein einfaches Script.

Hast Du jemals "gemessen" wie lange es dauert bis der Ordner mit ein paar Aufzeichnungen geloescht ist?
Das koennen nur ein paar wenige Sekunden sein, wenn ueberhaupt. Und es ist auch vollkommen egal, im Sinne der von Dir genannten Verzoegerung, wann das Loeschen passiert. Es wird in jedem Fall eine Verzoegerung geben.

Pruefen ob Prozess laeuft mit PS.

https://social.technet.microsoft.co...hell-script-prozess-prfen?forum=powershell_de

BFF
 
  • Gefällt mir
Reaktionen: navi.
Versuch mal folgendes:
  1. PowerShell-Script erstellen, an einem Ort deiner Wahl, mit folgendem Inhalt:
    PowerShell:
    start-process "$env:ProgramFiles\Rockstar Games\Grand Theft Auto V\PlayGTAV.exe"
    Remove-Item "$([Environment]::GetFolderPath('MyDocuments'))\Rockstar Games\GTA V\videos\clips\*" -Recurse -Confirm:$false -Force
  2. Auf dem Desktop eine Verknüpfung via [Rechtsklick] -> Neu -> Verknüpfung anlegen mit folgendem Verknüpfungs-Pfad (Pfad zum Script bitte anpassen!):
    Code:
    powershell -NoProfile -ExecutionPolicy ByPass -File '<HierDerPfadZuDeinemPowerShellScript>'
  3. Vergib einen Namen deiner Wahl
  4. [Optional] Via Rechtsklick auf die Verknüpfung kannst du das Symbol ändern, indem du zu PlayGTAV.exe navigierst und die EXE auswählst.

Das ganze ist ungeprüft und nur anhand der bisher gebrachten Vorschläge erstellt.
Hab seit einer Weile kein GTA V mehr installiert. Wär aber echt mal wieder was ;)

Vorteil:
Es startet erst GTA V und während des Ladevorgangs wird dann der Inhalt (samt Unterordner; falls überhaupt vorhanden) gelöscht.
 
Zuletzt bearbeitet:
Hallo zusammen,
ich war beruflich etwas zu sehr eingebunden und melde mich deshalb erst jetzt wieder zu Wort.

Diese Sache interessiert mich und deshalb habe ich mir zwischendurch Gedanken gemacht und auch aktiv einige Dinge getestet, um eine möglichst sinnvolle Lösung für das "Problem" zu finden.

Wie von BFF bereits richtig angemerkt wurde, funktioniert das Ganze über die Aufgabenplanung nur bedingt.
Das Löschen der Clips kann man zwar über einen Trigger automatisieren, nur den Zeitpunkt exakt mit dem Start des Spiels in Einklang zu bringen und dann auch noch an bestimmte Bedingungen zu verknüpfen, ist wohl ein unmögliches Unterfangen.

Am besten wäre es vielleicht, wenn man das Löschen der besagten Clips erst nach Beendigung des Spiels einleiten würde. Dann hätte man keine Verzögerungen zum Start des Spiels.
Dazu müsste man, statt das Spiel direkt und auf konventionelle Weise zu starten, den Vorgang über ein kleines Tool einleiten, welches sich dann nach Spielstart in den Hintergrund verabschiedet und solange wartet, bis das Spiel beendet worden ist.
Unmittelbar danach erfolgt dann der Löschvorgang und das Tool beendet sich von selbst.

Da ich GTA V auch auf dem Rechner habe, konnte ich den Vorgang schon mal testen. Es funktioniert dem Anschein nach ganz gut, auch das Tool im Hintergrundprozess verursacht keinen wahrnehmbaren Performanceeinbruch während des aktiven Spiels.

Ich habe mal einen Screenshot von dem Tool gemacht. Es ist keine optische Schönheit und sehr schlicht gehalten. Aber das ist ja auch egal, es muss seinen Zweck erfüllen.:D
Wie auf dem Bild zu sehen, ist da noch eine zweite Checkbox unter dem Button.

Über die erste kann man festlegen, ob die clips vor dem Spielstart, oder erst nach Beendigung des Spiels gelöscht werden sollen.
Über die zweite Checkbox kann man festlegen, ob nach Beendigung des Spiels die vom Spiel im temporären Verzeichnis abgelegten "Cloud-Dateien gelöscht werden sollen, oder eben nicht.
Ich lasse die immer löschen, weil die leider nicht automatisch über das Spielprogramm gelöscht werden.
Wenn man aber nicht möchte, dass ein Tool im temporären Verzeichnis herum wurschteln soll, setzt man den Haken einfach nicht.

Das Setzen oder Entfernen der Haken zeigt sofort Wirkung und der Text daneben ändert sich dementsprechend.
Betätigt man dann den Button, verschwindet das Tool im Hintergrund und das Spiel wird über die Desktopverknüpfung gestartet.

Wenn das Tool fertiggestellt ist, dann stelle ich es hier in den Anhang.

(14.Dezember.2018)0.JPEG
(14.Dezember.2018)1.JPEG
 
Zuletzt bearbeitet von einem Moderator:
Ich habe auc
Micha45 schrieb:
Am besten wäre es vielleicht, wenn man das Löschen der besagten Clips erst nach Beendigung des Spiels einleiten würde. Dann hätte man keine Verzögerungen zum Start des Spiels.
Problem ist hier, dass ich das Spiel manchmal nicht ganz ordnungsgemäß schließe... Freut mich dass auch du Intresse hieran hast. Dein Tool scheint mir jedoch echt interessant, wo bekommt man das denn vlt. her?

Letztlich ist das alles mehr oder weniger nur Spielerei um den Dickkopf durchzusetzen und die perfekte Lösung gibt es wohl nicht. Aber ich bin sehr dankbar dass ihr so aktiv mit helft. Und wer weiß irgendwann ist sowas Mal wirklich nötig und richtig sinnvoll.

@DPXone bis jetzt habe ich alle hier genannten Skripte per Verknüpfung auf den Desktop mit GTA Icon gelegt. Aber auch deines werde ich auf Effektivität prüfen.
 
  • Gefällt mir
Reaktionen: Micha45
@Micha45
So schön ein kleines Tool auch seien mag, finde ich es hierbei doch etwas übertrieben.
Aber ich weiß den Spaß am Programmieren zu schätzen ;)

Um die Dateien erst im Nachgang zu löschen, kann man auch einfach wieder PowerShell verwenden und dem, in meinem in Post #26 vorgeschlagenen Script, einfach ein "-Wait " nach "Start-Process" anhängen:
PowerShell:
start-process "$env:ProgramFiles\Rockstar Games\Grand Theft Auto V\PlayGTAV.exe" -Wait
Remove-Item "$([Environment]::GetFolderPath('MyDocuments'))\Rockstar Games\GTA V\videos\clips\*" -Recurse -Confirm:$false -Force

Update/Korrektur:
WindowsStyle Hidden gehört natürlich nicht hinter den Start von GTA :rolleyes:, sondern in den Verknüpfungspfad:
Code:
powershell -NoProfile -ExecutionPolicy ByPass -WindowStyle Hidden -File '<HierDerPfadZuDeinemPowerShellScript>'
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Micha45
Hi,

Oder man macht es sich ganz einfach und killt die Dateien bei jedem Anmelden per Autostart oder Task.
Den Code hat der TE schon in seinem Post #1. ;)

BFF
 
  • Gefällt mir
Reaktionen: Micha45
BFF schrieb:
Hi,

Oder man macht es sich ganz einfach und killt die Dateien bei jedem Anmelden per Autostart oder Task.
Den Code hat der TE schon in seinem Post #1. ;)

BFF
Richtig ;)
Aber man muss immer davon ausgehen, dass manche Leute den Rechner nie Runterfahren, sondern nur in den Standby gehen.
Auf solche Eventualitäten kommt man allerdings nur, wenn man länger in der IT arbeitet und sich proaktiv alle, bisher nicht vorgekommenen, Situationen vorstellen kann.
 
  • Gefällt mir
Reaktionen: Micha45 und Nilo
BFF schrieb:
Hi,

Oder man macht es sich ganz einfach und killt die Dateien bei jedem Anmelden per Autostart oder Task.
Den Code hat der TE schon in seinem Post #1. ;)

BFF
Ja klar, aber wie gesagt, das schöne Problem ist ja eben, dies nur dann zu tun wenn es durch den Programmstart wirklich notwendig ist
 
  • Gefällt mir
Reaktionen: Micha45
Nilo schrieb:
Dein Tool scheint mir jedoch echt interessant, wo bekommt man das denn vlt. her?
Das Tool habe ich selbst erstellt. Das Powershell Script ist in eine sog. "Windows.Form" eingebunden.
Ist kein großes Ding, wenn man sich damit beschäftigt.:)

Ihr habt schon recht. Im Grunde kann man es über einen Zweizeiler in einer Batch oder PS lösen.
Ich bleibe aber trotzdem dran, weil es Spaß macht.:D

So, das kleine Helferlein ist fertig und befindet sich im Anhang dieses Beitrags. Einfach die Zip entpacken und das Tool "StartGTA.exe" ausführen.

1. Das Tool wurde mit PowerShell erstellt und dann in eine .exe konvertiert.
So braucht man sich bezüglich Powershell und die Ausführungsrichtlinien keine Gedanken machen.
2. Man muss im System über Adminrechte verfügen, um das Tool nutzen zu können.
Bei Löschvorgängen und dem Ausführen von Programmen ist das unumgänglich.
3. Nach dem Start ist die Voreinstellung zu sehen:
-Videoclips vorher löschen
-Tempdateien nicht löschen
Startet man über den Button das Spiel, werden vorhandene Videoclips gelöscht und parallel das Spiel gestartet.
Es sollte keine Verzögerung bezüglich des Spielstarts geben, da es zwei voneinander unabhängige Prozesse sind.
Nach dem Löschvorgang beendet sich das Tool automatisch.

WICHTIG:
Nachdem das Tool gestartet wurde, wird überprüft, in welchen Verzeichnissen GTA V installiert ist.
Die Standardverzeichnisse sind:
Hauptverzeichnis 32-Bit:
C:\Programme(x86)\Rockstar Games\Grand Theft Auto V\
Hauptverzeichnis 64-Bit:
C:\Programme\Rockstar Games\Grand Theft Auto V\

Dokumentenverzeichnis:
C:\Users\DeinName\Documents\Rockstar Games\GTA V

Befindet sich das Spiel nicht in den Standardverzeichnissen, erscheint jeweils ein Dialog, bei dem man die Verzeichnisse selbst auswählen kann.
Jeweils oben in der Titelleiste der Fenster ist ein Hinweis zu sehen, welcher Ordner am Ende der Auswahl stehen muss.
Hauptverzeichnis: \Grand Theft Auto V
Dokuverzeichnis: \GTA V
Bitte keinen der anderen Unterordner einbeziehen, da es sonst zu Fehlern kommt und der Löschvorgang fehlschlägt.

Diese Auswahl der Verzeichnisse muss man nur einmal über sich ergehen lassen.
Bei manueller Auswahl werden bis zu zwei Textdateien erstellt, in denen die ausgewählten Verzeichnisse
eingetragen werden.
Beim nächsten Start werden die Verzeichnisse aus diesen Textdateien entnommen.
Diese Textdateien müssen sich am selben Ort wie die StartGTA.exe befinden.

Viel Vergnügen.
 

Anhänge

Zuletzt bearbeitet von einem Moderator: (Ergänzung)
  • Gefällt mir
Reaktionen: DPXone und Nilo
Hallo,
erstmal Entschuldigung, aber ich konnte mich aufgrund einiger Hardware Probleme die ganze Woche nicht Melden. Nochmals Danke, an Alle, die sich hier soviel Mühe gemacht haben.

Micha45 schrieb:
Befindet sich das Spiel nicht in den Standardverzeichnissen, erscheint jeweils ein Dialog, bei dem man die Verzeichnisse selbst auswählen kann.
Jeweils oben in der Titelleiste der Fenster ist ein Hinweis zu sehen, welcher Ordner am Ende der Auswahl stehen muss.
Leider erscheint genau dieser Dialog bei mir nicht, und GTA startet nicht, da ich es in anderen Ordnern liegen habe. Ansonsten ist dein Programm echt cool, besonders die kleinen Auswahlkästchen am Anfang, die direkt die Beschreibung ändern. Aber auf meinem anderen System mit den Standartverzeichnissen "liebe" ich dieses kleine Tool. Dankeschön.
Wie auch immer für mich reicht jetzt ertsmal die "einfache" Powershell Lösung. Aber bei Gelegenheit werde ich dieses Problem noch ein bisschen weiter verfolgen. Ihr müsst hier aber erstmal nichts weiter für mich tun:)

VG und schöne baldige Feiertage!
 
@Nilo

Hallo Nilo,
freut mich, dass es dir gefällt und es soweit funktioniert.

Ich habe das Tool jetzt nochmal wegen des Problems mit dem Standardverzeichnis überarbeitet und jetzt sollte, falls die Spieldateien nicht in den Standardverzeichnissen vorliegen, der Dialog mit der Verzeichnisauswahl kommen.
Es befindet sich oben im Anhang meines letzten Beitrags.

Dir ebenfalls schöne Weihnachtsfeiertage.
 
  • Gefällt mir
Reaktionen: Nilo
Hast Du den Code auf Github?

BFF
 
@BFF
Nein, hab den Code nicht auf Github.
Bin ja kein Profi und mache solche kleine Tools nur für den "Hausgebrauch" und auch nur aus Spaß an der Sache.
 
Zurück
Oben