我已经移动了我的经典asp应用程序以赢得2012 R2(IIS 8.5)。此应用使用 COM 组件。我已使用regsvr32
注册了此组件,并将II 6中的旧组件导出到II 8.5。我可以在控件 pane->组件服务中看到这些组件。
此应用无法正常运作。代码包括Server.CreateObject("myCOM");
看似有效,但当我尝试获取objArgs["prop1"];
时,它无效。
我看到了这个错误:
“Server.CreateObject在检查权限时失败。访问权限是 否认这个对象。“
可能存在什么问题?
PS:我已经安装了ASP /服务器端包括&其他。答案 0 :(得分:0)
DLL设置的权限是什么?也就是说,IIS运行的用户可以访问该文件吗?
您是否将其注册为32位和64位?
您可以从测试VB脚本创建对象(从提升的命令提示符运行,从VBS脚本或PowerShell脚本创建)吗?
“拒绝访问”通常意味着它在锡上所说的内容。我猜想IIS用户(或您网站的应用程序池使用的用户)对DLL没有正确的权限。
答案 1 :(得分:0)
我在Windows 2012R2上尝试使用带有PGP的ASPMail运行ASP站点时遇到了类似的问题。邮件程序运行正常,如果我在PowerShell中运行它,PGP就可以运行,但是邮件程序不能再使用它的PGP选项,它在ASP页面内运行pgp.exe。
答案 2 :(得分:0)
从互联网信息服务开启ASP - >万维网服务 - >应用程序开发特征 - > ASP。