|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Есть таблица с именами компьютеров в локальной сети, нужно отправить выбранным сообщение. Пытаюсь командой msg ... soob = "Это тест!" stName = "cmd /c msg * /server: имя_компьютера """ & soob & """" i = ExecCmd(stName) If i <> 0 Then ' MsgBox "Произошла ошибка при выполнении команды:" & vbCrLf & _ stName, vbCritical, "Внешнее приложение" End If ... Получаю ошибку, i=1 Процедуру ExecCmd взяла здесь на форуме, уже успешно ею пользовалась для запуска приложений, а как запустить для msg не могу сообразить ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 12:53 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Попробовала еще так: Set objShell = CreateObject("WScript.Shell") i = objShell.Run("cmd /c msg * /server test", vbHide, True) If i = 0 Then MsgBox True Else MsgBox False End If Получаю False, сообщение не приходит. Может есть какой-то работающий способ отправлять сообщения? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 13:59 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Да Вы сперва хотя бы из командной строки сообщение отправьте, ё моё... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 14:03 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Akina, из командной строки прекрасно отправляются все буквы алфавита, в том числе ваше ё. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 14:28 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
ЛесноеОзероиз командной строки прекрасно отправляютсяВот именно такой командной строкой, что в коде показано? не верю! За параметрами следите... пробелы лишние не напихивайте - и будет Вам счастье... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 15:10 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Akina, да, именно такой командной строкой. Про "лишние пробелы" поподробнее, вы говорите загадками. Хотелось бы обещанного счастья, особенно если для этого достаточно сократить количество пробелов. Если не затруднит, можете привести пример работающего кода, отправляющего сообщения на компьютер в сети? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 15:32 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
ЛесноеОзероПро "лишние пробелы" поподробнее, вы говорите загадками. Посмотрите код в первом своём сообщении. Вторая строка. Цитирую, обернув тегом "SRC": Код: vbnet 1. 2.
Там между двоеточием и символом "и" присутствует пробел - видите его? А его там быть не должно. А в коде во втором сообщении Вы вообще сервер не указали. ЛесноеОзерода, именно такой командной строкой. В следующий раз после проверки в командной строке не пальцами набирайте код, а копипастите из окна компроцессора. Меньше шанс накосячить... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 15:40 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Akina, даже если вставить 10 пробелов после двоеточия перед именем компьютера, у меня все равно работает из командной строки. Что я делаю не так? А server без имени означает послать самому себе, попробуйте. А по существу вопроса ничего? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 16:33 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
ЛесноеОзеро, у меня так работает :) Код: vbnet 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 17:12 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
ЛесноеОзеродаже если вставить 10 пробелов после двоеточия перед именем компьютера, у меня все равно работает из командной строки. Что я делаю не так? Да неправду говорите, вот что. Если вставить хотя бы один пробел - то имя_компьютера будет интерпретировано не как имя компьютера назначения, а как начальные символы пересылаемого сообщения. ЛесноеОзероserver без имени означает послать самому себе, попробуйте Мне даже пробовать не надо - если указать, как во втором посте, просто server, без двоеточия, то msg запросит строку сообщения с консоли, после чего уйдёт в глубокий даун, который закончится сообщением типа "Ошибка 1707 при получении имен сеанса"... Так что по существу вопроса могу сообщить лишь одно - все Ваши проблемы от неаккуратности. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 17:28 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Вот первый вариант: ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 17:36 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
И вот второй: ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 17:37 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
AkinaИ вот второй: Попробуйте test взять в кавычки. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 17:50 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Легко... вот только не влияет. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 17:55 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
А у меня вот так: ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 18:00 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Ты тоже внимательностью явно не страдаешь. После звёздочки отсутствует пробел, посему значение */server было воспринято как имя сеанса, а все символы в нём после звёздочки игнорируются. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2016, 18:10 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
guest_rusimportЛесноеОзеро, у меня так работает :) Код: vbnet 1. 2. 3. 4. 5.
Пробовала вчера для понимания происходящего и вашу stName, и даже такую, еще проще Код: vbnet 1. 2.
и с кавычками, перед ""12345" ... и никак, не работает :( Уже не доверяя себе, сегодня скопировала ваш вариант - не работает. Окно access конвульсивно дергается, вроде как реагирует на вызов, и ничего не выводится на экран. Ну, почему??? Access 2010, Windows 7 Pro 64 ... у меня. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2016, 09:44 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Для обмена сообщениями необходимо разрешить службу MSG, поскольку по умолчанию она выключена. Для включения надо в каждом ПК который может/должен принимать сообщения внести изменения в реестр Windows, изменив параметр HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\AllowRemoteRPC на 1 . А потом перезагрузить БД для включения MSG. Возможно в 64-битной системе иной адрес в реестре. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2016, 09:55 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Akina, на данном этапе я была согласна на любую интерпретацию параметров msg - хоть что-то на экране получить, посланное из процедуры, пусть даже не такое, как ожидалось, было бы положительным результатом. Поэтому, по прежнему не понятно, отчего из командной строки сообщение приходит, а оно же скопированное в процедуру, нет. Даже совсем упрощенный вариант, в котором нет шансов проявить невнимательность "msg * 12345" не срабатывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2016, 09:56 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Блин, да чем вы там код набираете? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2016, 10:35 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
А меня так: ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2016, 10:56 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
xax_nv , проверьте, доступен ли msg.exe (установки PATH, права). Попробуйте указать полный путь с расширением. Ошибка времени исполнения 53 - это именно "файл не найден", т.е. либо его нет по путям, указанным в PATH (исходно он лежит в %WINDIR%\System32), либо недостаточно прав для его обнаружения в каталоге, либо он подменён (возможно, вышележащим по PATH одноимённым файлом) и пытается запустить дочерний процесс, а его модуль отсутствует по аналогичным причинам ("родной" msg.exe дочерних модулей не загружает). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2016, 11:04 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
msg.exe на месте. И из командной строки работает нормально. Не хочет именно из кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2016, 11:12 |
|
Отправка сообщений по локальной сети
|
|||
---|---|---|---|
#18+
Тогда запустите вот в таком виде: Код: vbnet 1.
и посмотрите, что показывается в окне компроцессора. Из него же пробуйте запуск без указания пути и ищите источник проблемы. Если у Вас другой путь в каталог системы - внесите соотв. корректировку. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2016, 11:16 |
|
|
start [/forum/topic.php?fid=45&msg=39225020&tid=1613626]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 139ms |
0 / 0 |