Здравствуйте. Как сделать запуск внешнего приложения в ТМ 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 :
Понимаю что запоздал, но проблемка появилась только сейчас. Сбросьте пример присоединения ехе файла.
Posted by Тужиков Олег (Участник № / Member № 2822) on :
пример присоединения ехе файла сбросьте пожалуйста на pir34@mail.ru
Posted by AdAstra Technical Support (Участник № / Member № 4) 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, включая драйвера (если вы их используете) всегда лежат в одном месте.
Posted by t@r@sik (Участник № / Member № 3400) on :
2Romсheg: Крутил и так и эдак всё равно не работает. НИКАК
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; в канале создан хотя бы один аргумент.