【发布时间】:2011-04-17 21:32:06
【问题描述】:
我正在尝试创建一个运行 PowerShell 脚本的 ASP.NET/C# 页面,该脚本将运行一个 .exe 安装程序。 ASP.NET 页面当前在 Windows Server 2003 上的 IIS 6.0 中运行。PowerShell 脚本在 PS 命令行中可以正常工作,但是当从 ASP.NET 页面调用时,页面会挂起。没有创建任何进程,似乎服务器似乎永远挂起。我已经成功获得了运行简单 Cmdlet 或其他脚本的其他 PowerShell 脚本以从 ASP.NET 页面工作。
我已验证该网站具有脚本和执行权限,并且 ASP.NET 页面可以看到磁盘上的脚本。当我在命令行上运行脚本时,我是管理员用户,我在 ASP.NET 页面中检查了该用户,并且它以“NT AUTHORITY\NETWORK SERVICE”用户身份运行。我授予该用户执行脚本的完全权限,但没有任何更改。
我觉得问题是 1. 我在 Windows 中仍然是新手的用户权限。 2. 提示执行我没有回答的脚本,但是从 ASP.NET 页面运行时不显示 Windows 或提示(从命令行运行脚本时会显示安装程序)。
【问题讨论】:
-
我已经看到以这种方式运行 powershell 脚本无法正确加载环境变量的问题,因此 powershell 可能不知道要使用哪些模块。但是,我已经很久没有这样做了。如果没有产生任何进程,那可能不是问题。与任何事情一样,从小处着手并开始增加复杂性,直到它“崩溃”。
标签: c# asp.net windows iis powershell