根据微软官方的解释,WCF(之前的版本名为“Indigo”)是使用托管代码建立和运行面向服务(Service Oriented)应用程序的统一框架。它使得开发者能够建立一个跨平台的安全、可信赖、事务性的解决方案,且能与已有系统兼容协作。
云平台框架。
上次在作业的时候遇到了一件蛋疼的事情。
![在x64平台上调试依赖于x86的WCF服务 在x64平台上调试依赖于x86的WCF服务](https://i-blog.csdnimg.cn/blog_migrate/b2f1bb46e5d75d11fd6687d5d2c7b991.jpeg)
然后我就欢乐的去调试了
然后...就没有然后了...
调试项目无法运行
|
究其原因,我写的是一个dll文件,需要一个exe作为运行容器来调用,这VS2010中,这个临时容器由 WCF Service Host 来承担
Microsoft Visual Studio 10.0\Common7\IDE\WcfSvcHost.exe
在安装VS的时候,安装程序侦测到当前系统是x64,所以给WcfSvcHost.exe 设定为64位,该程序无法调用32位的dll,所以会报错“incorrect format”
幸好在
http://social.msdn.microsoft.com/Forums/en/wcf/thread/2e29a4aa-e587-43ef-bf50-329b7cd3eefb
找到了解决方案:
- 备份好原来的x64版本的WcfSvcHost.exe
- 打开VS命令行命令行(开始,程序,VS2010,VS工具,VS控制台)
- 通过命令切换到WcfSvcHost.exe所在文件夹
- 运行命令
corflags /32BIT+ /FORCE WcfSvcHost.exe - 完成
![在x64平台上调试依赖于x86的WCF服务 在x64平台上调试依赖于x86的WCF服务](https://i-blog.csdnimg.cn/blog_migrate/59af67d939dfb61da7248f82f009afdd.jpeg)
若是想切换回原来的模式,可以还原文件或者改命令参数