在开发服务器上运行时,COM 对象会加载到 MVC 项目中,但在 IIS 上运行时不会加载?
我在 MVC 3 项目中引用 COM API,当我在 VS 开发服务器上运行该项目时,我可以与 API 正常交互。但是,当我在 IIS 7.5 上运行时,API 仅返回空对象。不会抛出任何错误,它只是对所有内容返回 null。
我不知道 COM 周围是否存在安全问题,我假设计算机上的任何用户都可以与计算机上安装的 COM 引用进行交互?
I am referencing a COM API in my MVC 3 project, and when I run the project on VS development server I can interact with the API fine. However, when I run on IIS 7.5, the API only returns null objects. No error is thrown it simply returns null for everything.
I have no idea if there are security issues surrounding COM, I assumed any user on a machine could interact with a COM reference installed on the machine?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
当从服务中使用时,COM 很容易出现权限/权利问题(IIS 只是一个特殊的)...如果 COM 对象执行“类似桌面”的操作(即 Excel 或类似的操作),那么自 Vista 以来,它会更加受到锁定。 ..
您可以尝试以某种方式规避这一点,但我不建议这样做...
COM is prone to permissions/rights issues when used from a Service (IIS is just a special one)... IF the COM objects do something "desktop-like" (i.e. Excel or similar) this is even more locked down since Vista...
You could try to circumvent that somehow but I wouldn't recommend that...