powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Повторно открыть приложение
21 сообщений из 21, страница 1 из 1
Повторно открыть приложение
    #40110232
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
Set ca = CreateObject("CATIA.Application")


Запускаю приложение, если оно не открыто
Если оно уже открыто - цепляется открытый экземпляр.
Надо - если есть открытый экземпляр приложения - запустить еще один, что бы работать в нем.
Проверить есть ли открытый экземпляр могу через Getobject.
А вот открыть повторно не соображу как....
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40110362
Прогер_самоучка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311
Код: vbnet
1.
Set ca = CreateObject("CATIA.Application")



Запускаю приложение, если оно не открыто
Если оно уже открыто - цепляется открытый экземпляр.
Надо - если есть открытый экземпляр приложения - запустить еще один, что бы работать в нем.
Проверить есть ли открытый экземпляр могу через Getobject.
А вот открыть повторно не соображу как....

Может такую конструкцию заюзать ?
Код: vbnet
1.
2.
Set WshShell = CreateObject("WScript.Shell")
Return = WshShell.Run("c:\CATIA.exe", 0, True)
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40110983
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прогер_самоучка

Может такую конструкцию заюзать ?
Код: vbnet
1.
2.
Set WshShell = CreateObject("WScript.Shell")
Return = WshShell.Run("c:\CATIA.exe", 0, True)


Попробовал..... открывается, но виснет нафиг и приложение и Акс...
Может там еще что добавить надо?
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40110989
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, при параметре TRUE приложение запускается, но управление в АКС не передается, все так и висит, пока приложение не закроешь. После этого выполнение программы продолжается
При параметре FALSE выполнение программы продолжается, но приложение не успевает открыться, то есть подхватывается старый процесс......
Где б середину то найти? что бы приложение запустилось и управление было обратно в код передано?
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111032
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111120
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311
А вот открыть повторно не соображу как....

Ватсон, сделайте в папке с интерфейсом копию управляющей программы, например CATIA_2 и запускайте её когда нужно любым удобным способом - хоть по ярлыку с рабочего стола, хоть по кнопке из формы в CATIA...
Единственное неудобство - нужно при внесении изменений в CATIA, делать новую копию CATIA_2, но и это можно автоматизировать - при запуске CATIA - убиваем старую версию CATIA_2 и делаем новую...
Естественно предполагается, что база разделенная и мы манипулируем только с управляющей программой...
Ну и естественно CATIA_2 ты сможешь запустить только один раз...
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111196
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извини - но не смог понять почти ничего....
vmag

Ватсон, сделайте в папке с интерфейсом

Это где? Есть папка где лежит база и есть папка где лежит CATIA.....Или еще где?
vmag
копию управляющей программы, например CATIA_2

Это имеется ввиду exeшник катин? Или еще один экземпляр базы?
vmag
и запускайте её когда нужно любым удобным способом - хоть по ярлыку с рабочего стола, хоть по кнопке из формы в CATIA...

это понял - но нужно запустить именно из Акса, из него же выполнить некоторые действия а потом закрыть новый экземпляр кати

vmag
Единственное неудобство - нужно при внесении изменений в CATIA, делать новую копию CATIA_2, но и это можно автоматизировать - при запуске CATIA - убиваем старую версию CATIA_2 и делаем новую...


Если бы можно было убивать уже открытый экземпляр - вопросов бы не было. Убивать нельзя, он должен остаться открытым

vmag
Естественно предполагается, что база разделенная и мы манипулируем только с управляющей программой...
Ну и естественно CATIA_2 ты сможешь запустить только один раз...

База разделенная....дальше не очень понял..... Холмс))))
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111217
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111227
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник

Думаю не поможет... открыт ли экземпляр CATIA или нет я могу определить через getobject
запустить второй могу допустим через wshell.run...
Наверное если в API покопаться поглубже - как-нибудь через hwnd или идентификатор процесса можно определить что второй экземпляр уже открылся...
А вот как его в обработку получить? в виде object нужной структуры?
через get или createobject первый открытый экземпляр подтягивается...
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111234
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311
Думаю не поможет... открыт ли экземпляр CATIA или нет я могу определить через getobject


ты можешь определить что первая программа открыта визуально (глазами) и в ней нажать кнопку открыть копию этой программы (они рядом лежат)


Serg197311
База разделенная....дальше не очень понял..... Холмс))))
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111236
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag

ты можешь определить что первая программа открыта визуально (глазами) и в ней нажать кнопку открыть копию этой программы (они рядом лежат)

Ну могу и так... вопрос вот в чем
"А вот как его в обработку получить? в виде object нужной структуры?
через get или createobject первый открытый экземпляр подтягивается..."
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111238
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311
"А вот как его в обработку получить? в виде object нужной структуры?


а с какой целью ?
мы там (во втором экземпляре) разве не собираемся работать с клавиатурой, кнопки нажимать ?
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111253
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag
Serg197311
"А вот как его в обработку получить? в виде object нужной структуры?


а с какой целью ?
мы там (во втором экземпляре) разве не собираемся работать с клавиатурой, кнопки нажимать ?

нет,не собираемся. Все что надо сделать - выполнит код из Акса.
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111257
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311,

наверно долгоиграющий ?
может его тупо запустить тут же только с DoEvents()
???
ну или копию настроить так, чтобы при старте отработал код и и она завершилась...
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111273
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag
Serg197311,

наверно долгоиграющий ?

Не понял

vmag
может его тупо запустить тут же только с DoEvents()
???
ну или копию настроить так, чтобы при старте отработал код и и она завершилась...

Код - в Аксе,не в Кате
Надо, чтобы Акс запустил второй экземпляр Кати,и в нем выполнил нужные действия(еще раз - действия выполняет код из Акса, не из Кати)
Уже получается все, кроме получения этого второго экземпляра Кати как object, чтобы действия выполнять именно в нем, а не в первом экземпляре.
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111315
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311,

кто такая катя?
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111350
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311
Надо, чтобы Акс запустил второй экземпляр Кати,и в нем выполнил нужные действия(еще раз - действия выполняет код из Акса, не из Кати)
перенести этот код в макрос CATIA, не вариант ?
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
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111359
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag
Serg197311,

кто такая катя?

CATIA
https://ru.wikipedia.org/wiki/CATIA
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111361
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
court
перенести этот код в макрос CATIA, не вариант ?

Не-а.... Надо из Акса
Если не найду выхода - буду ловить открытую Катю и сообщать юзеру чтобы он ее сам закрыл( мне из Акса - нельзя,там все не просто, и только юзер может решить, каким образом выходить и какие опции приэтом использовать)
Но не хотелось бы......
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111376
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311
Если не найду выхода - буду ловить открытую Катю и сообщать юзеру чтобы он ее сам закрыл
дык, нормальный вариант - "дёшево и сердито" :)

нуу, если очень сильно захочешь заморочиться, то тут - Доступ к нескольким работающим копиям CATIA (VB)
боролись с подобным (получение ссылок на все запущенные CATIA.Application), но там всё "сложно" ))
...
Рейтинг: 0 / 0
Повторно открыть приложение
    #40111388
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
court
, если очень сильно захочешь заморочиться, то тут - Доступ к нескольким работающим копиям CATIA (VB)
боролись с подобным (получение ссылок на все запущенные CATIA.Application), но там всё "сложно" ))

Спасибо!! От же ж блин какая закавыка то выходит.... Думал-как-то попроще можно.....
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Повторно открыть приложение
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]