Access-ODE-Entwicklung findet SYSTEM.MDW nicht!

Hallo,
Habe mit ein mit den ACCESS97-Entwicklertools (=ODE-Setupassistent) entwickeltes Programm auf meinem Computer installiert. Es funktioniert einwandfrei.

Wenn ich das gleiche Program auf einem Computer mit Netzwerk installiere, erhalte ich bei der Installation folgende Fehlermeldung:

„Zugriff auf C:\Windows\System\wininet.dll nicht möglich, da die Datei von anderen Programmen benutzt wird“

Nach 4 - 5 Versuchen endlich akzeptierte das Setup die Taste „IGNORIEREN“ und erstellte die Awendung fertig.

Nun wird beim Start der Anwendung folgende FEHLERMELDUNG angezeigt:

„Konnte die Datei „SYSTEM.MDW“ nicht finden. Diese Datei wird zum Start benötigt.“

Da ich die Anwendung mit dem ODE-Setup-Programm erstellt habe, verstehe ich nicht wieso ich obige Datei nun noch manuell einfügen soll!

Trotzdem habe ich die Datei SYSTEM.MDW in das Verzeichnis C:\WINDOWS\SYSTEM und auch in das Verzeichnis der Anwendung kopiert, aber ohne Erfolg.
Beim Start der Anwendung wird nach wie vor obige Fehlermeldung ausgegeben!!!

Ich muß noch hinzufügen, daß ich keine Benutzerrechte bzw. Paßwörter für die Anwendung vergeben habe.

Meine Frage:

  • Fügte das ODE-Setup die SYSTEM.MDW nicht automatisch ein, wenn sie benötigt wird?
  • Muß SYSTEM.MDW per Hand eingefügen?
  • Wenn ja, in welches Verzeichnis?
  • Wie kann ich das Problem lösen?

Bin für jeden Tip dankbar!

Mit freundlichen Grüßen

Franz Englbrecht

  • Fügte das ODE-Setup die SYSTEM.MDW
    nicht automatisch ein, wenn sie benötigt
    wird?
  • Muß SYSTEM.MDW per Hand eingefügen?
  • Wenn ja, in welches Verzeichnis?
  • Wie kann ich das Problem lösen?

Leider ist der Setup-Assistent nicht besonders gut geeignet, um netzwerkfähige Anwendungen zu erstellen. Die System.MDW sollte in (einem für alle Benutzer identischen) Netzwerkverzeichnis liegen. Leider installiert der Setup-Assistent die System.MDW ins Applikationsverzeichnis - wo sie nichts zu suchen hat! Da ist manuelle Nacharbeit (bzw. ein spezialisiertes Batch-Script, das im Rahmen des Setups ausgeführt wird) erforderlich.

Reinhard

hi Reinhard,

danke für Deinen Tip!

gruesse

Franz

Hallo Franz,

ich hatte/habe auch Probleme mit der System.mdw. Zur Lösung habe ich die Datei System.mdw in die Dateiliste des Setup-Assistenten eingefügt und als Zielordner $(Anwendungspfad) angegeben. Zusätzlich habe ich in der Verknüpfungsliste unter Befehlszeile die Kommandozeilenoption /wrkgrp $(Arbeitsgruppendatei) aufgenommen. Seit dem hatte ich bis vor kurzem keine Probleme mehr mit der system.mdw.

Aber dann kam es. Einer unserer Kunden hat unser Programm auf einem Rechner mit Access2000 installiert. Immer wenn er unsere Anwendung ausgeführt hat und anschließend sein Access startet bekommt er eine Meldung, daß sein Office sich neu installiert. Nach einigen Sekunden läuft dann aber wieder alles. Wenn er direkt auf eine mdb-Datei klickt startet sein Access mit der Dir bekannten Meldung.

Ich weiß nicht ob das was damit zu tun hat, daß ich die system.mdw in unser Anwendungsverzeichnis auf den PCs meiner Kunden installiere. Reinhard meint ja, daß sie da nicht hingehört. Ich weiß allerdings nicht, was passiert, wenn ich die system.mdw ins Windows-Systemverzeichnis installiere und da schon eine existiert. Vielleicht hängt es auch mit der Kombination Access97 und Access2000 auf dem selben PC zusammen?

Ich vermute Reinhard liest diesen Artikel auch. Vielleicht weiß er ja noch was dazu.

Gruß
Harald

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ich weiß nicht ob das was damit zu tun
hat, daß ich die system.mdw in unser
Anwendungsverzeichnis auf den PCs meiner
Kunden installiere. Reinhard meint ja,
daß sie da nicht hingehört. Ich weiß
allerdings nicht, was passiert, wenn ich
die system.mdw ins
Windows-Systemverzeichnis installiere und
da schon eine existiert. Vielleicht hängt
es auch mit der Kombination Access97 und
Access2000 auf dem selben PC zusammen?

Die SYSTEM.MDW gehört im Netzwerkbetrieb auch nicht ins Windows-Verzeichnis oder Windows-Systemverzeichnis - sie sollte überhaupt in keinem lokalen Verzeichnis liegen. In der SYSTEM.MDW werden die Arbeitsgruppenkonten geführt - wenn da jeder Benutzer seine eigene System.MDW hat, kann man keine systemweiten Berechtigungen vergeben oder ändern und hebelt auch letztendlich den ganzen Zugriffsschutz aus. (Darüber hinaus ist es auch wichtig, eine _eigene_ SYSTEM.MDW anzulegen und nicht etwa die mit Access mitgelieferte zu nehmen!)

Also: Die System.MDW gehört in ein Netzwerkverzeichnis. (Am besten in das gleiche, in der sich schon die Backend-Datenbank befindet - wobei wir dann beim Thema „Auftrennen der Datenbank“ wären…)

Reinhard

Die SYSTEM.MDW gehört im Netzwerkbetrieb
auch nicht ins Windows-Verzeichnis oder
Windows-Systemverzeichnis - sie sollte
überhaupt in keinem lokalen Verzeichnis
liegen

Ist soweit klar. Aber wohin mit der SYSTEM.MDW, bei einem Einzelplatz-Rechner. Im Windows-Systemverzeichnis existiert ja schon eine, wenn der Anwender bereits Access auf seinem Rechner installiert hat. Oder etwa nicht? Die kann man doch nicht so einfach übermangeln (wie Du mal so schön gesagt hast), ohne die Einstellungen, die von Access evtl. bisher hierin schon gemacht wurden, zu löschen.

Harald

Ist soweit klar. Aber wohin mit der
SYSTEM.MDW, bei einem
Einzelplatz-Rechner. Im
Windows-Systemverzeichnis existiert ja
schon eine, wenn der Anwender bereits
Access auf seinem Rechner installiert
hat. Oder etwa nicht? Die kann man doch
nicht so einfach übermangeln (wie Du mal
so schön gesagt hast), ohne die
Einstellungen, die von Access evtl.
bisher hierin schon gemacht wurden, zu
löschen.

Im Einzelplatzbetrieb sollte die SYSTEM.MDW im Anwendungsverzeichnis liegen. (Vorausgesetzt, man braucht eine eigene SYSTEM.MDW, d.h., man hat eigene Zugriffsrechte usw. definiert).

Reinhard

Hallo Franz,

ich habe das Problem damit gelöst, daß ich die System.mdw einfach mit dem MS Access Arbeitsgruppen Administrator in das gewünschte Ziel verschoben habe. Dieser Administrator findet man unter Microsoft Office. Nach dem verschieben müßte es keine Probleme mehr geben.

Gruß
Torben

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]