到VS2008里就不再支持引用WebService了,但是就当是学习我还是使用了VS2005尝试了WebService的使用。我这里说的是非托管提MFC程序中的引用。方法很简单,只需要在解决方案的MFC项目上点右键从“添加Web引用”就可以找到Web服务并添加到到项目中。这个网上早有人给出了做法,但是我这里说的是在Win2000下运行的问题。
我的程序是在XP系统下编译运行的,并且运行的很好。我在机器上安装了Microsoft Virtual PC,正好可以运行一个Win2000的系统。我把MFC的EXE程序Copy到Win2000后如期所至的错误出现了:
于是我试遍了网上给出的解决方法,可是偏偏我是最苯的,终于也没有让我把错误排除。为了验证自己的一个想法我试着打开了项目里的这个头文件:stdafx.h、并做出一些改动如下:
很明显我是把WINVER及_WIN32_WINNT的定义从0x0501更改到了 0x0500。从而降低了对版本的要求。
重新编译、Copy到Win2000!
OK!运行正常。
其实我不太懂这里的版本号倒底应改为哪一个值,但我想一定是要低于VS2005的默认的值0x0501。所以我改成了0x0500,但这对我的Win2000来说就足够不报错了。