![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,726
|
![]()
WaitForSingleObject не гарантирует, что программа не меняется или ее кто-то не меняет. Он лишь говорит, что сменилось состояние программа выполняется.
Если вам такое же поведение надо, то просто открывайте и читайте файл. |
![]() |
![]() |
![]() |
#12 |
Пользователь
Регистрация: 17.05.2015
Сообщений: 28
|
![]() |
![]() |
![]() |
![]() |
#13 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,726
|
![]()
Стоп. Вы же в первом посте написали, что WaitForSingleObject вам хватает для программ. Разговор был про файлы или нет?
|
![]() |
![]() |
![]() |
#14 |
Пользователь
Регистрация: 17.05.2015
Сообщений: 28
|
![]() |
![]() |
![]() |
![]() |
#15 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,726
|
![]()
Читаю. Про это вам и написал. В вашем случае либо просто читать файл, либо если так печет запускать и ожидать ту программу, которая работает с вашим файлом (например, notepad). Но это печальный путь, тот же блокнот может незакрывая открыть другой файл.
|
![]() |
![]() |
![]() |
#16 |
Пользователь
Регистрация: 17.05.2015
Сообщений: 28
|
![]()
То что может открыть понятно, но тут хотя бы так сделать .-.
|
![]() |
![]() |
![]() |
#17 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
![]()
А в чем суть проблемы?
|
![]() |
![]() |
![]() |
#18 |
Пользователь
Регистрация: 17.05.2015
Сообщений: 28
|
![]()
Есть ShellExecute, открывает ЛЮБЫЕ файлы (в том числе и экзешники), как и нужно, но нельзя отследить момент закрытия файлов.
Есть CreateProcess / WaitForSingleObject, позволяет отследить момент закрытия файлов, НО открывает только экзешники, или же приходится прописывать ручные пути к экзешнику программы через которую открыть. Мне нужно ShellExecute с WaitForSingleObject |
![]() |
![]() |
![]() |
#19 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
![]()
Это не суть проблемы, это попытка ее решить.
Я спрашиваю какова конечная цель. Кстати, ShellExecute в итоге обращается к CreateProcess так что процессы запущенные им можно ровно так же отслеживать. Так же можно не использовать ShellExecute а напрямую вызвать CreateProcess с нужными параметрами - все прописано в реестре. |
![]() |
![]() |
![]() |
#20 |
Пользователь
Регистрация: 17.05.2015
Сообщений: 28
|
![]()
Мне нужно отследить когда закрыли открытый через ShellExecute файл.
WaitForSingleObject работает в ShellExecute, не спорю, но он возвращает значение сразу же при открытии, не знаю почему, в то время как в CreateProcess срабатывает правильно, в момент закрытия. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
отследить разбегание | Sashenka1 | Общие вопросы Delphi | 0 | 04.04.2016 16:40 |
Отследить ошибку | LuxMi | C# (си шарп) | 5 | 01.02.2013 09:25 |
Отследить программу | Михаил Юрьевич | Общие вопросы Delphi | 6 | 09.09.2012 17:06 |
Отследить проблему | giarmul | JavaScript, Ajax | 0 | 09.08.2010 20:49 |
Отследить стринги | san72 | Общие вопросы Delphi | 2 | 30.05.2009 17:40 |