求助。只包含头文件就生成不了。各位大侠帮忙看看呗
U华哥 2012-04-15 12:14:10 以下是代码。
// testexe.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <WinDef.h>
#include <Winbase.h>
#include <stdlib.h>
#include <cstring>
#include <afx.h>
//#define FN_TESTDLL_DLL "tesedll.dll"
int _tmain(int argc, _TCHAR* argv[])
{
// char szFilePath[_MAX_PATH];
// int pos;
// GetModuleFileName(NULL, szFilePath, sizeof(szFilePath));
// CString szPath(szFilePath);
// szPath.MakeUpper();
// pos = szPath.Find("TESTEXE.EXE");
// CString szExePath;
// szExePath = szPath.Left(pos);
// HINSTANCE hProtocol;
// hProtocol = LoadLibrary((LPCTSTR)(szExePath+FN_TESTDLL_DLL));
return 0;
}
以下是生成的时候的错误信息。我的操作系统是64位win7旗舰版,用的VS2010。创建的是预编译控制台程序。字符集用的多字节字符集。是不是我的环境有问题啊。求教各位大侠了!
1>------ 已启动生成: 项目: testexe, 配置: Debug Win32 ------
1>生成启动时间为 2012/4/15 0:12:53。
1>InitializeBuildStatus:
1> 正在对“Debug\testexe.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1> 所有输出均为最新。
1> testexe.cpp
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(6361): error C2146: 语法错误: 缺少“;”(在标识符“ContextRecord”的前面)
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(6361): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(6361): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(12983): error C2065: “PCONTEXT”: 未声明的标识符
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(12984): error C2146: 语法错误: 缺少“)”(在标识符“ContextRecord”的前面)
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(12984): warning C4229: 使用了记时错误: 忽略数据上的修饰符
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(12984): error C2182: “RtlCaptureContext”: 非法使用“void”类型
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(12984): error C2491: “RtlCaptureContext”: 不允许 dllimport 数据 的定义
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(12984): error C2059: 语法错误:“)”
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(13372): error C2143: 语法错误 : 缺少“;”(在“__stdcall”的前面)
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(13372): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(13376): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(14982): error C3861: “__readfsdword”: 找不到标识符
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(1048): error C2146: 语法错误: 缺少“;”(在标识符“LPCONTEXT”的前面)
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(1048): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(1048): error C2378: “PCONTEXT”: 重定义;符号不能由 typedef 重载
1> c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(13372) : 参见“PCONTEXT”的声明
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(1048): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(3610): error C2061: 语法错误: 标识符“PCONTEXT”
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(4449): error C2061: 语法错误: 标识符“LPCONTEXT”
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(4457): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(4457): error C2143: 语法错误 : 缺少“,”(在“*”的前面)
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(15112): error C2143: 语法错误 : 缺少“;”(在“__stdcall”的前面)
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(15112): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winbase.h(15116): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\microsoft visual studio 10.0\vc\atlmfc\include\afx.h(24): fatal error C1189: #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]
1>
1>生成失败。
1>
1>已用时间 00:00:00.49
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========