System.Runtime.InteropServices.COMException解决办法

昨天遇到的这个问题,在网上查了,似乎相同的情况和解决方案并不多,记录在此,以备日后查阅。

原本电脑是XP的系统,因为要装Windows Phone Developer Tools,不支持XP,所以毅然决然地换了Win7。安装都很顺利的,可是软件装好了,重新打开时提示了如标题的错误。System.Runtime.InteropServices.COMException。

先介绍下环境,系统是校验过的7600RTW简体中文原版,杀软是MicroSoft Security Essentials,本地装的是vs2008,未安装sp1补丁,未安装sql,然后添加了IIS7.0。版本控制用的是Tortoise SVN,项目是用SVN重新CheckOut的,在XP+IIS5.1+VS2008下运行正常。

确保项目每问题后,自然而然就想到了是不是IIS的问题,修改了项目文件中的UseIIS选项为False后,项目加载正常,说明确实是IIS的问题。

事实证明,IIS7.0的用户权限确实更加严格,再结合了网上诸多的参考后,总结下问题的解决办法:

1.确保IIS中6.0兼容性选项勾选,兼容性工具已安装;

2.在IIS管理器中首先检查右侧的更改.net framework 版本,确保是2.0;

3.在应用程序池中,Classic .Net Pool 和Default AppPool 的.Net Framework 版本是否为 2.0,并且,此处的托管管道模式必须选择经典。

4.重启IIS,以管理员身份运行VS2008,注意,一定要以管理员身份运行,不然还是不能自动创建虚拟目录用于调试的!

至此,问题解决!

你可能感兴趣的:(技术心得)