This is topic Запуск внешнего приложения in forum Редактор проекта TRACE MODE 6 / at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/32/t/000178.html

Posted by sergey UralSteel (Участник № / Member № 1914) on :
 
Здравствуйте.
Как сделать запуск внешнего приложения в ТМ 6.05?
Например, мне необходимо сделать запуск калькулятора.
В ТМ 5 сделано всё просто, на кнопку назначена функция запуска приложения, а дальше указывается путь приложения.
 
Posted by DIM (Участник № / Member № 2321) on :
 
я тоже пытался сделать подобное, но мне сказали , что нужно самому писать dll
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Мы намерены реализовать эту программируемую функцию в следующем релизе.
 
Posted by DIM (Участник № / Member № 2321) on :
 
Следующий релиз Вы обещали к концу сентября.......пока его нет(((
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Уточнить дату выпуска релиза можно по adastra@adastra.ru
 
Posted by DIM (Участник № / Member № 2321) on :
 
Здравствуйте, не понимаю как в новом релизе сделать запуск внешнего приложения....может промто не могу найти?..но в справочной системе об этом по-моему нислова...
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Канал класса CALL с типом вызова EXEC.
 
Posted by DIM (Участник № / Member № 2321) on :
 
Прошу прощения...а можно примерчик с вызовом штатного калькулятора на dem0n74@mail.ru ?
Спасибо!
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Отправлен.
 
Posted by Алекс К (Участник № / Member № 1337) on :
 
пожалуйста и мне примерчик
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Отправлено.
 
Posted by DIM (Участник № / Member № 2321) on :
 
Спасибо! Теперь всё ясно!
 
Posted by Алекс К (Участник № / Member № 1337) on :
 
А с чем может быть связано то, что не запускается cmd.exe вместо calc.exe?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Вопрос к самому приложению. Возможно, что при запуске необходимо указывать какие-то ключи.
 
Posted by Алекс К (Участник № / Member № 1337) on :
 
Саио по себе оно запускается нормально - к приложению вопросов нет. А из Трейс Моуд нет, в чем причина?
Присланный проект не менялся, только имя calc на cmd. Думаю cmd.exe все знают.
 
Posted by Майборода Алексей (Участник № / Member № 1701) on :
 
Лечится так:
Параметр=1
Имя канала "c:\windows\system32\cmd.exe"
Комментарий "/k cmd"
 
Posted by Алекс К (Участник № / Member № 1337) on :
 
Спасибо!
 
Posted by vshev (Участник № / Member № 2779) on :
 
Пожалуйста, можно и мне примерчик на pilum@list.ru?
Заранее спасибо
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
отправлено
 
Posted by Алексей Александрович (Участник № / Member № 2741) on :
 
Если можно то отправьте мне тот же примерчик. Заранее благодарен.
 
Posted by Алексей Александрович (Участник № / Member № 2741) on :
 
aabaturin@mail.ru
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Отправлено
 
Posted by Алексей Александрович (Участник № / Member № 2741) on :
 
Спасибо, всё получил
 
Posted by Jurgen (Участник № / Member № 2755) on :
 
Отправьте пожалуйста и мне тот же примерчик. Буду признателен.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
отправлено
 
Posted by vshev (Участник № / Member № 2779) on :
 
Добрый день!
Есть проект, в котором по нажатию на кнопку запускается внешнее приложение. В МРВ все работает.
Теперь стоит задача подключить к данному МРВ NLL. Как сделать так, чтобы по нажатию кнопки в NLL внешнее приложение запускалось не на РС с МРВ, а на РС с NLL?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
C помощью канала Call сделать это не получится. Но Вы можете попробовать написать dll для запуска приложения, которая будет вызываться из программы, созданной в консоли.
 
Posted by Karpelyanskiy S.V. (Участник № / Member № 2191) on :
 
Почему же не получится? У меня в проекте в NLL с помощью канала Call с кнопки запускается Internet Explorer с необходимой страничкой. Канал Call с типом вызова Exec. TM 6.05.1.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Данная возможность не документирована, и ее корректную работу мы не гарантируем.
 
Posted by hiron (Участник № / Member № 2841) on :
 
Отправьте и мне примерчик тот же примерчик на serg-hiron@mail.ru! Заранее благодарен!
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Данный проект можно найти на нашем сайте http://www.adastra.ru/support/get_support/commer/get_support_tm6/TM6_commercial_proj_base/
 
Posted by Тужиков Олег (Участник № / Member № 2822) on :
 
Понимаю что запоздал, но проблемка появилась только сейчас.
Сбросьте пример присоединения ехе файла.
 
Posted by Тужиков Олег (Участник № / Member № 2822) on :
 
пример присоединения ехе файла сбросьте пожалуйста на pir34@mail.ru
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
http://www.adastra.ru/support/get_support/commer/get_support_tm6/TM6_commercial_proj_base/
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день!
Очень интересно для для чего в аргументах обоих каналов Call(в тестовом примере скачанного с http://www.adastra.ru/support/get_support/commer/get_support_tm6/TM6_commercial_proj_base/ ) созданы по аргументу не привязанные ни к чему? Что интересно если их удалить, то ни калькулятор ни cmd.exe не запускаются ... почему?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Т.к. каналы Call без аргументов не обрабатываются
 
Posted by vbul (Участник № / Member № 1285) on :
 
понятно
 
Posted by Sergei (Участник № / Member № 161) on :
 
А не лучше ли было сделать обработку канала CALL.EXEC через виндовую функцию ShellExecute. Было бы гораздо проще открывать документы - достаточно прописать путь к файлу, а винда откроет его сама в чем нужно. А сейчас не могу открыть отчет в эксплорере - как я понял путь не влезает в атрибут, а через ярлык не запускается.
Через ShellExecute запустился бы.

Как запустить эксплорер?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Спасибо, за рекомендации, мы рассмотрим их.

Запустить IE можно двумя способами.
1) Скопировать в "доступное" место.
2) Написав простой bat-файл для запуска IE, и прописать в Call.Exec старт этого файла.
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
Пробовал в демо проекте запускать ехе файл, но результат -0. В качестве эксперимента пробовал запустить rtcx.exe, однако не работает...
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
У Вас калькулятор запускается?
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
Калькулятор запускается нормально, но когда изменяю путь и приложение то не работает. После возвращения на исходную калькулятор снова работает. Такое впечатление что запускаются приложения только из system32.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Проверьте, не попадаете ли Вы под ограничение длины строки в имени и комментарии.
 
Posted by Romсheg (Участник № / Member № 3792) on :
 
2t@r@sik:
Рекомендую сделать так:
1) Создаете отдельную папку в корне диска под Ваши приложения, которые собираетесь запускать из ТМ.
2) Настраиваете в ОС Windows через переменную PATH этот путь. Можно его также прописать в свойствах "Мой компьютер"->"Дополнительно"->"Переменные среды".
3) В канале CALL не указываете путь в комментарии.

