wir führen ein Major Upgrade auf eine Vorgängerversion durch.
Bei dem Zielsystem handelt es sich um einen Terminalserver.
Folgender Ablauf:
Der Installer ermittelt komischerweise während des CostFinalize, das die MDB die installiert ist eine neuere Version hat als die zu installierende mdb. Da eine Access mdb keine Version hat ist das schon recht merkwürdig. Eigentlich müsste der Installer feststellen, dass die installierte mdb ein älteres Datum hat als die zu installierende, das tut er aber nicht. Während des RemoveFiles Prozess wird erkannt das die mdb exlusiv im Zugriff ist, da die Anwendung auf einer anderen Terminalserver Session noch geöffnet ist. Die Anwendung wird geschlossen, die mdb liegt frei, ein klick auf wiederholen in bei der Installation und weiter geht’s. Am Ende der Installation ist die neue mdb aber nicht da, da die alte mdb als zu entfernen Installed(local) Action(absend) markiert war. Die neue mdb wird nicht hinkopiert, weil im CostFinalize ermittelt wurde, das eine neuere Version installiert ist.
Das alles passiert aber komischerweise nur wenn die mdb während der Installation im Zugriff liegt, ist die mdb von Installationsbeginn an freigelegt, dann läuft auch die Installation sauber ab, und die mdb wird ersetzt.
Hat einer dazu eine Idee?
Edited by ali, 24 November 2006 - 14:15.