Visual studio 2008 DCOM/IIS问题

Visual studio 2008 DCOM/IIS问题,visual-studio-2008,iis-6,dcom,opc,Visual Studio 2008,Iis 6,Dcom,Opc,这是我第一次与IIS和DCOM打交道,因此,如果我故意破坏术语,我深表歉意: 我正在尝试开发一个内部网网站,我认为这是一个权限问题。有一个从web应用程序中引用的DLL调用的函数,用于从web服务器上的多个DCOM应用程序读取数据 当我在网络上的另一台计算机上的VisualStudio调试器中运行web应用程序时,它读取成功。如果我将相同的DLL和函数调用放在EXE中,并在网络上的任何机器上运行它,它将成功读取。我觉得一切都很好 但是当我在IIS中部署网站时,仅从一个DCOM应用程序读取时会引发

这是我第一次与IIS和DCOM打交道,因此,如果我故意破坏术语,我深表歉意:

我正在尝试开发一个内部网网站,我认为这是一个权限问题。有一个从web应用程序中引用的DLL调用的函数,用于从web服务器上的多个DCOM应用程序读取数据

当我在网络上的另一台计算机上的VisualStudio调试器中运行web应用程序时,它读取成功。如果我将相同的DLL和函数调用放在EXE中,并在网络上的任何机器上运行它,它将成功读取。我觉得一切都很好

但是当我在IIS中部署网站时,仅从一个DCOM应用程序读取时会引发异常。其他人读得很成功

非工作应用程序的运行标识在DCOM配置中显示为“启动用户”,而工作应用程序的运行标识绑定到域帐户。这些是遗留应用程序,我无法轻松修改运行标识或访问权限

我猜这与IIS进程运行时使用的用户名有关——我知道调用Visual Studio调试器和test EXE时,它们都是在我的Windows AD凭据(具有相当广泛的权限)下运行的,但我不知道IIS使用的凭据是什么


有人对问题是什么(以及如何最好地解决问题)有什么建议吗?在我开始请求修改DCOM配置或IIS设置(我对此一无所知)之前,我想确保我的方向正确。

您可以将站点运行时所在的应用程序池的标识更改为OPC服务器运行时所在的相同用户名。上面的评论是正确的。每个Web应用程序都属于一个IIS应用程序池。如果您在IIS下有更多的Web应用程序,您可能需要调整这一个,在这种情况下,您应该为它创建一个新的应用程序池,并相应地设置它的标识。另一方面,虽然我知道您不想更改DCOM配置,但在大多数情况下,最好将DCOM应用程序本身上的“启动用户”更改为特定帐户。“启动用户”可以使其在不同身份下运行多次,这是很少使用的。感谢您的帮助。我认为这是正确的方法--我只需要看看如何获得许可,以进行建议的更改。我将在相同的域链接标识下运行应用程序池和DCOM应用程序,希望这能解决问题。谢谢你的帮助!