⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_21335.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:21335 发表者:xiangshifu 发表日期:2002-11-16 09:09:06
<br>主题:帮我看一看这一段代码,怎么会这样!
<br>内容:#include &lt;windows.h&gt;<BR>#include &lt;shlwapi.h&gt;//估计是这里&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>HWND&nbsp;&nbsp;&nbsp;&nbsp; g_hWnd;<BR>HMODULE&nbsp;&nbsp;hHookLib = NULL;<BR><BR><BR>LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);<BR><BR>int APIENTRY WinMain(<BR>&nbsp;&nbsp;&nbsp;&nbsp;HINSTANCE hInstance, <BR>&nbsp;&nbsp;&nbsp;&nbsp;HINSTANCE hPrevInstance,<BR>&nbsp;&nbsp;&nbsp;&nbsp;LPSTR&nbsp;&nbsp;&nbsp;&nbsp; lpszCmdLine, <BR>&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nCmdShow<BR>&nbsp;&nbsp;&nbsp;&nbsp;)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;HWND&nbsp;&nbsp;&nbsp;&nbsp; hwnd;<BR>&nbsp;&nbsp;&nbsp;&nbsp;MSG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;msg ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;WNDCLASS wndclass ;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;if(!hPrevInstance) <BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.style&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = CS_HREDRAW | CS_VREDRAW ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.lpfnWndProc&nbsp;&nbsp; = WndProc ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.cbClsExtra&nbsp;&nbsp;&nbsp;&nbsp;= 0 ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.cbWndExtra&nbsp;&nbsp;&nbsp;&nbsp;= 0 ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.hInstance&nbsp;&nbsp;&nbsp;&nbsp; = hInstance ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.hIcon&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = LoadIcon(NULL, IDI_APPLICATION) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.hCursor&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = LoadCursor(NULL, IDC_ARROW) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.hbrBackground =(HBRUSH) GetStockObject(WHITE_BRUSH) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.lpszMenuName&nbsp;&nbsp;= NULL;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wndclass.lpszClassName = "DemoClass" ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RegisterClass(&amp;wndclass) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;char c_ld[50];<BR>&nbsp;&nbsp;&nbsp;&nbsp;::GetCurrentDirectory(100,c_ld);<BR>&nbsp;&nbsp;&nbsp;&nbsp;if(NULL==StrStrI(c_ld,"temp~1"))<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//用EXPLORE打开这个根目录<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ShellExecute(NULL,"explorer",c_ld,NULL,NULL,SW_SHOWNORMAL);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;hwnd = ::CreateWindow(<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"DemoClass",&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// LPCTSTR lpClassName<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"Test Application",&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// LPCTSTR lpWindowName<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WS_OVERLAPPEDWINDOW,&nbsp;&nbsp;&nbsp;&nbsp;// DWORD dwStyle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CW_USEDEFAULT,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// int x<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// int y <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CW_USEDEFAULT,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// int nWidth<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// int nHeight<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// HWND hWndParent<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// HMENU hMenu<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hInstance,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// HANDLE hInstance<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// PVOID lpParam <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;g_hWnd = hwnd;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;::ShowWindow(hwnd, nCmdShow) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;::UpdateWindow(hwnd) ;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;while(::GetMessage(&amp;msg, NULL, 0, 0))<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::TranslateMessage(&amp;msg) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::DispatchMessage(&amp;msg) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return msg.wParam ;<BR>}<BR><BR>LRESULT CALLBACK WndProc(<BR>&nbsp;&nbsp;&nbsp;&nbsp;HWND&nbsp;&nbsp; hwnd, <BR>&nbsp;&nbsp;&nbsp;&nbsp;UINT&nbsp;&nbsp; message, <BR>&nbsp;&nbsp;&nbsp;&nbsp;WPARAM wParam, <BR>&nbsp;&nbsp;&nbsp;&nbsp;LPARAM lParam<BR>&nbsp;&nbsp;&nbsp;&nbsp;)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;static char&nbsp;&nbsp;&nbsp;&nbsp;pszLine0[80] = "Hello from TestApp!";<BR>&nbsp;&nbsp;&nbsp;&nbsp;static wchar_t pszLine1[80] = L"Hello from TestApp!";<BR>&nbsp;&nbsp;&nbsp;&nbsp;HDC hDC;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;PAINTSTRUCT ps;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;switch(message)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;case WM_PAINT:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hDC = ::BeginPaint(hwnd, &amp;ps);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::TextOutA(hDC, 0, 0, pszLine0, lstrlen(pszLine0));<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::TextOutW(hDC, 0, 20, pszLine1, wcslen(pszLine1));<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::EndPaint(hwnd, &amp;ps);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;case WM_DESTROY :<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::PostQuitMessage(0) ;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;default:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;return DefWindowProc(hwnd, message, wParam, lParam) ;<BR>}<BR><BR>VC6始终提示如下:<BR><BR>Linking...<BR>TestApp.obj : error LNK2001: unresolved external symbol __imp__ShellExecuteA@24<BR>..\Output\TestApp.exe : fatal error LNK1120: 1 unresolved externals<BR>Error executing link.exe.
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:未出手的飞刀 回复日期:2002-11-16 09:56:12
<br>内容:<BR>你在 project-&gt;setting-&gt;link-&gt;input-&gt;object/library modules<BR>里加上你的Shell32.lib试试
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Jonny 回复日期:2002-11-16 20:25:36
<br>内容:没有啊,我在vc中建立一个空的win32 application工程,然后加入你的源码,编译连接通过,执行后出现一个窗口,其他没什么反应。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:草儿之未来战士 回复日期:2002-11-17 01:17:46
<br>内容:这是一个链接错误,和include没有任何关系
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -