06.09.16 — 16:33
Добрый день господа и дамы.
Прошу помочь в решении сей проблемы. Есть такой код:
Попытка
wshshell=Новый COMОбъект(«WScript.shell»);
wshshell.run(«telnet 192.168.1.2 3312»,2,0);
Сообщить(«Команду выполнил»);
Исключение
Сообщить(«Не удалось по причине: «+ОписаниеОшибки());
КонецПопытки;
Вылетает с ошибкой : Ошибка при вызове метода контекста (Run): Произошла исключительная ситуация (0x80070002)
Если в место telnet ввожу ping и убираю порт или просто ввожу notepad, например, то все работает. В чем может быть дело?
1 — 06.09.16 — 16:35
errorlookup выдает что 0x80070002 — «Не удается найти указанный файл».
2 — 06.09.16 — 16:36
А просто из командной строки работает?
А не вин7 и выше утебя ли?
3 — 06.09.16 — 16:37
Возможно, телнета нет. Возможно, надо указать полный путь. Возможно, не хватает прав на запуск телнета. Возможно, надо запускать как
cmd.exe /c telnet ….
или
runas
4 — 06.09.16 — 16:37
(0) Возможно клиентская часть telnet не установлена.
5 — 06.09.16 — 16:38
(0) телнетика по умолчанию в виндах нет, ставить надо
6 — 06.09.16 — 16:46
Винда -Windows Server2012
Телнета не было, но подключил. Из командной строки работает. (3) — Сейчас проверю.
7 — 06.09.16 — 16:54
Весьма странно.
wshshell.run(«cmd.exe /c telnet 192.168.1.2 3312»,2,0);
Срабатывает, но ничего не происходит. То -есть сообщение «Команду выполнил» есть, а окна открытого с телнетом нет.
8 — 06.09.16 — 17:00
ну, cmd стартует, о чем shell и говорит. А вот запустить телнет cmd не может. Права проверь. Если ты командную строку запускаешь через win+R, она запускается под админ-правами, потому и может телнет запустить. А 1С не может.
9 — 06.09.16 — 17:01
(7) там была такая фишка, что wshell.run консольные приложения прятать умеет. Какой-то ключ у команды за это отвечает, могу даже посмотреть какой
10 — 06.09.16 — 17:03
(8) » Если ты командную строку запускаешь через win+R, она запускается под админ-правами»
С чего бы?
11 — 06.09.16 — 17:07
(10)
Я нажимаю Win+R и там русским языком написано:
«Это задание будет выполнено с правами администратора».
12 — 06.09.16 — 17:07
Set Cmd = CreateObject(«WScript.Shell»)
Cmd.Run «telnet.exe», 1, True
у меня вот так простартовывает, открывает окно. Win10.
13 — 06.09.16 — 17:07
+(11)
не «выполнено», а «создано», извиняюсь.
14 — 06.09.16 — 17:08
(11) У меня вин7 — и такой надписи нет
15 — 06.09.16 — 17:08
(9) Я действительно использую этот ключ. Но команду пинг он у меня скрывает просто свернув. А тут ничего нет. Хотя сейчас проверю, выключив вообще этот ключ.
Строку я реально через win+R открываю.
16 — 06.09.16 — 17:09
(15) -> (12). Только что проверил.
17 — 06.09.16 — 17:13
У меня (12) не стартует(
Все та же ошибка.
Пойду права смотреть.
18 — 06.09.16 — 17:14
(14)
Всё может быть…
19 — 06.09.16 — 18:15
TelNet где лежит ?
Возможно, что он должен лежать в директории, которая прописана в пути.
Не забываем, что telnet в Windows после Xp ставится как дополнительная программа.
20 — 06.09.16 — 19:01
Telnet лежал на диске С в папке system32. И это был еще один подводный камень.
Для запуска телнета помимо установки прав, пришлось перенести все его файлы в доступную папку. т.к. system32 командная строка из 1С (без прав) не видела.
Всем огромное спасибо!
С вашей помощью все получилось.
21 — 07.09.16 — 07:48
(20) в 2012 все настолько круто с правами, что даже нельзя запускать утилиты командной строки, находящиеся по PATH?
22 — 07.09.16 — 07:49
вроде даже в никсах под обычным пользователем телнетом по умолчанию можно пользоваться спокойно…
23 — 07.09.16 — 18:10
(21) Видимо настолько.
А я пришел к новому тупику.
Я запускал telnet и командами типа:
wshshell.SendKeys(«сообщенька»);
засылал различные сообщеньки. Но обнаружил, что при смене раскладки клавиатуры ничего не работает. То-есть SendKeys эмулирует нажатие на кнопку и чувствительна к раскладке.
Как это можно обойти? Знает кто-нибудь?
24 — 07.09.16 — 18:15
Реально вообще адекватно управлять телнетиной из 1С?
25 — 07.09.16 — 18:21
Или подскажите, как можно передать на определенный порт сервера простые строки?
Например, отправить на 192.168.1.2 3312 строку «привет» ?
26 — 07.09.16 — 18:56
ничего, кроме как создать временный файл с расширением cmd и с содержимым
echo привет|telnet args
и запуска этого файла — мне в голову не приходит.
Почитай справку к телнету, может он умеет из файла текст брать?
27 — 07.09.16 — 19:04
(25) ВК какую-нибудь присмотреть для сокетов. Или свою написать. Как я понял, с произвольным сетевым взаимодействием (кроме почты и web) продукты 1С пока не особенно дружат.
28 — 07.09.16 — 20:08
(25) Телнет — консольный. Его через SendKey управлять сложно.
Можно запускать через потоки и давать команды.
29 — 07.09.16 — 20:15
Большое спасибо за ваши предложенные варианты. Буду пробовать все. О результате отпишусь.
30 — 07.09.16 — 20:15
(26) Где-то читал, что умеет. Проверю на практике.
31 — 07.09.16 — 20:36
32 — 08.09.16 — 12:32
Есть еще вариант кстати запускать не через .Run, а через Exec. Тогда возвращается объект, в котором есть StdIn StdOut StdErr потоки, и в StdIn поток делать Write.
33 — 08.09.16 — 12:35
+(32)
Вот так я запускал одну консольную прогу, которой надо было потом ввести пароль и прочитать вывод:
var run = ‘»‘ + myFolder + ‘cntlmcntlm.exe» -c «‘ + pathToCntlmIni + ‘» -I -M ‘ + remoteUrl + ‘ -u «‘ + proxyUser + ‘» ‘ + proxyAddress;
var exec = wsh.Exec(run);
exec.StdIn.Write(proxyPass + ‘n’);
var out = exec.StdOut;
var text = »;
while(!out.atEndOfStream)
text += out.ReadAll();
34 — 08.09.16 — 21:15
(33) Ты (31) смотрел — там именно это и описано.
Хотя, согласен, некоторым нужно разжевать и проглотить.
35 — 08.09.16 — 21:20
(34)
Ясно.
ЗЫ: забавно, в (33) движок форума скушал один слэш в ‘cntlmcntlm.exe» — там два слэша, а не один.
36 — 08.09.16 — 21:53
(35) Как говорится, приятного ему аппетита — и пусть его создателю будет стыдно.
ШримпРолл
37 — 09.09.16 — 11:25
Torquader и orefkov : Супер! Большое спасибо! Таким методом реально можно управлять консольными программами. Класс) Задача решилась.
Спасибо)
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.
Already on GitHub?
Sign in
to your account
Closed
Templlg opened this issue
May 13, 2023
· 2 comments
Labels
question
Further information is requested
Comments
Надеюсь в тот раздел )
В серверной и файловой базе не запускается клиент тестирования.
К серверу подключаюсь по RDP
Галочка у пользователя «Защита от опасных действий» снята
Укажите:
- Версия Vanessa Automation — 1.2.040.15
- Версия платформы — 1С:Предприятие 8.3 (8.3.22.1750)
- Режим совместимости базы, где запускается Vanessa Automation — Версия 8.3.17
- Операционная система — windows server 2016
Конфигурация на сервере 1С:ERP Управление предприятием 2 (2.5.10.93) тонкий клиент
Конфигурация файловая база IRP (2021.43.2644) тонкий клиент
> Прикладывайте файлы скриншотов

