Я создал DLL для замены GINA.
Когда я вызываю WlxDialogBoxParam
, чтобы отобразить мой собственный диалог входа в систему, он не становится активным. Что я делаю неправильно?
Я пытался дозвониться до SetActiveWindow
на событии WM_INITDIALOG
, но это не помогло.
Я вызываю WlxDialogBoxParam
со следующими параметрами:
WlxDialogBoxParam(hWlx, GetMyInstance(), MAKEINTRESOURCE(IDD_LOGON), 0, DialogProc, (LPARAM)this);
где DialogProc определяется следующим образом:
Код:
INT_PTR DialogProc(UINT msg, WPARAM wp, LPARAM lp) {
switch (msg) {
case WM_INITDIALOG:
SetFocus (GetDlgItem(_hwnd, IDC_NAME));
return FALSE;
case WM_COMMAND: {
switch (LOWORD(wp)) {
case IDOK:
EndDialog(_hwnd, IDOK);
break;
case IDCANCEL:
EndDialog(_hwnd, IDCANCEL);
break;
}
return TRUE;
}
}
return FALSE;
}