| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 393 人关注过本帖
标题:[求助]关于vc++6.0编程的链接分析
只看楼主 加入收藏
哈狄斯
Rank: 2
等 级:论坛游民
帖 子:45
专家分:16
注 册:2006-3-14
收藏
 问题点数:0 回复次数:0 
[求助]关于vc++6.0编程的链接分析

#include<windows.h>

//定义全局变量和函数
HINSTANCE hInst;
HINSTANCE hInstance;
MSG msg;
//char lpszClassName[]="window_class";
char*ShowText;
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
//窗口类
class CFrameWnd
{
public:
HWND hWnd;
public:
int RegisterWindow();
void Create(LPCTSTR lpClassName,
LPCTSTR lpWindowName);
void ShowWindow(int nCmdShow);
void UpdateWindow();
};
//窗口类的成员函数
int CFrameWnd::RegisterWindow()
{
WNDCLASS wc;
wc.style=0;
wc.lpfnWndProc=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)GetStockObject(WHITE_BRUSH);
wc.lpszClassName="window_class";
wc.lpszMenuName=NULL;
return RegisterClass(&wc);
}
void CFrameWnd::Create(LPCTSTR lpClassName,
LPCTSTR lpWindowName)
{
RegisterWindow();
hInst=hInstance;
hWnd=CreateWindow("window_class",lpWindowName,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
0,
CW_USEDEFAULT,
0,
NULL,
NULL,
hInstance,
NULL);
}
void CFrameWnd::ShowWindow(int nCmdShow)
{
::ShowWindow(hWnd,nCmdShow);
}
void CFrameWnd::UpdateWindow()
{
::UpdateWindow(hWnd);
}
//应用程序类
class CWinApp
{
public:
CFrameWnd*m_pMainWnd;
public:
BOOL InitInstance (int nCmdShow);
int Run();
};
//应用程序类的成员函数
BOOL CWinApp::InitInstance(int nCmdShow)
{
m_pMainWnd=new CFrameWnd;
m_pMainWnd->Create(NULL,"封装的Windows程序");
m_pMainWnd->ShowWindow(nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
}
int CWinApp::Run()
{
while (GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
//程序员定义的WinApp对象theApp
CWinApp theApp;
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
int ResultCode=-1;
theApp.InitInstance(nCmdShow);
return ResultCode=theApp.Run();
}
//窗口函数
LRESULT CALLBACK WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
switch(message)
{
case WM_LBUTTONDOWN:
ShowText="Hello!";
InvalidateRect(hWnd ,NULL,1);
break;
case WM_PAINT:
hdc=BeginPaint(hWnd,&ps);
TextOut(hdc,50,50,ShowText,6);
EndPaint(hWnd,&ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd,message,wParam,lParam);
}
return 0;
}

--------------------Configuration: mm - Win32 Debug--------------------
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/mm.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

mm.exe - 2 error(s), 0 warning(s)

为什么变成.obj时没问题,而 生成可执行文件会出现两个问题!!请大家指教,谢谢了!!!!!!!!!!!!

2006-03-17 22:24
快速回复:[求助]关于vc++6.0编程的链接分析
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.057775 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved