前段时间做了几次BizTalk应用从Windows 2003升级到Windows 2008 R2,BizTalk2006迁移到BizTalk2010的测试,最终将测试环境中的配置导出为MSI和XML的绑定配置文件,但是在导入新建环境时,发现Biztalk上的应用运行还是不正常,通过日志发现是程序集调用异常。可能的原因是BizTalk在导入MSI时并没有向GAC注册程序集。
杯具的是生产环境中的Windows 2008 R2是没有开发工具的,没有util.exe,没法通过它来注册GAC。网上看了几种方法:
- 安装.NET Framework Software Development Kit ,这东西里面包含了GACUtil.exe,有了这东西就可以注册GAC了。但是这东西很大,好几百M啊。
- 第二种是非官方的方法:
- 以管理员方式打开一个命令行窗口
- 运行“explorer C:\windows\assembly”
- 运行“start .” 其实这个只是说通过管理员方式打开另外一个资源管理器窗口
- 把你要注册的dll从第三步打开窗口中拖放到第二步打开的assembly目录即可。
- 关闭UAC后重启,然后把DLL拖到assembly中