LINK : fatal error LNK1168: 无法打开
本帖最后由 wang136213 于 2016-11-23 12:36 编辑最近在学习win32编程
经常遇到1168的链接错误,如下
无法打开 d:\我的文档\visual studio 2015\Projects\Pixel\Debug\Pixel.exe 进行写入
我知道这是因为这个进程正在运行的原因,每次进任务管理器关闭后台进程的时候发现了这么一个问题
当我调试程序,也就是窗口在显示的时候,我的程序会出现在任务管理器的“应用”一栏中,于是我关掉窗口,这个程序在“应用”一栏中消失了,但却出现在后台进程中!每次都是这样
当我没有修改代码,alt+F5调试窗口,还会出现同样的状况,关闭窗口后,后台进行会再出现同样的进程,可以有好几个同时在运行
但是当我修改代码,alt+F5调试窗口时,就出现了1168的错误
请教为什么会出现这样的情况!
代码呢
估计是WM_DESTROY时没有PostQuitMessage 无符号整形 发表于 2016-11-23 12:04
代码呢
估计是WM_DESTROY时没有PostQuitMessage
这个确定是有的,用的小甲鱼视频的模板 /*
利用随机RGB颜色布满客户区
*/
#include <windows.h>
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
WNDCLASS wndclass;
HWND hwnd;
MSG msg;
static TCHAR szAppName[] = TEXT("随机点设置");
//对wndclass的参数赋值
wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = WndProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = szAppName;
//注册wndclass类
RegisterClass(&wndclass);
hwnd = CreateWindow(szAppName, TEXT("hellowin"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);
ShowWindow(hwnd, iCmdShow);
UpdateWindow(hwnd);
while (GetMessage(&msg, hwnd, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return (msg.wParam);
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
switch (message)
{
case WM_PAINT:
//MessageBox(hwnd, TEXT("TEST"), TEXT("TEST"), MB_OKCANCEL);
hdc = BeginPaint(hwnd, &ps);
TextOut(hdc, 10, 10, TEXT("12345"), 5);
EndPaint(hwnd, &ps);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(hwnd, message, wParam, lParam);
}
return 0;
} 是不是这一句
while (GetMessage(&msg, hwnd, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
GetMessage的第二个参数 wang136213 发表于 2016-11-23 12:34
是不是这一句
while (GetMessage(&msg, hwnd, 0, 0))
{
已解决,是消息队列的问题
页:
[1]