我是PowerShell Noob所以请原谅。 在运行专用Outlook VBA应用程序的Win 2008 R2服务器上有一个Windows ID。 我已经尝试了如何让服务器重新启动时使用这个用户标识的build议,但是他们不成功。 我今天早上的想法是,如果有可能创build一个按时间表运行的Cron任务,检查用户标识是否login,如果不是实际强制login。
提前感谢您的帮助。
如果您只需要以该用户身份运行Outlook,那么我认为TheCleaner的build议可能是最好的select。 您可以从命令行执行此操作,然后从服务控制台更改服务所运行的用户。 看看下面的链接,如果你想没有第三方的应用程序。
https://stackoverflow.com/questions/3582108/create-windows-service-from-executable
回复评论,这里是如何开始使用PowerShell的首发。 如果这需要调整,请提供更多的上下文。
$hostname = "serverName" $username = "CKnutson" $processName = "outlook" $session = New-PSSession $hostname Enter-PSSession $session $processes = @() $processes += Get-Process -IncludeUserName | Where-Object {$_.UserName -like "*$username" -and $_.Name -like "$processName"} if ($processes.Count -eq 0) { Start-Process -FilePath "C:\proc.exe" -ArgumentList "-Silent" -LoadUserProfile }
这应该打开远程控制台到您要运行Outlook的服务器,检查是否有一个正在运行的进程,然后启动它,如果需要的话。