刚刚写了个activex控件,控件内用到microsoft.mshtml.dll,c#调用js方法。这个类库在.net1.0被包含,却并未随着.net2.0,3.0一起安装。vs2005安装的时候,会自动装上.net1.0的开发环境,因此不会出问题。但是没有装vs2005就会出现报错现象...
解决方案如下:
第一步。到你的开发机上,把c:\program files\microsoft.net\primary interop assemblies\microsoft.mshtml.dll拷贝到你的工程目录下。
第二步。删除你工程里引用的系统的microsoft.mshtml.dll。重新引用刚刚你拷贝过来的dll,并且把copy local设为true,确保会把此dll拷贝到你的编译文件夹。
第三步。在部署的时候,把你工程编译文件夹下的microsoft.mshtml.dll同时打包一起安装到客户的机器上即可。
经过几台机器测试,已经OK。