Пятница, 22.09.2017, 12:45
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 212»
Форум » Основной » Проблемные ситуации » Консоль запросов, ошибка
Консоль запросов, ошибка
unichkinДата: Воскресенье, 21.05.2017, 11:46 | Сообщение # 1
Подполковник
Группа: Проверенные
Сообщений: 148
Репутация: 14
Статус: Оффлайн
ОС: Windows x86 Microsoft Windows 2003 version 5.2 Service Pack 2 (Build 3790)
Платформа: 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)
---------------------------------------------
Судя по всему ИР при запуске использует метод "ИспользуемоеИмяФайла", от которого и строит все остальные пути.. Можно ли сделать настройку для переопределения этого параметра?

 
tormozitДата: Воскресенье, 21.05.2017, 12:30 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Цитата
Потом осенило - расшарил папку с ир, стал писать путь к ИР для отложенной отладки через "\\"...
Об этом рассказано в очень коротком обучающем видеоролике, который ты наверняка смотрел.

Двойной слеш "//" ты с неправильным наклоном указал. Правильно - "\\".

Рекомендую записать видео. Оно поможет мне быстрее разобраться в проблеме.
 
tormozitДата: Воскресенье, 21.05.2017, 13:07 | Сообщение # 3
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Также обрати внимание, что используешь не полностью поддерживаемую версию ОС. В описании файла указано
Цитата
Для 1С 8.2.12+, 8.3.4+ и Windows Vista+/Server 2008+
Однако в данном случае программа выдает возможно не достаточно понятное сообщение об ошибке. Поэтому я все же хочу разобраться глубже.
 
tormozitДата: Воскресенье, 21.05.2017, 13:10 | Сообщение # 4
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Код ошибки  0x80070002 означает "Не удается найти указанный файл", что быстро можно найти в web-поисковике.
Поэтому желательно увидеть значение параметра СтрокаЗапуска в виде текста и на видео.
 
unichkinДата: Воскресенье, 21.05.2017, 18:58 | Сообщение # 5
Подполковник
Группа: Проверенные
Сообщений: 148
Репутация: 14
Статус: Оффлайн
Я ж говорю - в отладчике в строке запуска рабочий стол вместо сетевого пути. Завтра видео запишу.
 
tormozitДата: Понедельник, 22.05.2017, 21:37 | Сообщение # 6
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Похоже я внес в этом коде ошибку, но ее исправление не обязательно полностью исправит исходную проблему.
Попробуй заменить
           
Код
СтрокаЗапуска = "%windir%\Sysnative\" + СтрокаЗапуска;
            WshShell.Run(СтрокаЗапуска, 0, ОжидатьЗавершения);
на
           
Код
СтрокаЗапуска = "%windir%\Sysnative\" + ИмяКомандногоФайла;
            WshShell.Run(ИмяКомандногоФайла, 0, ОжидатьЗавершения);
 
unichkinДата: Вторник, 23.05.2017, 20:09 | Сообщение # 7
Подполковник
Группа: Проверенные
Сообщений: 148
Репутация: 14
Статус: Оффлайн
К сожалению не смогу выложить видео, т.к.  закрытые данные туда попадают. Размывка не спасет - там в командной строке виден серв клиента, так что выкладывать не буду. Если всплывет - разбираться никто не будет что там нет ничего и т.п.
Выполнил замену по твоему совету - но ничего не изменилось, в переменной "ИмяКомандногоФайла" путь от рабочего стола, а не сетевой.

Добавлено (23.05.2017, 20:09)
---------------------------------------------
Перешел по ссылке на обучающий видеоролик - ссылка битая. Слеш - да, спешил.

 
tormozitДата: Вторник, 23.05.2017, 21:24 | Сообщение # 8
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Обучающий ролик по ссылке выше у меня корректно открывается в браузере Firefox. Но естественно это не основная ссылка на него. Его название "ИР. Портативный вариант. Отложенная отладка". Основная ссылка на него есть на соответствующей странице .

Без видео или конкретных значений переменных я вряд ли смогу разобраться.

Возможно автор темы http://devtool1c.ucoz.ru/forum/2-677-1 с похожей ошибкой не будет так ограничен в плане неразглашения и предоставит достаточно диагностической информации.

Похоже в некоторых случаях при запуске из сетевой папки, связанной с локальной папкой, ОС сама заменяет сетевой путь на локальный. Поэтому программно уже нельзя узнать каков был сетевой путь. Но ты выполняешь код на клиенте и поэтому права пользователя сервера 1С здесь никак не влияют на проблему, т.к. и для интерактивного запуска ИР и для выполнения проблемной строки используется один и тот же пользователь ОС.
 
tormozitДата: Вторник, 23.05.2017, 23:42 | Сообщение # 9
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Попробуй выполнить командную строку, содержащуюся в переменой ИмяКомандногоФайла, интерактивно (через окно CMD.exe).
Мне нужно узнать содержимое bat файла, на который указывает эта командная строка.
 
unichkinДата: Среда, 24.05.2017, 10:11 | Сообщение # 10
Подполковник
Группа: Проверенные
Сообщений: 148
Репутация: 14
Статус: Оффлайн
cmd.exe /c ""C:\Documents and Settings\<ИмяПользователя>\Local Settings\Application Data\1C\1Cv8\<ИмяСервераИмяБазы>\c\RegsvrPower.exe" DynamicWrapperX32.dll /s"
del "C:\Documents and Settings\<ИмяПользователя>\Local Settings\Temp\d\v8_5_70.bat"
 
zelsДата: Четверг, 25.05.2017, 14:25 | Сообщение # 11
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Оффлайн
Какая портативная версия ИР позволяет замерить время выполнения пакетного запроса в server 2003 ?
 
tormozitДата: Четверг, 25.05.2017, 20:05 | Сообщение # 12
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Пока я лишь вижу что проблема есть и что unichkin пытается помочь собрать о ней информацию и то, частично игнорирует мои запросы (например "Попробуй выполнить командную строку"). Остальные (zels, coolbybay) только просят решение проблемы, но не предоставляют достаточно информации о своем случае. У меня же нет возможности проверить работу подсистемы на ОС Windows 2003 Server. Поэтому скорее всего решение проблемы будет не быстрым.

Кроме предоставления мне запрошенной информации, еще есть эффективный способ диагностировать проблему - представить мне доступ на терминальный 2003 Server, где я смог бы сам все воспроизвести.
 
tormozitДата: Четверг, 25.05.2017, 20:07 | Сообщение # 13
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Все неактуальные версии находятся в разделе Старые версии
 
unichkinДата: Среда, 31.05.2017, 21:26 | Сообщение # 14
Подполковник
Группа: Проверенные
Сообщений: 148
Репутация: 14
Статус: Оффлайн
Попробовал выполнить в окне cmd строку из отладчика - получил сообщение "The filename, dyrectiry name, or volume label syntax is incorrect"
 
tormozitДата: Среда, 31.05.2017, 21:36 | Сообщение # 15
Генералиссимус
Группа: Администраторы
Сообщений: 1579
Репутация: 17
Статус: Оффлайн
Выполнять командную строку нужно находясь в точке останова, т.к. она запускает самоудаляемый bat файл.
 
Форум » Основной » Проблемные ситуации » Консоль запросов, ошибка
Страница 1 из 212»
Поиск: