|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.10.2013, 13:25 | #1 |
Регистрация: 22.07.2010
Сообщений: 3
|
Несколько экземпляров приложения
Пишу небольшую утилиту на C#. Казалось все просто, да не тут-то было.
Задача (по этапам): 1) запустить документ (в ассоциированном с разрешением файла приложении); 2) получить ссылку на главное окно приложения; 3) изменить размеры окна. Изменить размеры просто, а вот получить ссылку не очень: дело в том, что не все приложения для каждого открытого документа используют отдельный процесс. Например, Acrobat Reader при открытии второго PDF-документа запускает второй процесс (точнее два, но не суть), а потом находит первый процесс и закрывает второй, перемещая документ в памяти. Так вот, первоначальная задача свелась к задаче перехвата события закрытия процесса (вариант с таймерами не предлагать - по-деревенски, я ищу лучший способ). В случае с Acrobat'ом ничего сложного: в .NET есть событие Код:
Но помимо PDF-документов есть еще куча других, в частности Djvu. В качестве читалки использую WinDjView. И на этой программе вышеуказанное событие не сработало при открытии второго документа. Т.е. ведь как обычно: запускается второй процесс, пытаемся установить мьютекс, не получается (процесс уже запущен), передаем все что надо и закрываем процесс (тут-то и срабатывает вышеуказанное событие). Помогите, пожалуйста, понять какие механизмы ОС использует WinDjView и почему второго процесса не создается. Благодарю. |
13.10.2013, 15:24 | #2 |
Регистрация: 22.07.2010
Сообщений: 3
|
Ответ, кажется, найден. DDE.
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Много экземпляров объекта | CeHTuJI | Общие вопросы Delphi | 6 | 30.08.2013 07:07 |
Открыть несколько экземпляров формы | Shouldercannon | Общие вопросы Delphi | 11 | 27.08.2013 13:10 |
массив экземпляров класса | flibustier912 | Visual C++ | 1 | 05.05.2012 01:00 |
Печатать репорт в несколько экземпляров | chugo | Microsoft Office Access | 1 | 27.09.2010 06:27 |
Проверка количества запущенных экземпляров приложения | yulia | Общие вопросы Delphi | 3 | 07.10.2008 02:30 |