#windows #batch-file #autosys
#Windows #пакетный файл #autosys
Вопрос:
У меня есть вопрос, и мне интересно, могли бы вы, ребята, помочь.. Вот подробности —
Поток программы -> Задание Autosys -> Задание Windows .bat по сетевому пути -> Внутренние вызовы Java-программы вместе с несколькими другими компонентами
Когда .bat запускается через задание Autosys, он выдает предупреждение ниже и выполняет частичную обработку и завершает работу без каких-либо сбоев (я предполагаю, что внутренний код может не иметь хорошей обработки ошибок .. но, к сожалению, у меня нет доступа к просмотру / изменению того же самого). Однако, когда я вхожу в это окно Windows и запускаю файл .bat из командной строки, он работает как шарм и не выдает ошибок.
Предупреждение в журналах — «ПРЕДУПРЕЖДЕНИЕ: не удалось загрузить sqljdbc_auth.dll «
Что я пробовал — я попытался создать файл оболочки bat на диске Windows C (не сетевой путь, в котором находится фактический .bat) и поместил sqljdbc_auth.dll в этой пользовательской папке. Задание отправлено в SU после частичной обработки.
Ценю вашу помощь.
Большое спасибо, Радж
Ответ №1:
Я подозреваю, что есть path
ошибка. Попробуйте echo %path%
непосредственно перед вызовом вашего пакета, даже просто запустить
echo %path%>alogfile
call yourbatch
и если отображаемый path
не включает каталог, в котором ваш .dll находится, добавьте ее в path перед вызовом yourbatch.
Вполне может быть, что your
logon включает требуемый каталог как часть your
определяемого пользователем path
, а имя пользователя, под которым выполняется задание, не включает каталог.
Или вы могли бы попробовать переместить DLL куда-нибудь вроде system32
, который должен быть общим для всех.
(Windows должна использовать стандартный алгоритм сканирования пути, чтобы найти любую требуемую DLL, которая не вызывается по полному пути)