Тогда можно избежать ограничений ТМ6 на длинну строки, а кроме того все приложения и DLL, включая драйвера (если вы их используете) всегда лежат в одном месте. [Улыбка / Smile]
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
2Romсheg:
Крутил и так и эдак всё равно не работает. НИКАК [Неодобрение / Frown]
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Пришлите Ваш неработающий проект на hotline3@adastra.ru
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
Отправил
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1) Параметр = 3. Такого не существует.

2) Путь не должен содержать пробелов и других служебных символов

3) Ограничение длины комментария 39 символов.
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
С параметр=3 согласен, но это вероятно произошло перед самой отправкой демки, но я так понял что если в указанном пути есть пробел то работать не будет? как быть в такой ситуации? Ведь многие приложения со своими служебными DLL находятся именно в папке Program Files.
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
2Romсheg:
Если использовать PATH и не прописать путь в комментарии то не работает даже калькулятор, а при переносе в другую папку в корне диска многие приложения не не хотят даже слышать о запуске даже из самой папки, не говоря уже о ТМ. Может я чего-то не понимаю, т.к. не программист?
 
Posted by Romсheg (Участник № / Member № 3792) on :
 
2t@r@sik:
Вероятно Вы что-то неправильно делаете. У нас не один объект уже на ТМ6 именно так работает: создаем D:\Drivers или C:\Drivers, прописываем ее в PATH и туда складываем и Dll-драйверы и приложения, запускаемые через Call. Все работает исправно.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Если требуется запуск непременно из Program Files, то лучше написать bat file и запустить его.

Имя канала c:\windows\system32\cmd
Комментарий "/k start c:\shutdown.bat"

кавычки обязательны.
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
Большое спасибо! буду пробовать.
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
Доброго времени суток!
Создал в двух проектах одинаковые каналы CALL Exec
для запуска батников и наблюдаю такую картину: в первом проекте работает , а во втором нет.
В первом проекте в одном РТМ несколько объектов и экранов, а во втором проекте несколько РТМ (по одному на каждый объект) и батник должен убивать работающий и запускать следующий по нажатию кнопки
. Сам батник работает, а из МРВ не запускается, хотя в окне компонентов присваивается на входе 1.С чем это может быть связано? Подскажите пожалуйста.
вот еще код батника
taskkill /f /fi "Username eq %USERNAME%" /fi "imagename eq rtc.exe"
TIMEOUT /T 5 /NOBREAK
pause
start C:\"Program Files"\"AdAstra Research Group"\"TRACE MODE 6 Runtime"\rtcx.exe D:\OUR_VAR\DKVR_1_2\OUR_VAR_1.dbb /fullscreen /hidemenu
 
Posted by t@r@sik (Участник № / Member № 3400) on :
 
Докопался! Оказывается канал CALL не работает если в нем не создать хотя бы один пустой аргумент, а в документации об этом ни слова.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В справке написано:
(58) Exec – запуск приложения Windows XP при выполнении следующих условий:

значение канала отлично от 0;
в канале создан хотя бы один аргумент.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2