如何在没有管理员权限的情况下调试 ASP.Net 程序






1.82/5 (7投票s)
2005年8月10日
2分钟阅读

25722
如果我们没有管理员权限,我们将无法调试甚至创建 Web 应用程序。我们也无法管理 IIS。这对于所有 asp.net 开发者来说确实是个问题。你可能会遇到像“无法调试,.....拒绝访问。”这样的错误。
引言
在很多公司,就像我的公司一样,安全政策规定任何人都不允许拥有自己计算机的管理员权限,尤其是对开发者而言,因为他们对系统非常了解。潜在地,他们可能会对计算机和整个公司造成不良影响。真的吗?我倒觉得这只是个玩笑J
内容
对于 asp.net 开发者或所谓的程序员,我们被授予 VS 开发者和调试器用户权限,甚至被禁止获得 Power User 权限。很容易理解,如果我们没有管理员权限,我们就无法调试甚至创建 Web 应用程序。我们也无法管理 IIS。这对于所有 asp.net 开发者来说确实是个问题。 你可能会遇到像“无法调试,.....拒绝访问。”这样的错误。
但是别担心。在 MSDN 的帮助和多次重启我的电脑后,我找到了解决方案。我不知道这对开发者和高层管理者来说是好消息还是坏消息。无论如何,我仅从技术角度分享解决方案给大家。
首先,如果文件系统是 NTFS,请为以下文件夹赋予写入权限。 否则,你可以在磁盘上写入文件,即使是 C 盘。
C:\WINDOWS\Microsoft.NET 和 C:\Program Files\Microsoft Visual Studio .NET 2003。(适用于 VS.Net 2003)
其次,请修改 machine.config。
(C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG\machine.config)。在此文件中,你可以找到一个名为 processModel 的节,并将用户名和密码更改为以下内容。
<processModel enable="true" timeout="Infinite" idleTimeout="Infinite"
shutdownTimeout="0:00:05" requestLimit="Infinite" requestQueueLimit="5000"
restartQueueLimit="10" memoryLimit="60" webGarden="false" cpuMask="0xffffffff"
userName="DomainName\Koffer" password="Abcd12345678" logLevel="Errors"
clientConnectedCheck="0:00:05" comAuthenticationLevel="Connect"
comImpersonationLevel="Impersonate" responseDeadlockInterval="00:03:00"
maxWorkerThreads="20" maxIoThreads="20"/>
O需要说明的一点是:密码是明文的,这似乎不安全。但没关系。
最后,重启你的电脑,你就会发现你可以成功创建 Web 应用程序并调试该应用程序了。
到目前为止,我们解决了大部分问题。但是当你尝试打开 IIS 时,你会发现里面是空的。这对我们来说也是个大问题。在这里,我们创建了一个批处理文件来使用管理员权限打开它。所以 管理员只需要输入一次密码。最重要的内容是批处理文件。
这是: runas /savecred /user:administrator "mmc compmgmt.msc"
请复制并将其保存到批处理文件,例如 OpenIIS.bat。是的,只有一句话,非常简单。
现在你会发现你可以像拥有管理员权限一样管理 IIS 了。
享受你的编程之旅。