Сообщение об ошибке 13.05.2023 17:47:56 {ВнешняяОбработка.VanessaAutomation.Форма.ОбщегоНазначенияVA.Форма(642)}: Ошибка при вызове метода контекста (Run): Произошла исключительная ситуация (0xffffffff)
Templlg
changed the title
Не запускается клиент тестирования. «Ошибка при вызове метода контекста (Run)
Не запускается клиент тестирования. «Ошибка при вызове метода контекста (Run)»
May 13, 2023
@Templlg
Если запустить 1С под правами администратора — проблема останется?
@Templlg Если запустить 1С под правами администратора — проблема останется?
Добавили права, все запустилось. Спасибо
Labels
question
Further information is requested
2 participants
Платформа: 8.3.8.1964
Конфигурация: ()
Режим БД: клиент-серверный
Приложение: Обычное приложение 32б
Режим совместимости: Версия8_2_16
Инструменты разработчика: Портативные 4.08p
Попал на такую ошибку, при выполнении запроса:
{ВнешняяОбработка.ирПлатформа.МодульОбъекта(6117)}: Ошибка при вызове метода контекста (Run)
WshShell.Run(СтрокаЗапуска, 0, ОжидатьЗавершения);
по причине:
Произошла исключительная ситуация (0x80070002)
Ситуация вот в чем. Работаю удаленно на клиентском сервере — права ессно порезаны. Из-за этого сначала не мог пользоваться отложенной отладкой, т.к. ИР у меня в сессии клиента, а суперпользователь 1С в него писать не может. Потом осенило — расшарил папку с ир, стал писать путь к ИР для отложенной отладки через «//». При этом дал на папку все права для everyone. Получилось. Собрать данные для запроса получилось, а вот выполнить его — нет.. Несмотря на то, что контекст отладки был получен через сетевой путь, сам запрос почему-то открывается по локальному адресу. Т.е. в заголовке консоли запросов я вижу не «//..<Путь к папке ИР>», а «C:Documents and settings..<локальный путь к папке ИР>».
Добавлено (21.05.2017, 11:39)
———————————————
Сохранил запрос как внешний, открываю через сетевой путь, он мне опять такую же ошибку. Зашел в отладчик — а там в рун все-равно с рабочего стола запускает…
Добавлено (21.05.2017, 11:46)
———————————————
Судя по всему ИР при запуске использует метод «ИспользуемоеИмяФайла», от которого и строит все остальные пути.. Можно ли сделать настройку для переопределения этого параметра?
ropsa 0 / 0 / 0 Регистрация: 17.04.2015 Сообщений: 121 |
||||
1 |
||||
1C 8.x Оповещения активных пользователей28.06.2016, 11:07. Показов 6956. Ответов 13 Метки нет (Все метки)
Здравствуйте! Необходимо оповещать пользователей, например о прекращении работы программы. Было найдено решение:
Но как выяснилось, «net send» не работает для Windows 7. Подскажите, как можно исправить, чтобы работало на Windows 7 или возможно есть какие-нибудь другие способы оповещения. Заранее спасибо!!
0 |
Модератор 3722 / 2917 / 574 Регистрация: 10.03.2011 Сообщений: 11,489 Записей в блоге: 1 |
|
28.06.2016, 12:48 |
2 |
0 |
0 / 0 / 0 Регистрация: 17.04.2015 Сообщений: 121 |
|
28.06.2016, 14:00 [ТС] |
3 |
попробовала заменить «net send » на «msg » но ничего в 1с не получилось. Если пробовать отправку сообщений через командную строку, то отправляется только самой себе
0 |
Модератор 3722 / 2917 / 574 Регистрация: 10.03.2011 Сообщений: 11,489 Записей в блоге: 1 |
|
28.06.2016, 15:36 |
4 |
ropsa, может доступа к сеансам нет? Ошибка то какая? Добавлено через 2 минуты
0 |
206 / 180 / 31 Регистрация: 24.10.2011 Сообщений: 739 |
|
28.06.2016, 15:39 |
5 |
msg работает исключительно с правами админа.
0 |
0 / 0 / 0 Регистрация: 17.04.2015 Сообщений: 121 |
|
28.06.2016, 16:03 [ТС] |
6 |
Ошибка такая:
0 |
Модератор 3722 / 2917 / 574 Регистрация: 10.03.2011 Сообщений: 11,489 Записей в блоге: 1 |
|
28.06.2016, 17:43 |
7 |
Ошибка при вызове метода контекста (Run): Произошла исключительная ситуация (0x80070002) Команда для run «не съедобная»
0 |
0 / 0 / 0 Регистрация: 17.04.2015 Сообщений: 121 |
|
29.06.2016, 08:28 [ТС] |
8 |
Это как-то можно исправить?
0 |
Модератор 3722 / 2917 / 574 Регистрация: 10.03.2011 Сообщений: 11,489 Записей в блоге: 1 |
|
29.06.2016, 20:56 |
9 |
Это как-то можно исправить? да проверить работоспособность команды вне 1С
0 |
0 / 0 / 0 Регистрация: 17.04.2015 Сообщений: 121 |
|
30.06.2016, 09:27 [ТС] |
10 |
отправляется только самой себе, но из 1с даже себе не могу отправить
0 |
Dethmontt Модератор 3722 / 2917 / 574 Регистрация: 10.03.2011 Сообщений: 11,489 Записей в блоге: 1 |
||||
30.06.2016, 13:41 |
11 |
|||
ropsa, я не знаю что вы там проверяете, все отлично работает
Добавлено через 1 минуту
отправляется только самой себе Запускаться msg должен с правами АДМИНА, только АДМИН может отправлять ВСЕМ тут все написано, читайте внимательнее
ropsa, cmd msg Не отсылаются сообщения командой msg
2 |
0 / 0 / 0 Регистрация: 17.04.2015 Сообщений: 121 |
|
30.06.2016, 13:49 [ТС] |
12 |
Даже взяла и скопировала ваш код, но у меня все та же ошибка… Добавлено через 52 секунды
0 |
Модератор 3722 / 2917 / 574 Регистрация: 10.03.2011 Сообщений: 11,489 Записей в блоге: 1 |
|
30.06.2016, 13:51 |
13 |
ropsa, замените в команде звездочку * на имя сеанса (имя пользователя)
2 |
0 / 0 / 0 Регистрация: 17.04.2015 Сообщений: 121 |
|
30.06.2016, 13:53 [ТС] |
14 |
Спасибо большое!!!
0 |
Доброго дня. Пытаюсь запустить стандартный просмотрщик Windows b из 1с код такой : WshShell = Новый COMОбъект(«WScript.Shell»); WshShell.Run («»»C:WINDOWSsystem32
undll32.exe C:WINDOWSSystem32shimgvw.dll,ImageView_Fullscreen C:ФоноваяПечатьДля АХО 2.jpg»»»,0) — выдает ошибка при вызове контекста RUN : Произошла исключительная ситуация (0x80070002) Причем командная строка из выполнить отрабатывает !!! что может быть подскажите…
неупотребление команды системы может быть. да точно
нажми ктрл+ф1 и отчётливо произнеси в него «команда». дальше по обстоятельствам
Не удается найти указанный файл. (0x80070002)
6) вроде нет : тестирую пока в файловой
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
Вот тут чувак еще один способ предложил: «В итоге я понял, что нормальной реализации с помощью языка 1С нету, так как в большинстве случаев используется подключение Wscript.Wshell, и видимо не просто так. Но использовать первый вариант я совершенно не хотел, из за записи файла на диск.
У меня был небольшой опыт работы c VBScript, поэтому я знал, что в скрипт можно переадавать параметры. Этим я и воспользовался. Был написан простой скрипт ожидания, который принимал один параметр:
wscript.sleep wscript.arguments(0)
Сделать это очень просто: открываем блокнот, вставляем строчку , которая написана выше, жмем «Сохранить как…», и сохраням как sleep.vbs.
Этот файл необходимо положить на сервер(для вызова на сервере) и на клиент(для вызова на клиенте), в моём случае(сервер терминалов), я положил файл на оба сервера(терминальный и на сервер 1С).
Теперь у нас есть скрипт который будет ждать столько, сколько мы скажем, осталось его вызвать из программы.
Вызов происходит в две строчки кода:
Я положил процедуру в общий модуль на клиенте, и в общий модуль на сервере, так же в параметр задал ПутьХраненияФайла. Вот таким образом с помощью Wscript, без постоянного создания файлов скрипта можно реализовать паузу в работе кода с минимальным значением ~0,001 секунда.
Процедура ОбработкаОжидания(Секунда)
scr = Новый COMОбъект("WScript.Shell");
scr.Run("Wscript.exe ""C:tempsleep.vbs"" "+секунда*1000,0,1);
КонецПроцедуры[/pre]
i77 Пользователь Сообщений: 13 |
Добрый день. Опять к Вам на поклон. Сообщение 1С об ошибке такое: Добрые люди, помогите, пожалуйста. Изменено: i77 — 27.05.2016 13:14:53 |
kuklp Пользователь Сообщений: 14868 E-mail и реквизиты в профиле. |
#2 27.05.2016 14:28:15
Я сам — дурнее всякого примера! … |
|
Doober Пользователь Сообщений: 2231 |
Скорее всего потеря связи 1с с excel. |
i77 Пользователь Сообщений: 13 |
kuklp
, Doober , спасибо, что отозвались. kuklp . Не помогает. Все по прежнему. Doober . Книга маленькая. Вся работа в ней, вместе с сохранением занимает около 2-3 секунд. Может ещё есть варианты? |
Влад Пользователь Сообщений: 1189 |
Для 1С вот эта запись: Sheets(«Ф_Transit»).[L10].Value = NewFileName ни о чем не говорит. С точки зрения 1С «[L10]» — это непонятное свойство/метод, а для экселя — неявный вызов команды Evaluate. |
i77 Пользователь Сообщений: 13 |
#6 27.05.2016 16:23:36 Ре Влад . Я, к сожалению, не понял смысла Ваших слов, потому что аматор.
Та же ошибка. |
||
i77 Пользователь Сообщений: 13 |
Я закомментировал только эту строчку. Появилось такое сообщение, как во вложении. Прикрепленные файлы
Изменено: i77 — 27.05.2016 16:39:29 |
Влад Пользователь Сообщений: 1189 |
Как вариант: «xlExcel8» — это константа экселя, 1С про нее ничего не знает + попробуйте записать «Контрагент = Sheets(«Ф_Transit»).Range(«B1″).Value». И лучше использовать «ActiveWorkbook.Sheets» вместо «Sheets». Изменено: Влад — 27.05.2016 16:47:27 |
i77 Пользователь Сообщений: 13 |
#9 27.05.2016 16:57:48 Если закомментировать вот это, то сообщения об ошибке НЕ возникает.
(А «ActiveWorkbook.Sheets«—ничего не меняется.) |
||
Влад Пользователь Сообщений: 1189 |
#10 27.05.2016 17:04:25 Попробуйте просто
|
||
i77 Пользователь Сообщений: 13 |
|
Doober Пользователь Сообщений: 2231 |
#12 27.05.2016 18:18:49
Пришло время узнать как происходит открытие файлов и запуск макросов. |
||
i77 Пользователь Сообщений: 13 |
#13 27.05.2016 18:58:34 Код из 1С:
……..
Изменено: i77 — 27.05.2016 19:02:32 |
||||
Doober Пользователь Сообщений: 2231 |
#14 27.05.2016 20:55:43
Немного ошибся, с книгой
В 1С
Изменено: Doober — 27.05.2016 21:06:39 |
|||||
i77 Пользователь Сообщений: 13 |
#15 27.05.2016 23:54:14 Doober
, я рад помощи. Спасибо большое за внимание.
|
||
Doober Пользователь Сообщений: 2231 |
1.ДА. |
i77 Пользователь Сообщений: 13 |
#17 28.05.2016 01:25:39 Попробовал. Работает!!! |
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.