AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.11.2021, 16:15   #1  
smailik is offline
smailik
Участник
Аватар для smailik
 
250 / 70 (3) ++++
Регистрация: 10.04.2012
Адрес: Москва
Результат работы shellExecute
Всем доброго дня.

Есть питоновский скрипт. Из Аксапты дергается этот скрипт
X++:
WinAPI::shellExecute('python.exe', strFmt('pict_new.py %1 %2', dirIn, dirOut), 'c:\\program files\\python38\\', '', 0, true);
Потребовалось в скрипт внести данные. Создал его копию. Внёс данные и сохранил как "pict_web.py". Поместил в ту же папку где и первый скрипт.
Пытаюсь вызвать его через
X++:
WinAPI::shellExecute('python.exe', strFmt('pict_web.py %1 %2', dirIn, dirOut), 'c:\\program files\\python38\\', '', 0, true);
Но ничего не происходит.
Если запускать его не из Аксапты, а через cmd.
То всё хорошо отрабатывает.
При этом в самом начале вставил логирование. Что мол скрипт начинает работать.
При запуске через cmd в файле лога появляются записи.
При запуске из Ах в файл лога ничего не пишется.
Исходя из этого делаю вывод что скрипт не запускается.
Как-нибудь можно в Ах получить ошибку либо нечто иное что происходит при выполнении WinAPI::shellExecute по новому скрипту?
Либо может еще какое шаманство существует?
Старый 15.11.2021, 16:40   #2  
Weez is offline
Weez
Участник
Axapta Retail User
 
250 / 84 (3) ++++
Регистрация: 18.01.2006
Адрес: Moscow city
c:\\program files\\python38\\ - при запуске из аксапты этот путь остается актуальным?
__________________
Существует 10 типов людей: одни понимают двоичную систему, другие - нет.
Старый 15.11.2021, 16:47   #3  
smailik is offline
smailik
Участник
Аватар для smailik
 
250 / 70 (3) ++++
Регистрация: 10.04.2012
Адрес: Москва
Да, пусть остаётся актуальным. Ах на АОСе запускаю и проверяю.
Старый 16.11.2021, 09:16   #4  
Lucky13 is offline
Lucky13
Участник
1C
 
714 / 198 (8) ++++++
Регистрация: 21.10.2004
А функция shellExecute что возвращает?
За это сообщение автора поблагодарили: Товарищ ♂uatr (2).
Старый 16.11.2021, 23:18   #5  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
305 / 873 (30) +++++++
Регистрация: 23.10.2012
Цитата:
Сообщение от Lucky13 Посмотреть сообщение
А функция shellExecute что возвращает?
Если 0, то стоит попробовать вызвать WinApi::getLastError().
Дополнительный вопрос:
Исполнитель - клиентская сторона?

Последний раз редактировалось Товарищ ♂uatr; 16.11.2021 в 23:21.
Старый 17.11.2021, 11:23   #6  
smailik is offline
smailik
Участник
Аватар для smailik
 
250 / 70 (3) ++++
Регистрация: 10.04.2012
Адрес: Москва
В данном случае shellExecute возвращает int.
Попробую WinApi::getLastError()
Исполнитель - серверная сторона
Старый 18.11.2021, 02:30   #7  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
305 / 873 (30) +++++++
Регистрация: 23.10.2012
Цитата:
Сообщение от smailik Посмотреть сообщение
Исполнитель - серверная сторона
shellExecute кастомизированный? там же 2-ая строка "client static int shellExecute("
Старый 24.11.2021, 16:03   #8  
smailik is offline
smailik
Участник
Аватар для smailik
 
250 / 70 (3) ++++
Регистрация: 10.04.2012
Адрес: Москва
Да кастомизированный.
За основу взят код из
ShellExecute on x64 server
На данный момент остановился на варианте с указанием пути к файлу скрипта
X++:
WinAPIServer::shellExecute('python.exe', strFmt('"c:\\program files\\python38\\pict_web.py" %1 %2', dirIn, dirOut), 'c:\\program files\\python38\\', '', 0, true);
Хотя старый скрипт вызывается без проблем без указания полного пути к файлу.
Мы с коллегами думаем что собака зарыта в направлении новых политик/прав доменной безопасности. Последнее время смежный отдел много химичит в этом направлении.
Теги
ax2012r3, python, shellexecute

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
ax2009, 2012. У кого есть опыт работы с paging в Query? Стоит ли этим заморачиваться? mazzy DAX: Программирование 12 12.11.2015 09:03
Изменение графика работы в середине месяца wyro4ka DAX: Функционал 10 01.11.2012 15:32
palleagermark: Print images directly to a printer with ShellExecute (in XP) Blog bot DAX Blogs 0 26.08.2009 17:05
Ошибка: Сессия работы на сервере AOS прервана... Atani DAX: Программирование 6 09.08.2007 09:28
Использование профилировщика и толкование результатов его работы belugin DAX: Программирование 3 22.11.2005 16:56

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 16:26.