参考:
1. http://forums.asp.net/t/1303594.aspx
2. http://social.technet.microsoft.com/Forums/en-US/office2007deploymentcompatibility/thread/334c9f30-4e27-4904-9e71-abfc65975e23?prof=requiredregistry hack, 修改注册表
3. http://social.msdn.microsoft.com/Forums/en-US/innovateonoffice/thread/b81a3c4e-62db-488b-af06-44421818ef91?prof=requiredWindow Station概念和创建Desktop文件夹
网站的运行帐号是在应用程序池中的标识中设定的,一般为内置帐户Network Service,用户登录运行程序与Window Station和Desktop有关。
当运行于Network Service帐户,根据后二个链接中的方法:
1. registry hack,修改注册表
2. 在C:/Windows/SysWOW64/config/systemprofile/下创建Desktop文件夹
都没有解决我的问题。
通过System.Security.Principal.WindowsIdentity.GetCurrent().Name发现,当程式运行于IIS中,通过工作管理员查看进程的启动帐户是应用程序池标识帐户(一般为Network Service),当程序在Visual Studio 2008中运行于ASP.NET的启动帐户是系统登录帐户(一般为Administrator)。
既然无法厘清Network Service的Wondow Station与Desktop的关系,就设置了应用程序池的标识帐户为自定义帐户:一个隶属于管理员组的帐户Admin1。
也可设置应用程序池的标识帐户为内置帐户并选择LocalSystem帐户。
测试已经能正常运行!
windows server 2008中读取Microsoft Excel Application COM组件问题的解决方式
最新推荐文章于 2018-05-09 11:11:02 发布