我在做一个考勤系统,要求随机先启动,并锁屏.等员工输入自己的名字后,解屏并记录上班的时间.想知道怎么锁屏啊?现在是弹出个对话框再让它最大.
SetWindowPos(NULL,0,0,2048,1024,SWP_SHOWWINDOW);
并用函数SystemParametersInfo(SPI_SETSCREENSAVERRUNNING,true,0,SPIF_UPDATEINIFILE);
但是好象是很低级啊.我用LockWorkStation()
怎么都是error C2065: 'LockWorkStation' : undeclared identifier啊?我加头文件了啊.有谁还有更好的方法?
我在线等

解决方案 »

  1.   

    应该有更好用的API吧
    如果用我这些平民的想法~
    你可以处理CEDIT的焦点处理函数~
    当失去焦点时就重新定位到该焦点并设置鼠标的移动范围,直到密码输入正确.但应该有BUG的~例如通过两次失去焦点的方法()被人用任务管理器把他关掉了~ 或用键盘快截键搞定,,这只是我个看法~
      

  2.   

    CreateDesktop创建一个新桌面,再SwitchDesktop切换到这个桌面,然后创建并显示窗口,通过后再SwitchDesktop切回原桌面。