42243
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: проверку от повторного запуска на одном компе- писать надо, или FSViewer.exe сам повторно не запустится (на одном компе)? | Программа будет запускаться на обоих компьютерах, главное чтобы не одновременно (1 энкземпляр на 2 компа в сети) Я думал что батник будет одинаков для обоих кроме путей к общим папкам. На своем компе проверка на повторный запуск в общем не обязательна, и так видно. Главное проверить не запущена ли программа на удаленном компьютере, и если запущена, то чтобы запуск ее на своем был не возможен. Добавлено: Проблема решена, подсказали на другом форуме. Может кому пригодится, цитирую: $Userlist - список пользователей, по 1 на строку. Например, так: Код: \\192.168.1.217 \\MORFEY \\BIBLIOTEKA \\MICROSOF-D58208 | $Sharename - Название общей шары на всех компах в сети $LocalShare - Путь к общей шаре на этом компе $Program - Нужная программа Если компьютер не в сети, то опрашивать его может до 20 секунд, чтобы не казалось, что скрипт завис, я добавил индикацию текущего адреса Код: @Echo Off Set $Userlist=userlist.txt Set $Sharename=Temp Set $LocalShare=D:\Temp Set $Program=C:\Windows\notepad.exe Set /A $isRunning=0 For /F "tokens=*" %%l In (%$Userlist%) Do ( Echo Checking... %%l\%$Sharename%\ If Exist %%l\%$Sharename%\isRunning.flag Set /A $isRunning=$isRunning+1 ) If Not %$isRunning%==0 (Exit) Else (Echo.>"%$LocalShare%\isRunning.flag") Echo Do not close this window Call "%$Program%" Del "%$LocalShare%\isRunning.flag" | |