2

我创建了一个 DLL 来替换 GINA。当我调用WlxDialogBoxParam显示我自己的登录对话框时,该对话框没有激活。我究竟做错了什么?我已经尝试过调用SetActiveWindowWM_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;
}
4

0 回答 0