Мне нужно убедиться, что explorer.exe
работает как системная оболочка. Что мне нужно сделать, это:Решение: Будет ли explorer.exe работать как оболочка Windows?
- перезапись текущей оболочки (
Winlogon\Shell
) сexplorer.exe
- Run
explorer.exe
(как оболочки) - Переписать текущую оболочку с моей собственной оболочки.
Между двух последних шагов гонки:
- Если я перезаписать текущую оболочку с моей собственной оболочки слишком быстро, только открывается окно «Мои документы».
Вопрос в том, есть ли какие-либо события/мьютексы/обратные вызовы, которые я могу вызвать, чтобы убедиться, что проводник инициализирован как оболочка?
Лучшее, что я смог сделать, это ждать окна лотка, как:
while(!FindWindow("Shell_TrayWnd", NULL)) {
sleep(250);
}
Что выглядит своего рода небрежный, есть лучший способ?
То, что я делаю. Он находится в разделе реестра Winlogon \ Shell. – arul
Зачем использовать explorer.exe как оболочку, а затем заменить ее позже? –
Программное обеспечение для киоска. – arul