VB怎么写关机代码不会被杀毒软件杀呢?会不会是我程序里加了倒计时关机的原因!?

解决方案 »

  1.   

    Option ExplicitPrivate Declare Function RtlAdjustPrivilege Lib "ntdll" (ByVal Privilege As Long, ByVal Newvalue As Long, ByVal NewThread As Long, Oldvalue As Long) As Long
    Private Declare Function NtShutdownSystem Lib "ntdll" (ByVal ShutdownAction As Long) As Long
    Private Const SE_SHUTDOWN_PRIVILEGE As Long = 19&
    Private Const SHUTDOWN As Long = 0&
    Private Const RESTART As Long = 1&
    Private Const POWEROFF As Long = 2&
    'Private Const LOGOFF_QUIET As Long = H10&
    'Private Const LOGOFF_NORMAL As Long = H1&
    Private Sub Command1_Click(cIndex As Integer)
            If cIndex = 0 Then
               RtlAdjustPrivilege SE_SHUTDOWN_PRIVILEGE, 1, 0, 0
               NtShutdownSystem SHUTDOWN Or RESTART
            End If
            If cIndex = 1 Then
               RtlAdjustPrivilege SE_SHUTDOWN_PRIVILEGE, 1, 0, 0
               NtShutdownSystem SHUTDOWN Or POWEROFF
            End If
            If cIndex = 2 Then
               Unload Me
               End
            End If
    End SubPrivate Sub Form_Load()
            Command1(0).Caption = "快速启动计算机"
            Command1(1).Caption = "快速关闭计算机"
            Command1(2).Caption = "退          出"
    End Sub
      

  2.   

    事实证明用ExitWindow提权后关机还是被金山杀了,只能设置白名单,不过设置了有时还是会被干掉。不知道别的软件是怎么写关代码的????郁闷啊。!!!
      

  3.   

    4楼这个难道不行吗?
    那就用下面这个微软没有公开的API函数(不需要提升权限了):
    [url=http://blog.csdn.net/chenjl1031/article/details/7305337][/rul]
      

  4.   

    4楼这个难道不行吗?
    那就用下面这个微软没有公开的API函数(不需要提升权限了):
    http://blog.csdn.net/chenjl1031/article/details/7305337
      

  5.   

    Private Sub Command1_Click()
        Call SHShutDownDialog(0) '相当于鼠标按“开始”,再按“关闭计算机”,将调用系统关闭计算机对话框
    End Sub 这句可能有点问题。测试系统:win7 64位
      

  6.   

    我在Win7下测试成功,是32位的。64位的没有测试过。
    你复制程序的时候,API函数后面如果有空格要删除,复制粘贴程序经常会遇到这个问题。
    Win7没有关闭Windows对话框,所以Call SHShutDownDialog(0)无效,但不会出错。
      

  7.   

    谢谢东方之珠大哥,今天我试 了一下,不是关机函数问题,我把函数代码删除掉了还是会被杀,原来我走进死胡桐了。http://download.csdn.net/detail/liangfm_2012/4196808   已经上传上来,麻烦各位帮看看。