我刚刚接到一个特别棘手的项目。我想到了一个毫无疑问很糟糕的完成方法,所以我想把这个项目公布出来,看看是否有人有什么见解。
要求如下:需要向用户 A 显示跨两个 Windows 2k3 终端服务器运行可执行文件 A 的人员列表。用户 A 不是管理员,不应具有管理员权限,也不应拥有管理员帐户的任何密码。
哎哟。
所以这就是我想到的。Visual Fox Pro 9 是我的主要开发工具。我自动结合了 PSEXEC、CMD.exe 和 Tasklist.exe,以便将正确的列表转储到我可以获取数据并将其显示给用户的位置。我不必向用户提供任何密码即可完成工作,这是一个优点,但它有太多缺点,简直太荒谬了。
那么,您认为怎样?D.
答案1
为什么不简单一点,为 tasklist.exe(作为管理员 svc 帐户)创建一个每 5 分钟运行一次的计划任务,并使用管道“>”将其转储到公共目录中的文本文件中?这样,如果以后由于简单性而需要更改,任何系统管理员或开发人员都可以进行补充。
答案2
你的环境中安装了 powershell 吗?
以下是可用数据的一个示例:
Get-Process <PROCESS_NAME> | ConvertTo-HTML | Out-File C:\www\Test.html
就这样!
您想在远程机器上执行此操作吗?(仅限 Powershell v2,在 v1 中可行但比较混乱)
Get-Process <PROCESS_NAME> -computername <COMPUTER_NAME> | ConvertTo-HTML | Out-File C:\www\Test.html
(顺便说一句,你这样做并没有错……)