Ich suche eine Möglichkeit, ein Programm nach Zeitablauf löschen zu können.
Der Script soll also das von mir jeweils eingestellte Datum im Script mit dem Datum im PC vergleichen und entweder die Startdatei meines Programms, also eine andere EXE ausführen oder eben dieses Programm oder Teile des Verzeichnisses oder Dateien daraus oder alles daraus nicht mehr starten sondern löschen.
Es muss alles so sein, dass ich das selbst in der BAT-Datei jeweils ändere und so jahrelang anpassen kann. Wenn man den Script verstanden hat, geht das ja.
Es muss auch so sein, das ganz gleich wo derjenige das Programm hinspielt, auf C, auf D oder in andere Unterverzeichnisse, nicht durch falsche Verzeichnisangaben der Script das Tool nicht findet.
Grüße
Es wird also der EXE des hauptprogramms diese BATCH davorgeschaltet, welche als EXE umgewandelt wird und so die Programmexe startet.
Gesuchte Problemlösung: Da wir in unserem Programm keine "Trial"-Begrenzung haben, wäre das auf die Weise nachzuholen, um zu langes nutzen zu vermeiden. Es ist ein einfaches Chatsystem, wo man leider unbequeme Fremde nicht blocken kann, sie sich also immer und jahrelang einbuchen können, wenn man sie einmal mit ins System der Gruppe hinzunimmt. So kann man ihnen erst mal einen Monat Testzeitraum geben und danach zerrinnt einfach der Account und alles ist erledigt. Allen anderen neuen gibt man später eine modernisiertere oder datumsverlängerte Version. Das ganze soll natürlich ohne angezeigte Fenster ablaufen.
Ich denke mal man braucht eine "Wenn/Dann" -verschaltung, wohl mit IF oder ELSE , START und DEL
https://de.wikibooks...g/_Druckversion
Vielleicht hat da jemand Ahnung.
######################
Meine ersten Versuche als reine Theorie: (aktualisiere ich)
REM Ist das Datum kleiner (LSS), damit jünger, bleibt noch Nutzungszeit, starten der EXE
REM Ist das Datum größer (GTR), damit älter, ist die Nutzungszeit überschritten und die Löschung soll passieren
REM Ist das Datum (des PC) kleiner (LSS) als das was hier voreingestellt ist, gehe zu „WAHR“
IF "%date%" LSS "11.11.2019" GOTO WAHR
REM hier landet man, wenn der if-Ausdruck nicht WAHR ist, also falsch ist
GOTO WEITER
:WAHR
REM hier landet man, wenn der if-Ausdruck wahr ist
REM Nach DEL muss das Verzeichnis oder die zu löschenden Dateien rein
DEL …
REM Jetzt wird der if Zweig verlassen
GOTO WEITER
:WEITER
REM hier soll wenn das Datum nicht überschritten ist, die normale Programmexe gestartet werden und somit nichts gelöscht werden
START (datei)
##################################################
Der erste Erfolg:
@ECHO off
REM Befehlszeilen durch „off“ unsichtbar machen, da sie sonst angezeigt werden
REM 6 „Zeichen“ weggelassen und dann 4 „Stellen“ zur Weiterverarbeitung ausgewählt = also 2019 =Jahr TT.MM.JJJJ
set DatumJ1=%date:~6,4%
REM 3 „Zeichen“ weggelassen und dann 2 „Stellen“ zur Weiterverarbeitung ausgewählt = also 04 =Monat TT.MM.JJJJ
set DatumM1=%date:~3,2%
REM 0 „Zeichen“ weggelassen und dann 2 „Stellen“ zur Weiterverarbeitung ausgewählt = also 28 =Tag TT.MM.JJJJ
set DatumT1=%date:~0,2%
REM Nun das Datum wird über die drei separat errechneten Stücken umgedreht angeordnet, dass es eine summerische Zahl wird, die man auch richtiger subtrahieren kann, wenn das Jahr vorn erscheint - das aktuelle PC-Datum erscheint, nur anders geschrieben
set Datum-PC=%DatumJ1%%DatumM1%%DatumT1%
REM Da ich deine Datei nicht habe, das 2. Datum per einfacher SET Zuweisung
set "Ablaufdatum=20190801"
REM Hiermit wird nun das errechnete Gebilde richtig zusammengefügt angezeigt
ECHO %Datum-PC%
ECHO %Ablaufdatum%
REM alles anhalten bis Tastendruck
PAUSE
Es erscheint
20190428
20190801
Angezeigt werden die beiden zahlen, die man nun vergleichen, verrechnen kann, womit man danach die anderen Aktionen per Zuweisung befehligt.
######################
Der Anreiz kam von dem WEB-Beispiel:
@echo off
IF "%date%" LSS "Bastie" GOTO WAHR
REM hier landet man wenn der if-Ausdruck falsch ist
GOTO WEITER
:WAHR
REM hier landet man wenn der if-Ausdruck wahr ist
echo Willkommen Zuhause
REM Jetzt wird der if Zweig verlassen
GOTO WEITER
:WEITER
echo.Have a nice Day!
###############################################
Hat jemand eine andere alternative Programmiersprache?
Die ich vor allem genau so einfach erzeugen und schreiben kann?
Dieser Beitrag wurde von Carmen 15 bearbeitet: 28. April 2019 - 16:03