PDA

Vollständige Version anzeigen : über Batch Versionen vergleichen ggf. aktualisieren


Afk009
02.07.2008, 10:08
Kann miur jemand helfen mit einer Batch Datei?
Hab diese jetzt so, dass die beim Starten einfach die MDE Datei vom Server auf Local kopiert und dann Local gestartet.

@echo off
copy \\ueeb1p001\Projektverfolgung\Prio.mde H:\Prio.mde /y
start "C:\Programme\Microsoft Office\Office10\MSACCESS.EXE" "H:\Prio.mde" /runtime

jetzt würde ich gern so haben, dass diese Datei beim Starten nicht gleich kopiert wird, sondern erst die Versionsnummer der XXX.ini Datei überprüft?

Folgendeweise habe ich im Sinn.

@echo off
Prüfen ob Datei XXX.Ini local exestiert H:\XXX.ini
Prüfen ob Datei H:\Prio.mde local exestiert
Wenn nicht, dann beide Dateien vom Server kopieren
\\Test\Projektverfolgung\

Wenn beide Dateien local exestieren, dann die Versionen der ini Dateien miteinander vergleichen (Dateiinhalt Vers. 1.0.0) und wenn die ini auf dem Server höher ist, als local dann die ini und mde Dateien vom Server laden und mit localen ersetzten.

Danke im Voraus,
Gruß
Iggy

Joachim Hofmann
02.07.2008, 12:32
Hallo,

Hat deine ini-Datei einen spezielle Zeile, wo die Version drin steht, die man dann also auswerten müßte?

Oder reicht es vielleicht, zu prüfen, ob eine Datei neueren Datums als die andere ist?

Prüfen, ob eine Datei existiert und falls nicht, kopieren:
if not exist Ziel copy Quelle Ziel

Prüfen ob die Quelldatei neuer ist, falls ja, kopieren:
xcopy Quelle Ziel /d

Afk009
02.07.2008, 12:46
konnte das jetzt folgedermaßen klären

@echo off
if not exist H:\Prio.mde>nul copy \\ueeb1p001\Projektverfolgung\Prio.mde H:\Prio.mde /y
if not exist H:\Configvers.ini>nul copy \\ueeb1p001\Projektverfolgung\H:\Configvers.ini H:\Configvers.ini /y

:Prio Version prüfen
fc /i H:\Configvers.ini \\ueeb1p001\Projektverfolgung\Configvers.ini
if %errorlevel% ==1 goto import
if %errorlevel% ==0 goto end

:import
copy \\ueeb1p001\Projektverfolgung\Prio.mde H:\Prio.mde
copy \\ueeb1p001\Projektverfolgung\Configvers.ini H:\Configvers.ini

:end
start "C:\Programme\Microsoft Office\Office10\MSACCESS.EXE" "H:\Prio.mde" /runtime

Joachim Hofmann
02.07.2008, 16:37
Falls die Configvers.ini auf der Quelle theoretisch älter sein sollte als die Zieldatei, würde sie so auch kopiert werden.