在VC++6.0下能通过的程序为何在.NET2003下通不过?怎么办?
错误信息如下:
e:\test\test\test.cpp(105): fatal error C1010: 在查找预编译头指令时遇到意外的文件结尾
代码如下:
#include <windows.h>
LPCTSTR lpszAppName =TEXT("MyApp");
LPCTSTR lpszTitle =TEXT("My Application");
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM);
int APIENTRY WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPTSTR lpCmdLine, int nCmdShow)
{
MSG msg;
HWND hWnd;
WNDCLASS wc;
// Register the main application window class.
//............................................
wc.style = CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = (WNDPROC)WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon( NULL, IDI_APPLICATION );
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
wc.lpszMenuName = lpszAppName;
wc.lpszClassName = lpszAppName;
if ( !RegisterClass( &wc ) )
return( FALSE );
// Create the main application window.
//....................................
hWnd = CreateWindow( lpszAppName,
lpszTitle,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0,
CW_USEDEFAULT, 0,
NULL,
NULL,
hInstance,
NULL
);
if ( !hWnd )
return( FALSE );
ShowWindow( hWnd, nCmdShow );
UpdateWindow( hWnd );
while( GetMessage( &msg, NULL, 0, 0) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
return( msg.wParam );
}
static c=0;
LRESULT CALLBACK WndProc( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam )
{
switch( uMsg )
{
static int uRed = 0, uGreen = 0, uBlue = 0;
case WM_CREATE:
c++;
break;
case WM_PAINT :
{
RECT rect;
HDC hdc;
PAINTSTRUCT ps;
hdc = BeginPaint(hWnd, &ps);
GetClientRect( hWnd, &rect);
SetTextColor( hdc, RGB(uRed, uGreen, uBlue));
DrawText (hdc, TEXT ("Hello, You Are Welcome!"), -1, &rect,
DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
EndPaint(hWnd, &ps);
}
break;
case WM_KEYDOWN :
{
uRed = rand() % 255;
uGreen = rand() % 255;
uBlue = rand() % 255;
InvalidateRect(hWnd, NULL, TRUE);
}
break;
case WM_DESTROY :
PostQuitMessage(0);
break;
default :
return( DefWindowProc( hWnd, uMsg, wParam, lParam ) );
}
return( 0L );
}
在VC++6.0下能通过的程序为何在.NET2003下通不过?
在 “工程”菜单 项目设置——》C++ -》。找到预编译头 文件选项 选择关闭,然后再重新编译就行了。
vsiual C++6.0和visual C++2005的区别,学编程用哪个好,具体介绍一下
从.net2003开始,微软给了我们一个新的框架和编程模式,使程序员不必费时间解决不同系统间软件的移植而专心解决新的应用了。但不利于学习c++的初学。因为非从c++的知识要求太多了,重点偏移了。况且只要不是 作商业用途,只为学习的话没必要用它。
visual c++ 分32位系统和64位系统么?
2、要进行64位的编译,必须将visual系列软件安装在64位的windows操作系统上。
高手请进——什么是机器狗病毒呀?
第二处是:在那些分析文章中所提到“‘机器狗’病毒会替换系统中的正常程序 ‘conime.exe’、‘ctfmon.exe’、‘explorer.exe’或‘userinit.exe’”或“‘机器狗’病毒会感染系统中的正常程序‘conime.exe’、‘ctfmon.exe’、‘explorer.exe’或‘userinit.exe’”。其实,从概念的理解上来讲述,那些表达都是错误的...
我在.NET 2003下运行WEB应用程序时碰到问题:
你程序是从其他机器复制过来的吧 一般是因为项目未创建 在inetmgr中 添加虚拟目录 然后创建就行了
.NET出来这么久了,为什么VC的教程还都是VC6.0的呀?
vc6的教程这么多,一个原因在于计算机二级现在还是用的vc6.另一方面,.net虽然很好,但目前还是不是想MFC那么普及,所以现在还是vc6为主导,而且对于正规企业,编译器一般都是正版,那是很贵的东西了,所以一般他们都不舍得花钱换。但到了XP淘汰之后,vc6的命运也就该定了,他对vistar等新系统的兼容不...
没有.dsw怎么用VC6.0打开整个工程
如果这个工程是用VC++ .net 2003创建的,那么有一个工具可以把它转为VC6的工程。http:\/\/www.vckbase.com\/tools\/downtools.asp?id=164 否则就需要你用VC6手动创建一个相同名称的工程,然后替换或者添加现有工程的文件了。如何看你的VC工程是用那个版本的VC创建的:用记事本打开.vcproj文件,看他的...
如何将VC++6.0文件打包成程序
vc++中编译成功的程序,要打包成EXE文件,则使用VC++中的MFC平台,在其中编译好后将自动生成exe,如何使用MFC,你可以自己找点资料看下,方法2,在.net2003 平台上编译vc++程序,也可生成EXE文件
为什么VC++6.0按下运行后无反映?非要强行结束任务?
这个VC++6.0很难安装的,可能是安装不成功(正确的代码也不能编译,提示出现一个错误),那样的话,你得重装操作系统,再安装一遍,一般这次就会成功了。
vs2010与vc++6.0的编程有什么区别?
1、编译器的不同 VC6.0更初级,更适合初学C语言的人使用,但是由于VC6.0推出的时间比较久,因此有很多变量和函数定义的方法都跟不上时代了,而且与win7会有一些不兼容;VS2010:相对功能比较完善,兼容性更好,代码风格和代码提示对于编程者来说更完善,编写程序更方便。2、实现功能的不同 从VS2002...