1

当 Visual Studio 在没有管理员的情况下运行时。特权和

我正在为 COM 互操作注册 .dll,错误消息是:

Cannot register assembly "myassembly.dll" - access denied. 
Please make sure you're running the application as administrator. 
Access to the registry key 'HKEY_CLASSES_ROOT\' is denied.

我在 IIS 上运行 Web 应用程序,错误消息是:

The Web Application Project PSW is configured to use IIS. 
To access local IIS Web sites, you must run Visual Studio 
in the context of an administrator account.

我已将 Visual Studio 设置为管理员运行以避免这些错误。但是 UAC 消息让我很恼火(但我不想关闭 UAC)。
有没有办法正常运行 Visual Studio 并使用 COM Interop 或 IIS?我的意思是,例如对注册表或 IIS 的一些访问权限,或者将 regasm 设置为以管理员身份运行。

4

1 回答 1

1

UAC 要求应用程序将自身拆分为标准的用户友好部分和仅限管理员的部分,然后您可以仅在需要仅管理员的部分时请求提升(动态提升)。

然而,当前的 Visual Studio 版本,2008 年、2010 年,甚至 11 Beta 仍然是单体(如单体内核,http ://en.wikipedia.org/wiki/Monolithic_kernel )。所以现在不可能达到你想要的,你必须习惯它。

某些对注册表或 IIS 的访问权限无济于事,因为您显然对 Visual Studio 的考虑太少了 :) 它是一个更大的系统,依赖于太多的底层位。

于 2012-05-09T08:40:48.827 回答