vb.net自动关机 vb自动关机的代码

求一个VB检测鼠标键盘无操作自动关机脚本楼上vb的可行,在vb.net中不行,vb.net格式如下
Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.Data
Imports System.Drawing
Imports System.Text
Imports System.Windows.Forms
【vb.net自动关机 vb自动关机的代码】Imports System.Runtime.InteropServices
Public Class Form2
'定义结构体
Private Structure LASTINPUTINFO
Public cbSize As Int32
Public dwTime As Int32
End Structure
'引入系统API
Private Declare Function GetLastInputInfo Lib "user32" (ByVal plii As IntPtr) As Long '重新定义为 IntPtr
'在计时器中,进行相应的计算
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
'获取系统的运行时间
Dim systemUpTime As Integer = Environment.TickCount
Dim LastInputTicks As Integer = 0
Dim IdleTicks As Integer = 0
Dim LastInputInfo As New LASTINPUTINFO()
LastInputInfo.cbSize = Len(LastInputInfo)
Dim thObject2 As Runtime.InteropServices.GCHandle = Runtime.InteropServices.GCHandle.Alloc(LastInputInfo, Runtime.InteropServices.GCHandleType.Pinned)
Dim tpObject2 As IntPtr = thObject2.AddrOfPinnedObject() '取得指向结构的指针
'获取用户上次操作的时间
If GetLastInputInfo(tpObject2) Then
LastInputTicks = CInt(thObject2.Target.dwTime)
'LastInputTicks = CInt(LastInputInfo.dwTime)
'求差,就是系统空闲的时间
IdleTicks = systemUpTime - LastInputTicks
End If
lblSystemUpTime.Text = "系统运行时间:" + Convert.ToString(systemUpTime / 1000) + " 秒"
lblIdleTime.Text = "系统空闲时间:" + Convert.ToString(IdleTicks / 1000) + " 秒"
End Sub
End Class
VB.NET 2005编写定时关机程序 最近在网上搜索了一些关于实现关机 重启 注销的文章 发现大多介绍的是VB NET 用API实现这些功能 且在XPsp 环境下无法正常的关机与注销 而对于VB NET 的介绍几乎没有 本文章所涉及的知识点有
用实现关机 重启 注销功能 通过使用textbox与timer控件的结合编写定时器功能 为你的程序加上超链接
本篇文章具有一定的基础性和广泛的实用性 相信能够给 初学者带来一定的帮助
本文所使用的编程环境是Microsoft Visual Studio 首先打开 Visual Studio 在文件 (File) 菜单上 单击新建项目 (New Project) 在新建项目 (New Project) 对话框的模板 (Templates) 窗格中 单击 Windows 应用程序 (Windows Application) 单击确定 (OK)
具体步骤如下
首先在Form 窗体上添加一个Label 控件属性text设置为:今天: 然后分别添加 个button控件name分别为button button button 它们的text属性分别为 关闭计算机(启动定时器) 注销 重新启动

现在我们就需要为程序加上一个定时器了 这个定时器需要与textbox 控件相关联 输入正确时间格式后就可以启动定时功能了 然后我们需要在窗体上添加一个timer 一个textbox 控件 和一个RadioButton 控件 让它们保留默认值不变 其中 TextBox 控件的text属性设置为 : : RadioButton 控件text设置为 指定时间关机|时间格式 小时: 分钟: 秒如图 所示

以上界面工作基本完成现在需要输入代码了
双击窗体进入常规 声明Public Class Form 事件中
CODE
Imports System Runtime InteropServicesImports Microsoft VisualBasicPublic Class Form_ 调用系统参数Friend Shared Function GetCurrentProcess() As IntPtrEnd Function
_Friend Shared Function OpenProcessToken(ByVal h As IntPtr
ByVal acc As Integer ByRef phtok As IntPtr) As BooleanEnd Function
_Friend Shared Function LookupPrivilegeValue(ByVal host As String
ByVal name As String ByRef pluid As Long) As BooleanEnd Function

推荐阅读