我正忙于弄清楚 Vista 上的用户权限和安全设置。情况是这样的:
我有一个 32 位 C++ 应用程序,它充当进程外(==独立 exe)COM 服务器。我有几个使用此服务器的 .Net、FoxPro、X++ 和 C/AL 客户端应用程序。它们都适用于 WindowsXP。他们通常在 Windows Vista 上工作(32/64 似乎没有什么区别)。然而,Vista 上的行为非常不稳定。它通常是这样的:
1) 从客户端实例化 COM 对象(从而启动服务器)-> 成功
2) 将前几条命令发送到服务器 -> 成功
3) 崩溃并出现异常,说明客户端 COM 对象未绑定(bind)?!卧槽?!我们刚刚在第 2 步成功使用了这个对象!
如果我在客户端程序上“以管理员身份启动”,它总是能正确可靠地工作。但是,仅以管理员身份登录并通过双击启动客户端将失败。两者有什么区别?
客户端和服务器在同一台机器上本地运行。这是在虚拟机上全新安装 Vista Ultimate 32 位。
我完全不知所措。有什么建议吗?
最佳答案
关于在 vista 中成为管理员和 ADMINISTRATOR 之间的区别的一些评论可在此处获得:link text
你能把你的 com 对象安装成一个合适的服务吗,我想默认情况下它会以管理员身份运行
关于c++ - Vista 和进程外 COM 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1681672/