Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Win11 boykottiert Batchdateien :-(

Begonnen von Doming, November 12, 2025, 06:55:59

⏪ vorheriges - nächstes ⏩

Doming

Hallo,

ja, zugegeben, der Titel ist etwas populistisch, aber vielleicht habt Ihr ja eine Lösung.

Die von mir erstellten Datenbanken werden planmäßig über eine Batchdatei aufgerufen.
Darin wird zuerst das Frontend von einem Netzlaufwerk auf den lokalen Rechner kopiert und dann dort gestartet. So ist es für mich einfacher, Änderungen unter den Anwendern zu verteilen.
Weiterhin kopiert die Batch auch eine Verknüpfung (auf sich selbst) auf den Desktop des Rechners, damit sie bequem von dort aus gestartet wird.

Nun war ich anhand einer Logdatei darüber verwundert, dass die neuste Version nicht auf jedem Rechner läuft. Als ich einem der Anwender über die Schulter gesehen habe, konnte ich feststellen, dass sie nicht, wie früher, vom Desktop aus starten, sondern über die ,,Empfohlen"-Funktion von Win11. Letztere listet auf, welche Programme zuletzt auf dem Rechner gestartet wurden (Druck auf die Windows-Taste).
So wird natürlich direkt auf das lokale FrontEnd zugegriffen, ohne dass irgendwas vorher kopiert wurde.

Mir will gerade nicht einfallen, wie ich die Funktion der Batchdatei in meine Datenbank eingebaut bekomme. Klar kann ich mit VBA auch Dateien kopieren, aber leider ja nicht sich selbst...

Habt Ihr da Ideen?

Gruß
 Doming

Doming

...wenn ich so darüber nachdenke... man könnte von Access aus eine Batchdatei starten und sich selbst dann beenden, die Batchdatei kopiert wie bisher dann die neue Version und startet neu... möglicherweise mit einem Wartetimer, damit Access Zeit hat, sich zu beenden...

Damit das nicht in einer Endlosschleife ausartet, könnte man eine NullDatei im Netzlaufwerk (oder besser in einer Tabelle) platzieren, die dann die Versionsnummer beinhaltet und bei Differenz den Update-Prozess in Access in Gang setzt.

Bitsqueezer

Hallo,

Du könntest auch einfach eine Versionsnummer in einer lokalen Tabelle speichern und mit einer Versionsnummer auf dem Server vergleichen.
Paßt es nicht, kannst Du den User darauf hinweisen, den Desktop-Link zu verwenden bzw. Access kann diesen auch neu erstellen, falls er fehlt.

Das erzieht die User gleich, immer den richtigen Weg zu benutzen.

Gruß

Christian

Doming

User erziehen wäre eine schöne Idee, allerdings sitze da einige am Rechner, die so gar keine Lust auf Computer haben und nur das Nötigste machen, weil sie dienstlich dazu verpflichtet sind. Und um nicht gegen Windmühlen anzukämpfen, automatisiere ich die Geschichte nach Möglichkeit.

MzKlMu

Hallo,
Batchdateien gehören zu den ausführbaren Dateien. Da sollte man auch auf die Sicherheitseinstellungen der Rechner achten.
Gruß Klaus

Bitsqueezer

Hallo,

ich will's mal so sagen: Wenn sich die Anwendung beendet, wenn sie nicht in der richtigen Version läuft, erledigt sich das beim User von ganz allein.

Darüber hinaus ist es auch ein Sicherheitsfeature, weil nicht falsche Frontends mit neueren Backends arbeiten, was problematisch sein kann.

Ich würde den Versionscheck sogar bei jedem Öffnen eines Formulares/Berichts mit einbauen, weil Access das Feature hat, daß man ein Formular/einen Bericht per Drag&Drop auf den Desktop ziehen und damit jede Startfunktion aushebeln kann, weil Access bei Doppelklick auf so einen Link das Formular/den Bericht direkt öffnet, ohne Autoexec, ohne Startformular.

Gruß

Christian