|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Код: vbnet 1.
Запускаю приложение, если оно не открыто Если оно уже открыто - цепляется открытый экземпляр. Надо - если есть открытый экземпляр приложения - запустить еще один, что бы работать в нем. Проверить есть ли открытый экземпляр могу через Getobject. А вот открыть повторно не соображу как.... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2021, 11:05 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Serg197311 Код: vbnet 1.
Запускаю приложение, если оно не открыто Если оно уже открыто - цепляется открытый экземпляр. Надо - если есть открытый экземпляр приложения - запустить еще один, что бы работать в нем. Проверить есть ли открытый экземпляр могу через Getobject. А вот открыть повторно не соображу как.... Может такую конструкцию заюзать ? Код: vbnet 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2021, 16:13 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Прогер_самоучка Может такую конструкцию заюзать ? Код: vbnet 1. 2.
Попробовал..... открывается, но виснет нафиг и приложение и Акс... Может там еще что добавить надо? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 12:18 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Блин, при параметре TRUE приложение запускается, но управление в АКС не передается, все так и висит, пока приложение не закроешь. После этого выполнение программы продолжается При параметре FALSE выполнение программы продолжается, но приложение не успевает открыться, то есть подхватывается старый процесс...... Где б середину то найти? что бы приложение запустилось и управление было обратно в код передано? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 12:35 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Serg197311 А вот открыть повторно не соображу как.... Ватсон, сделайте в папке с интерфейсом копию управляющей программы, например CATIA_2 и запускайте её когда нужно любым удобным способом - хоть по ярлыку с рабочего стола, хоть по кнопке из формы в CATIA... Единственное неудобство - нужно при внесении изменений в CATIA, делать новую копию CATIA_2, но и это можно автоматизировать - при запуске CATIA - убиваем старую версию CATIA_2 и делаем новую... Естественно предполагается, что база разделенная и мы манипулируем только с управляющей программой... Ну и естественно CATIA_2 ты сможешь запустить только один раз... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.11.2021, 18:25 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Извини - но не смог понять почти ничего.... vmag Ватсон, сделайте в папке с интерфейсом Это где? Есть папка где лежит база и есть папка где лежит CATIA.....Или еще где? vmag копию управляющей программы, например CATIA_2 Это имеется ввиду exeшник катин? Или еще один экземпляр базы? vmag и запускайте её когда нужно любым удобным способом - хоть по ярлыку с рабочего стола, хоть по кнопке из формы в CATIA... это понял - но нужно запустить именно из Акса, из него же выполнить некоторые действия а потом закрыть новый экземпляр кати vmag Единственное неудобство - нужно при внесении изменений в CATIA, делать новую копию CATIA_2, но и это можно автоматизировать - при запуске CATIA - убиваем старую версию CATIA_2 и делаем новую... Если бы можно было убивать уже открытый экземпляр - вопросов бы не было. Убивать нельзя, он должен остаться открытым vmag Естественно предполагается, что база разделенная и мы манипулируем только с управляющей программой... Ну и естественно CATIA_2 ты сможешь запустить только один раз... База разделенная....дальше не очень понял..... Холмс)))) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 07:19 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Может это чем-то поможет? WMI-определить, работает ли процесс или программа ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 10:03 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Joss Может это чем-то поможет? WMI-определить, работает ли процесс или программа Думаю не поможет... открыт ли экземпляр CATIA или нет я могу определить через getobject запустить второй могу допустим через wshell.run... Наверное если в API покопаться поглубже - как-нибудь через hwnd или идентификатор процесса можно определить что второй экземпляр уже открылся... А вот как его в обработку получить? в виде object нужной структуры? через get или createobject первый открытый экземпляр подтягивается... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 10:35 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Serg197311 Думаю не поможет... открыт ли экземпляр CATIA или нет я могу определить через getobject ты можешь определить что первая программа открыта визуально (глазами) и в ней нажать кнопку открыть копию этой программы (они рядом лежат) Serg197311 База разделенная....дальше не очень понял..... Холмс)))) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 10:54 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
vmag ты можешь определить что первая программа открыта визуально (глазами) и в ней нажать кнопку открыть копию этой программы (они рядом лежат) Ну могу и так... вопрос вот в чем "А вот как его в обработку получить? в виде object нужной структуры? через get или createobject первый открытый экземпляр подтягивается..." ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 10:57 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Serg197311 "А вот как его в обработку получить? в виде object нужной структуры? а с какой целью ? мы там (во втором экземпляре) разве не собираемся работать с клавиатурой, кнопки нажимать ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 11:02 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
vmag Serg197311 "А вот как его в обработку получить? в виде object нужной структуры? а с какой целью ? мы там (во втором экземпляре) разве не собираемся работать с клавиатурой, кнопки нажимать ? нет,не собираемся. Все что надо сделать - выполнит код из Акса. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 11:50 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Serg197311, наверно долгоиграющий ? может его тупо запустить тут же только с DoEvents() ??? ну или копию настроить так, чтобы при старте отработал код и и она завершилась... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 11:57 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
vmag Serg197311, наверно долгоиграющий ? Не понял vmag может его тупо запустить тут же только с DoEvents() ??? ну или копию настроить так, чтобы при старте отработал код и и она завершилась... Код - в Аксе,не в Кате Надо, чтобы Акс запустил второй экземпляр Кати,и в нем выполнил нужные действия(еще раз - действия выполняет код из Акса, не из Кати) Уже получается все, кроме получения этого второго экземпляра Кати как object, чтобы действия выполнять именно в нем, а не в первом экземпляре. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 12:50 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Serg197311, кто такая катя? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:01 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Serg197311 Надо, чтобы Акс запустил второй экземпляр Кати,и в нем выполнил нужные действия(еще раз - действия выполняет код из Акса, не из Кати) http://catiadoc.free.fr/online/basug_C2/basugbt0101.htm Running Macros Using the CNEXT Command To start a session and run a macro automatically, run the command like this: cnext -env CATIA.V5R19.B19 -macro E:\tmp\Mymacro.CATScript ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:37 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
vmag Serg197311, кто такая катя? CATIA https://ru.wikipedia.org/wiki/CATIA ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:50 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
court перенести этот код в макрос CATIA, не вариант ? Не-а.... Надо из Акса Если не найду выхода - буду ловить открытую Катю и сообщать юзеру чтобы он ее сам закрыл( мне из Акса - нельзя,там все не просто, и только юзер может решить, каким образом выходить и какие опции приэтом использовать) Но не хотелось бы...... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 14:53 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
Serg197311 Если не найду выхода - буду ловить открытую Катю и сообщать юзеру чтобы он ее сам закрыл нуу, если очень сильно захочешь заморочиться, то тут - Доступ к нескольким работающим копиям CATIA (VB) боролись с подобным (получение ссылок на все запущенные CATIA.Application), но там всё "сложно" )) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 15:11 |
|
Повторно открыть приложение
|
|||
---|---|---|---|
#18+
court , если очень сильно захочешь заморочиться, то тут - Доступ к нескольким работающим копиям CATIA (VB) боролись с подобным (получение ссылок на все запущенные CATIA.Application), но там всё "сложно" )) Спасибо!! От же ж блин какая закавыка то выходит.... Думал-как-то попроще можно..... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2021, 15:35 |
|
|
start [/forum/topic.php?fid=45&msg=40111227&tid=1609560]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 159ms |
0 / 0 |