Тема для обсуждения пакетных файлов.
Собственно, сделал маленький батник для упрощения повседневной эксплуатации функции net send. Вроде работает, но хотелось бы получить оценку адекватности такого решения. Цель была – максимально упросить для пользователя процесс отправки сообщения на заданный локальный компьютер.
@Echo off
SetLocal EnableExtensions EnableDelayedExpansion
copy con %tmp%\msg.tmp
If Exist %tmp%\msg.tmp (
For /F "Delims=" %%I In (%tmp%\msg.tmp) Do Set MSG=%%~I
NET SEND computer_name !MSG!
del %tmp%\msg.tmp
)
Если что, сильно не бейте – так как опыта ноль и вообще толком ничего не умею.
И еще вопрос, насчет команды For, она у меня обрабатывает только первую строку файла, она может обрабатывать весь файл?
1 апреля 2010 в 22:05
только настроить, если вообще возможно. инструкцию читайте.
1 апреля 2010 в 21:02
Понятно, спасибо.
Мессенджер чудит, помог рестарт службы. Хотя перезагрузка системы не помогала.
А насчёт роутера, это никак не обойти? То есть, с этим роутером я не смогу пользоваться этой функцией?
1 апреля 2010 в 9:02
1. бывает, гуглите на тему messenger.
2. роутер не пропускает igmp-пакеты наружу.
1 апреля 2010 в 7:04
Извиняюсь за вопросы не совсем по теме, но никак не могу найти решение.
Когда пытаюсь отправить себе net send сообщение через консоль или бат-файл выходит ошибка:
An error occurred while sending a message to имя_моего_компьютера.
The message alias could not be found on the network.
More help is available by typing NET HELPMSG 2273.
При этом, если выполнить «net send * Сообщение», сообщение отправляется и приходит всем в рабочей группе, в том числе и мне. И я пробовал отправлять сообщение через стороннюю программу (Network Assistant), тоже всё работает. Но «net send имя_моего_компьютера Сообщение» не работает.
Гуглить пробовал, но решение не нашёл.
И ещё вопрос, почему pathping не идет дальше роутера?
Tracing route to ya.ru [213.180.204.8]
over a maximum of 30 hops:
0имя_компьютера [192.168.1.2]
1my.router [192.168.1.1]
2***
1 марта 2010 в 17:01
У меня без кавычек работает =)
1 марта 2010 в 17:01
Дайте скриптов (По прикалыватся над друзьями)
А можно сделать бат , что бы он анти-вирь обходил ?
А можно ещё батником бомбить по почте например , без согласия подтверждения жертвы ?(Ну что бы типа как он письмо откроет , сразу происходит автозапуск) Без его согласия =))
Напишите пжл в личку =)
28 февраля 2010 в 0:01
ему не нравятся кавычи. можно, например, поизвращаться и избежать кавычек:
for %i in ("c:\program files\winrar\winrar.exe") do @start %~fsi
27 февраля 2010 в 23:04
start "c:\Program Files\WinRAR\WinRAR.exe"
не работает(
27 февраля 2010 в 0:02
start explorer
start explorer .
start explorer \
работает.
26 февраля 2010 в 21:05
не работает, если exe запускается с ключами, да и без ключей тоже
26 февраля 2010 в 14:00
используйте start.
26 февраля 2010 в 11:01
в принципе можно и ярлыком, а через батник никак?
25 февраля 2010 в 23:05
а ярлыки вам чем не угодили? используйте start.
25 февраля 2010 в 22:03
мне нужно чтобы он запускал приложение и после этого закрывался, а не ждал пока закроется запущенное приложение
25 февраля 2010 в 18:05
как выполнятся все инструкции, скрипт прекратит работу.
25 февраля 2010 в 12:02
Подскажите, пожалуйста, как выполнить закрытие батника
13 февраля 2010 в 17:01
Нашёл! Виноват – просмотрел параметр /p у set. Вот новый вариант:
@Echo off
set /P MSG="Message to computer_name: "
NET SEND computer_name %MSG%
13 февраля 2010 в 14:05
Чтобы можно было использовать команду copy con, что позволяет ввести текст с клавиатуры через консоль. То есть пользователю не нужно будет вводить никаких команд, только текст сообщения. Понимаю, что глупо, должно быть, но я эту команду знал, а как иначе такое реализовать – нет.
Потихоньку почитываю справку и примеры из интернета, но пока не нашел, как еще этого добиться.
А еще это пережиток предыдущей версии…
13 февраля 2010 в 14:05
используйте copy con con, как все нормальные люди. не нужен вам временный файл.
13 февраля 2010 в 13:02
зачем вам вообще временный файл?
13 февраля 2010 в 4:05
Вроде понял, Do выполняется для каждой строки отдельно и переменной поочередно присваивается первая, вторая и тд. строки. И в конце в ней остается последняя строка.
А в каком направлении упростить можно? Без временного файла обойтись, или принципиально иначе сделать?..
12 февраля 2010 в 9:03
1. не самое простое решение.
2. может.