首页
社区
课程
招聘
[求助]不是OD的问题,请教一个VC新手的问题
发表于: 2008-2-1 16:10 3856

[求助]不是OD的问题,请教一个VC新手的问题

2008-2-1 16:10
3856
偶提个VC的新手问题,搞OD调试的高手相信不少都会VC,偶也不浪费时间去找VC论坛了,干脆在看雪直接提问吧。最近想学VC,到网上查到孙鑫老师的视频教程。自己调试下看看,出问题了。源码:
test.cpp:

#include <windows.h>
#include <stdio.h>

LRESULT CALLBACK WinSunProc(
  HWND hwnd,
  UINT uMsg,
  WPARAM wParam,
  LPARAM lParam
);

int WINAPI WinMain(
   HINSTANCE hInstance,
   HINSTANCE hprveinstance,
   LPSTR lpCmdLine,
   int nCmdShow
)
{
   WNDCLASS wndcls;
   wndcls.cbClsExtra=0;
   wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
   wndcls.hCursor=LoadCursor(NULL,IDC_CROSS);
   wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
   wndcls.hInstance=hInstance;
   wndcls.lpfnWndProc=WinSunProc;
   wndcls.lpszClassName="Weixin2003";
   wndcls.lpszMenuName=NULL;
   wndcls.style=CS_HREDRAW|CS_VREDRAW;
   RegisterClass(&wndcls);
   
   HWND hwnd;
   hwnd=CreateWindow("Weixin2003","北京维新科学技术培训中心",WS_OVERLAPPEDWINDOW,
           0,0,600,400,NULL,NULL,hInstance,NULL);  
   ShowWindow(hwnd,SW_SHOWNORMAL);
   UpdateWindow(hwnd);
  
   MSG msg;
   while(GetMessage(&msg,NULL,0,0))
   {
   TranslateMessage(&msg);
   DispatchMessage(&msg);
   }
   return 0;
}
LRESULT CALLBACK WinSunProc(
  HWND hwnd,
  UINT uMsg,
  WPARAM wParam,
  LPARAM lParam
)
{
   switch(uMsg)
   {
   case WM_PAINT:
           HDC hdc;
       PAINTSTRUCT ps;
       hdc=BeginPaint(hwnd,&ps);
       TextOut(hdc,0,0,"北京维新科学技术培训中心",strlen("北京维新科学技术培训中心"));
       EndPaint(hwnd,&ps);
       break;
   case WM_CHAR:
       char szChar[20];
       sprintf(szChar,"char is %d",wParam);
       MessageBox(hwnd,szChar,"weixin",MB_OK);
       break;
   case WM_LBUTTONDOWN:
       MessageBox(hwnd,"mouse clicked","weixin",MB_OK);
       HDC hDC;
       hDC=GetDC(hwnd);
       TextOut(hDC,0,50,"计算机编程语言培训",strlen("计算机编程语言培训"));
       ReleaseDC(hwnd,hDC);
       break;
   case WM_CLOSE:
       if(IDYES==MessageBox(hwnd,"你是否要退出程序?","weixin",MB_YESNO))
       {
             DestroyWindow(hwnd);
       }
      break;
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hwnd,uMsg,wParam,lParam);
    }
    return 0;
}

   调试时候,编译米问题。但是就是米法创建.exe和.obj文件。错误提示为:
--------------------Configuration: test - Win32 Debug--------------------
Linking...
LINK : fatal error LNK1168: cannot open Debug/test.exe for writing
执行 link.exe 时出错.

test.exe - 1 error(s), 0 warning(s)

偶懂VB,VC现学现卖。肯定代码哪个地方有问题,偶实在米精力在某处错别字上浪费时间,请各位大虾指教。

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
你把你打开的test.exe文件关闭掉,然后重新编译链接。
2008-2-1 17:13
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
test.exe文件根本米生成,哪来的关闭掉。偶倒是在vb文件夹里有个记事本,不过跟这个也米关系啊。一个在debug里,一个在vb里不可能相关吧。
2008-2-2 07:46
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
任务管理器中找到了test.exe这个进程,可是并米有像孙鑫教程里那样的窗口出现啊。
2008-2-2 08:18
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
这条语句wndcls.cbWndExtra=0;忘记加了,不用回帖了 3Q
2008-2-2 08:44
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
6
那个编译错误跟你少加的语句根本就毫无关系
2008-2-2 10:44
0
雪    币: 199
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
进程还在运行,文件无法写入,任务管理器找到test.exe进程,杀掉。
2008-2-2 11:10
0
游客
登录 | 注册 方可回帖
返回
//