Answers:
您可以创建计划任务,该任务将在计算机解锁后运行:
另外,我调整了脚本中的路径以读取
echo %USERNAME% logged on at %DATE% %TIME% >> %USERPROFILE%\log.txt
如果您已有脚本:
将登录脚本分配给用户或组
哪里?系统工具/本地用户和组/用户
创建登录脚本
您可以使用登录脚本来分配将在用户登录到特定计算机时执行的任务。这些脚本可以执行操作系统命令,设置系统环境变量,以及调用其他脚本或可执行程序。Windows Server 2003家族支持两种脚本环境:命令处理器运行包含批处理语言命令的文件,而Windows脚本宿主(WSH)运行包含Microsoft Visual Basic脚本版本(VBScript)或Jscript命令的文件。您可以使用文本编辑器创建登录脚本。登录脚本通常执行的一些任务包括:
通过调用WSH Network对象的MapNetworkDrive方法和WSH Network对象的UserName属性,它将H:驱动器映射到用户的主目录。它使用ADSI IADsADSystemInfo对象获得当前用户的专有名称,该名称又用于连接到Active Directory中的相应用户对象。建立连接后,将使用用户的memberOf属性来检索用户所属的组的列表。组名称的多值列表通过使用VBScript的Join函数连接到单个字符串中,从而使搜索目标组名称更加容易。
如果当前用户是脚本顶部定义的三个组之一的成员,则该脚本会将用户的G:驱动器映射到组共享驱动器,并将用户的默认打印机设置为组打印机。创建示例登录脚本
复制并粘贴或键入以下内容:
Const ENGINEERING_GROUP = "cn=engineering"
Const FINANCE_GROUP = "cn=finance"
Const HUMAN_RESOURCES_GROUP = "cn=human resources"
Set wshNetwork = CreateObject("WScript.Network")
wshNetwork.MapNetworkDrive "h:",
"\\FileServer\Users\" & wshNetwork.UserName
Set ADSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" &
ADSysInfo.UserName)
strGroups = LCase(Join(CurrentUser.MemberOf))
If InStr(strGroups, ENGINEERING_GROUP) Then
wshNetwork.MapNetworkDrive "g:",
"\\FileServer\Engineering\"
wshNetwork.AddWindowsPrinterConnection
"\\PrintServer\EngLaser"
wshNetwork.AddWindowsPrinterConnection
"\\PrintServer\Plotter"
wshNetWork.SetDefaultPrinter
"\\PrintServer\EngLaser"
ElseIf InStr(strGroups, FINANCE_GROUP) Then
wshNetwork.MapNetworkDrive "g:",
"\\FileServer\Finance\"
wshNetwork.AddWindowsPrinterConnection
"\\PrintServer\FinLaser"
wshNetWork.SetDefaultPrinter
"\\PrintServer\FinLaser"
ElseIf InStr(strGroups, HUMAN_RESOURCES_GROUP) Then
wshNetwork.MapNetworkDrive "g:",
"\\FileServer\Human Resources\"
wshNetwork.AddWindowsPrinterConnection
"\\PrintServer\HrLaser"
wshNetWork.SetDefaultPrinter
"\\PrintServer\HrLaser"
End If
在文件菜单上,单击另存为。
我能想到的最简单的方法是将其放在启动文件夹中的.bat文件中。
一种更复杂的方法是将批处理文件添加到注册表中的
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
注册表项。
一个很好的替代方法是使用要在其中运行的命令来创建批处理文件。接下来,您将在计算机上的策略编辑器中指定它在登录过程中运行登录脚本。快速说明:此选项仅在XP Pro上可用,而在家用版本上不可用。
有人知道在屏幕锁定/解锁时是否也可以运行它?
Windows 7和/或Windows Server 2008有一种方法。
使用任务计划程序,创建新的基本任务,作为触发器使用“登录时”。
没必要!Windows已经具有一种将其记录在事件日志中的机制。事件ID为4624(在Vista之前的系统上为528)。