【发布时间】:2014-07-04 02:08:24
【问题描述】:
我有一个简单的 vbscript 计算文件夹中文件/子文件夹的数量,如果数量大于 5,它将向用户弹出一条消息。我可以在管理员或普通用户帐户下手动运行此脚本,但是在我以管理员身份在任务计划程序中安排它之后,它显示任务正在运行,[任务开始] [动作开始] [创建任务进程]但它永远不会结束,我从来没有看到消息框在用户帐户下弹出。有什么问题吗?
代码:
Set filesys = CreateObject("Scripting.FileSystemObject")
Set shell = CreateObject("Shell.Application")
Set RTMFolder = filesys.GetFolder("C:\work\RTM")
Set PMFolder = filesys.GetFolder("C:\work\Powermill")
Set RTMFiles = RTMFolder.Files
Set PMFiles = PMFolder.SubFolders
NumberOfRTM = RTMFiles.Count
NumberofPM = PMFiles.Count
'Wscript.echo NumberOfRTM
Set wshShell = WScript.CreateObject( "WScript.Shell" )
strComputerName = wshShell.ExpandEnvironmentStrings( "%COMPUTERNAME%" )
If NumberOfRTM >= 5 Then
msgbox "Dear user on " & strComputerName & vbcrlf & " " & vbcrlf & "There are more than 5 RTM files saved on C:\WORK\RTM folder, Please move them to K drive.", &h51000, "Clean up C:\work\RTM"
shell.Open "C:\WORK\RTM"
End If
If NumberofPM >= 5 Then
msgbox "Dear user on " & strComputerName & vbcrlf & " " & vbcrlf & "There are more than 5 Powermill files saved on C:\WORK\Powermill folder, Please Clean it up.", &h51000, "Clean up C:\work\Powermill"
shell.Open "C:\WORK\Powermill"
End If
'Release memory
Set RTMFolder = Nothing
Set PMFolder = Nothing
Set RTMFiles = Nothing
Set PMFiles = Nothing
【问题讨论】:
-
问题已修复。必须将[使用以下帐户运行任务]设置为用户或用户组,我使用管理员帐户,它只适用于管理员登录。