Jump to content
Dr. Dünnpfiff

Im Batch-Script auf ein Netzlaufwerk zugreifen

Recommended Posts

Hallo,

ich habe mir ein Batchscript geschrieben, mit dem ich automatisch das Programmverzeichnis (welches auch die Maildaten etc. enthält) von Mozilla Thunderbird vom Desktop-PC auf mein Notebook kopieren kann.

Kurzer Hintergrund: Beide Rechner mit Win XP Pro, das Programmverzeichnis von Thunderbird befindet sich am Desktop in einem freigegebenen Verzeichnis, das am Notebook jedes mal, wenn ich mich anmelde, automatisch als Netzlaufwerk gemountet wird.

Das Problem: Wenn ich das Script starte, bricht es den Kopiervorgang mit der Meldung "Ungültiger Laufwerksbuchstabe" ab. Wenn ich danach das Laufwer im Explorer öffne, wobei ich dessen Inhalt praktisch sofort zu sehen bekomme, und das Script danach nochmal ausführe, funktioniert es einwandfrei.

Scheinbar wird das Netzlaufwerk also erst gemountet, sobald ich mit einem "normalen" Programm darauf zugreife.

Frage: Wie bekomme ich es hin, dass das Script gleich beim ersten Anlauf auf das Laufwerk zugreifen kann?

Hier mal das kleine Script:

@echo off



:COPY

echo Kopieren...

mkdir "C:\Programme\thunderbird-copy_temp\"

xcopy "M:\Programme\Mozilla Thunderbird" "C:\Programme\thunderbird-copy_temp" /E /Q

if %ERRORLEVEL% EQU 0 goto BKP

echo Kann nicht von M: kopieren!

goto END



:BKP

echo Lösche altes Backup...

@if exist "C:\Programme\Mozilla Thinderbird (alt)" del "C:\Programme\Mozilla Thinderbird (alt)"

echo Erstelle neues Backup...

move "C:\Programme\Mozilla Thunderbird" "C:\Programme\Mozilla Thunderbird (alt)"

if %ERRORLEVEL% EQU 0 goto MOVE

echo Abgebrochen!

goto END



:MOVE

echo Fertigstellen...

move "C:\Programme\thunderbird-copy_temp" "C:\Programme\Mozilla Thunderbird"

if %ERRORLEVEL% EQU 0 goto END

echo Fehler beim Verschieben!

goto END





:END

mfg :)

Link to comment
Share on other sites

hi, ich bin zwar ein laie im batchen, aber kannst du nicht in deinem script (befindet sich auf dem PC nehme ich an) am Anfang eine simple batchdatei (zB. echo off, dir M:, exit) auf deinem notebook starten, in der kurz und albern auf das entsprechende laufwerk/Verzeichnis zugegriffen wird. Ich meine, um es quasi kurz zu aktivieren.

Haben notebooks nicht immer so komische "schalt hier mal ab, spar da mal energie- mechanismen. Vielleicht schläft das laufwerk noch bis zum ersten zugriff.

Link to comment
Share on other sites

Am besten mit "NET USE \\servername\freigabe kennwort /USER:benutzername" das Laufwerk verbinden. Das groß geschriebene ist Syntax des Befehles und das kleingeschriebene ist der benutzerabhängige Teil.

Du mußt dafür auch keinen Buchstaben zuweisen und kannst mit \\servername\freigabe\unterverzeichnis direkt drauf zu greifen. Nur auf keinen Fall unter einem Rechnernamen mit zwei verschiedenen Benutzern zugreifen. Das mag Windows überhaupt nicht.

Link to comment
Share on other sites

So, ich hab jetzt ne supereinfache Lösung gefunden, da hätt ich auch gleich drauf kommen können ^_^

Ich versuche einfach stur nochmal zu kopieren, falls der erste Versuch fehlschlägt; bisher klappt es so problemlost :D

Aber danke für die Antworten, NET USE kannte ich noch nicht, das könnte bei ner anderen Sache noch nützlich werden. Aber in dem Fall habe ich ja sowieso das Verzeichnis als Laufwerk verbunden, weil ich so auch auf andere Daten am Rechner zugreifen kann; für das Softwarearchiv oder die Videosammlung ist die Notebook-Platte mit 250GB dann doch zu "klein"^^

mfg

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.