windows.h有有关SERVICE_NAME的说明,但我一加入stdafx.h(并且放在程序第一行)就提示我,就提示我missing ';' before identifier ssStatus。
那一句是这样的:
static SERVICE_STATUS ssStatus;
因此我判断是加入stdafx.h之后,windows.h对SERVICE_NAME的定义就无效了,
这该如何解决呢?(急,请帮忙!)
那一句是这样的:
static SERVICE_STATUS ssStatus;
因此我判断是加入stdafx.h之后,windows.h对SERVICE_NAME的定义就无效了,
这该如何解决呢?(急,请帮忙!)
include "windows.h"
#error : WINDOWS.H already included. MFC apps must not #include <windows.h>真不知该如何办,我想不用stdafx.h,可我其中使用了一些诸如:CDWordArray的数据,只有在stdafx.h中有定义,真是头疼呀!
你干脆将windows.h也放到stdafx.h里面,调整以下顺序值到没有错误
1、像SERVICE_NAME之类的问题,除了在windows.h里有说明外,我单独用stdafx.h是否也可以说明或是实现?
2、我生成的***.dll,以前是打算在2000里用一个程序调用这个DLL作为service运行。但一直调不成(因为以上原因)。那我用rundll32.exe ***.dll设成service是否也可以正常运行这个dll程序?
与windows.h意义上不同
在c/cpp中只要include stdafx.h
或类似的宏删除掉即可.
#ifdef xxxxxx
typedef SERVICE_NAME ...
#endif
就是xxxxxx的问题。有可能用在DDK上的,用AppWizard生成的MFC应用程序不满足这个编译开关。
解决办法:
将windows.hz中的SERVICE_NAME定义复制到你的程序中。
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
删掉,你试过了没有?