Supportnet Computer
Planet of Tech

Supportnet / Forum / BS-Sonstige

prgramm über batch datei starten





Frage

Hallo zusammen, ich habe folgendes Problem: Ich will über eine batch-datei eine access-Datenbank öffnen. Dort läuft ein autoexec-Makro ab, welches am Ende die Datenbank wieder schließt. Allerdings bekomme ich dann über Windows die Meldung daß die Datei nicht gefunden werden konnte. Was ich nicht verstehen kann, schließlich wurde sie beim Öffnen ja auch gefunden. Wie gesagt, er macht die Datenbank auf, führt auch das Makro aus, aber beim Schließen kommt die Fehlermeldung. Hat jemand ne Idee woher das kommt. Hier der Text der Batch-Datei: net use S: \\Server\Freigabe passwort /user:abc /persistent:no start "" "S:\Acess-Datenbank" Vielen Dank

Antwort 1 von Flupo

Möglicherweise liegt das am falschen Arbeitsverzeichnis. Wechsle zwischen dem Verbinden des Netzlaufwerkes und dem Start der Datenbank noch mit "S:" und "cd Datenbankverzeichnis" in den richtigen Ordner.

Alternativ kannst du auch das Makro prüfen und dort anstelle relativer Pfadangaben mit absoluten Pfaden arbeiten.

Geht die Batch-Datei nach dem Start der Datenbank noch weiter?

Gruß Flupo

Antwort 2 von Alex73

Hallo Flupo

Danke erstmal für den Tip
Leider hat das Wechseln des Arbeitsverzeichnisses keinen Erfolg gebracht. Die Batch-Datei geht danach nicht weiter.
Sie verbindet nur ein Netzlaufwerk und startet dann die Datenbank. Diese wird dann über ein Makro in Access wieder geschlossen.
Ich versuch das ganze jetzt mal mit vbscript. Vielleicht hab ich da mehr Glück!

Antwort 3 von batti-batch

Hallo Alex73,


der Zugriff mit Passwort auf die Freigabe im Netzwerk in der Zeile

NET USE S: \\Server\Freigabe passwort /user:abc /persistent:no

birgt große Risiken in sich. Das Passwort steht im Klartext in der Batch, dadurch wird nichtautorisierten Zugriffsversuchen Tür und Tor geöffnet.

Zu Deinem eigentlichen Problem:
Es wird sicher helfen, wenn Du die Zeile

START "" "S:\Acess-Datenbank"

in

CMD /c START "" "S:\Acess-Datenbank"

änderst.


Viel Spaß beim Testen.

Herzliche Grüße
batti-batch

Antwort 4 von Alex73

Danke für den Tip.
Hat leider auch nicht geholfen. Aber ich habe es jetzt mit vbs gelöst. Hier der Code.

Set wshnet = CreateObject("WScript.Network")
WshNet.MapNetworkDrive "S:", "\\SERVER\Freigabe", false, "User", "Passwort"
Set obj_shell = Wscript.CreateObject("Wscript.shell")
obj_shell.Run ("msaccess.exe Datenbankt.mdb")

Ich hab ja nicht viel Plan davon, aber eigentlich macht das Skript doch auch nichts anderes, aber es läuft jetzt ohne Fehler. Von daher, man muß ja nicht alles verstehen :-)

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: