Автор | Сообщение |
|
| |
Пост N: 44
Зарегистрирован: 17.06.10
|
|
Отправлено: 09.12.10 11:46. Заголовок: Свой Word-объект
В программе MY.EXE делаем CreateObject(Word.Application). Ежели задачу MY.EXE прервать через таскбар, то в списке задач остается висеть процесс Winword.exe При повторном запуске MY.EXE попытка выполнить CreateObject(Word.Application) даст ошибку. Что процесс несет в себе информацию о задаче его породившем, ведь если в таскбаре висят только Winword.exe открытые обычным способом, то CreateObject(Word.Application) просто создаст новый экземлляр Winword.exe ?
|
|
|
Ответов - 5
[только новые]
|
|
|
| moderator
|
Пост N: 131
Зарегистрирован: 11.02.10
|
|
Отправлено: 09.12.10 12:38. Заголовок: fil пишет: При повт..
fil пишет: цитата: | При повторном запуске MY.EXE попытка выполнить CreateObject(Word.Application) даст ошибку. |
| Да, все верно. Поэтому попробуй такой подход цитата: | LOCAL oWord, oText TRY oWord := GetActiveObject( "Word.Application" ) CATCH TRY oWord := CreateObject( "Word.Application" ) CATCH Alert( "ERROR! Word not avialable. [" + Ole2TxtError()+ "]" ) RETURN END END |
|
|
|
|
|
| |
Пост N: 45
Зарегистрирован: 17.06.10
|
|
Отправлено: 09.12.10 12:47. Заголовок: Нет, меня интересова..
Нет, меня интересовало как по процессу определить задачу его породившую. А GetActiveObject( "Word.Application" ) использовать (именно для Word) не всегда здорово - в некоторых ситуациях команды Word отрабатывает неадекватно
|
|
|
|
| |
Пост N: 46
Зарегистрирован: 17.06.10
|
|
Отправлено: 09.12.10 16:54. Заголовок: По идее, parentproce..
По идее, parentprocessid вторичного процесса должно равняться processid родительского однако это не так
|
|
|
|
| |
Пост N: 39
Зарегистрирован: 28.07.10
|
|
Отправлено: 11.12.10 12:32. Заголовок: Я делал так oExcel..
Я делал так oExcel:= TOleAuto():New( "Excel.Application" ) if Ole2TxtError() != 'S_OK' MsgExclamation('Excel is not available!','Excuse me') Return endif при частом падении программы в процессе отладки в памяти висели несколько процессов Excel но это не мешало повторному запуску (и повторному падению с оставлением еще одного экземпляра Excel) Удаление этих процессов Excel в ТаскМэнеджере тоже не приводило ни к каким неприятностям.
|
|
|
|
| |
Пост N: 14
Зарегистрирован: 19.05.05
|
|
Отправлено: 11.12.10 12:55. Заголовок: Я уже писал, что мен..
Я уже писал, что меня больше интересует как по процессу определить задачу его породившую. А Word/Excel взяты просто для примера
|
|
|
|