Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Рестарт/перезапуск TC 
Author Message
Skif_off



PostPosted: Fri Mar 08, 2019 10:57    Post subject: Reply with quote

Flasher wrote:
2 сотни с потолка взято, я так понимаю?

Ты "грубо говоря" забыл зацепить.
Flasher wrote:
Ничего подобного. Это вполне может значить, что она не успела получить PID.

Т.е. процесс создан, во всю рисует окно, а у тебя PID всё ещё не получен? Загугли описание CreateProcess, оно везде одинаковое:
Quote:
Return Value

If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. ...
Note that the function returns before the process has finished initialization.

Flasher wrote:
WinWaitActive годится, т.к. ждёт активации, а не уже активного окна. И модальность тут за уши притягивать смысла нет, т.к. закрывался активный экземпляр. Плюс мне было на чём проверять, это не чьи-то домыслы, а подтверждено на практике.

Годится, если активным не успело вылезти окно другой копии, модальность тут - пример причины, когда это происходит без участия и желания пользователя.
Ну а на моей практике с двумя и более копиями (не только тестов, но просто использования) неприлично часто бывало, что не то окно закрыто или не то активировано. Ты ведь не думаешь, что от нечего делать у себя получаю PID родительской копии TC вместо поиска активного окна?

P.S. К слову, с COM-объектами могут быть сюрпризы в WinPE.
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group