W dniu 2013-09-13 20:45, Grzegorz Niemirowski pisze:
Irokez <no.email@wp.pl> napisał(a):
Witam
Taki oto problem.
Pisze sobie skrypt .bat, jest mapowanie udziału sieciowego jako dysk,
potem kopiowanie plików na inny udział sieciowy i na końcu zwalniam
zasób sieciowy przez "net use X: /delete /Y"
No i jest problem. Wystarczy wejść podczas tego kopiowania
eksploratorem w tego X aby obejrzeć zawartość i wyjść z niego
zamykając go potem całkiem aby było niemożliwym usunięcie tego
udziału przez tą komendę. Wywala komunikat że inny proces używa tego
zasobu i kupa.
Z eksploratora mogę prawoklikiem, potwierdzam że chcę usunąć mimo
wszystko i już.
Jak to zrobić aby skrypt to wyciął bez względu na wszystko?
Wklej źródło skryptu oraz dokładny komunikat błędu.
O kurde, dopiero po 22-gim tam będę. W domu nie mam co mapować żeby błąd
zacytować, fragment:
net use Y: \\192.168.20.123\Folder_A
if NOT %errorlevel% == 0 goto END
move /Y Y:\pliki\*.* T:\kopia\
:END
net use Y: /delete /yes
W każdym razie zwykły plik wsadowy, mapuje dysk, kopiuje stąd pliki
gdzie indziej i odmapowuje. Mogę to wpisać "z palca" w cmd i jest
dokładnie taki sam efekt.
Działa idealnie za każdym razem... ale tylko i wyłącznie do momentu
kiedy nie wejdę eksploratorem do za-mapowanego udziału w trakcie
kopiowania plików. Nie jest w stanie wtedy skasować udziału komendą [net
use Y: /delete /yes]. W treści idzie to jakoś tak, że urządzenie jest
zajęte przez aktywny proces, aby dowiedzieć się więcej wpisz komendę
help z 4 cyfrowym kodem błędu.
Rozumiem jakby się położyło gdy byłem w tym katalogu, ale dostaje
komunikat że nie może być usunięte ponieważ jest zajęte przez inny
proces gdy z niego wyjdę i zamknę eksploratora. W eksploratorze
usunięcie udziału prawoklikiem to najpierw komunikat, że jest używany i
czy na pewno.
Zapomniałem dopisać, że to Windows XP.
Mam tam fragmencik też z powershell (kopiowanie plików po drzewie
podkatalogów) to może nim jakoś mapować i usuwać dysk?
--
Irokez
|