想对系统的用户登陆情况做记录,记录的内容包括每次的开关机、注销时间和登陆的用户名,另外还想每次用户锁定系统和接触锁定做记录,包括时间和用户名。怎样实现呢?关机时间捕获EndSession?锁定捕获LockWorkStation?怎么捕获呢?小弟新手,能给出code讲解最好
急急急!!

解决方案 »

  1.   

    多谢上边两位,一定要用Gina么?有没有别的途径?
      

  2.   

    如何用VB制作一个开机关机记录程序。
      首先了解这个程序的工作原理:在计算机启动后,Windows打开这个程序,程序便会自动记录下开机的时间,当关机时,Windows关闭这个程序,程序会记录下关机的时间,并把它们以.txt格式保存下来。
      接着,开始制作程序和设置系统。
      第一步:打开VB,新建一个窗体,用鼠标左键双击窗体,输入以下代码。
      Dim   begintime
      Private   Sub   Form_Load()
      Me.Hide
      begintime=Now
      End   Sub
      Private   Sub   Form_Unload(Cancel   As   Integer)
      endtime=Now
      n=DateDiff(″N″,begintime,endtime)
      Dim   fso   As   New   FileSystemObject
      Dim   txtfile   As   TextStream
      Set   a=App
      If   fso.FileExists(a.Path   &   ″\开机记录.txt″)   Then
      Set   txtfile=fso.OpenTextFile(a.Path   &   ″\开机记录.txt″,ForAppending)
      Else
      Set   txtfile=fso.OpenTextFile(a.Path   &   ″\开机记录.txt″,ForWriting,True)
      End   If
      txtfile.Write   ″开机时间″   &   begintime
      txtfile.Write   ″  ″&″关机时间″&   endtime
      txtfile.Write   ″  ″&″时间长度″&   n   &   ″分钟″
      txtfile.WriteBlankLines   2
      End   Sub
      第二步:单击“文件”菜单中的“生成工程.EXE”选项(或   “File”   菜单中的“Make   *.EXE”选项),选择路径保存。
      第三步:在Windows资源管理器中将刚制作的程序复制到计划任务中,并双击它。在“计划”选项卡中将程序设置为每次启动计算机时运行。重新启动计算机。
      最后,讲一下如何查看开机记录。当再次开机时,便可以在保存程序的文件夹中看到一个名为“开机记录”的TXT文件,打开它,就可以看到上次开机的记录。
      

  3.   

    启动时间可以通过获得 winlogon.exe 的启动时间来得到
    关机时会发送WM_ENDSESSION 和 WM_QUERYENDSESSION 的消息,捕获这两个就可以了
    至于锁定的时间 估计是要通过gina来获得了
      

  4.   

    用Winlogon Notification Packages解决了
      

  5.   

    Notification Packages 在2000下可以吗?