Закрытие использования приложения WiX

"Корректный" способ сделать это должно ответить на сообщение WM_SYSCOMMAND. В C# это выглядит примерно так:

protected override void WndProc(ref Message m)
{
    // Abort screensaver and monitor power-down
    const int WM_SYSCOMMAND = 0x0112;
    const int SC_MONITOR_POWER = 0xF170;
    const int SC_SCREENSAVE = 0xF140;
    int WParam = (m.WParam.ToInt32() & 0xFFF0);

    if (m.Msg == WM_SYSCOMMAND &&
        (WParam == SC_MONITOR_POWER || WParam == SC_SCREENSAVE)) return;

    base.WndProc(ref m);
}

Согласно MSDN, если пароль экранной заставки включен политикой в отношении Vista или выше, это не будет работать. По-видимому, программно перемещение мыши также проигнорировано, хотя я не протестировал это.

7
задан tshepang 5 May 2014 в 17:48
поделиться

1 ответ

Вы можете попробовать войти в установку и посмотреть, что можно отследить. Попробуйте запустить установщик из командной консоли следующим образом:

msiexec.exe /i [msi filename] /log [filepath\logfilename.log]
7
ответ дан 7 December 2019 в 07:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: