VC++编程实用技巧分享

3星 · 超过75%的资源 需积分: 9 26 下载量 54 浏览量 更新于2024-08-02 收藏 426KB PDF 举报
"VC++学习常用技巧" 在深入学习C++的过程中,掌握一些VC++的常用技巧能够极大地提升开发效率和代码质量。以下是一些关键的VC++编程技巧: 1. 获取应用程序主窗口指针 在VC++中,可以通过`CWinThread::m_pMainWnd`成员来获取应用程序主窗口的指针。这个指针可以用来控制窗口的行为,例如,如果你想最大化程序窗口,可以使用`AfxGetMainWnd()`函数获取指针,然后调用`ShowWindow(SW_SHOWMAXIMIZED)`方法。 示例代码: ```cpp CWnd* pMainWnd = AfxGetMainWnd(); pMainWnd->ShowWindow(SW_SHOWMAXIMIZED); ``` 2. 确定应用程序的路径 若要获取应用程序的完整路径,可以使用API函数`GetModuleFileName`,传入`NULL`作为参数,即可得到当前执行程序的路径。然后通过字符串处理去掉文件名部分,只保留路径。 示例代码: ```cpp TCHAR exeFullPath[MAX_PATH]; GetModuleFileName(NULL, exeFullPath, MAX_PATH); // 这里可以对exeFullPath进行处理,去掉文件名 ``` 3. 获取其他程序的图标 获取其他程序的图标通常有两种方法: - 使用SDK函数`SHGetFileInfo`,它可以提供图标资源的句柄。 - 使用`ExtractIcon`函数直接提取图标资源。 示例代码: 方法一(使用`SHGetFileInfo`): ```cpp SHFILEINFO stFileInfo; if (SHGetFileInfo(_T("c:\\pwin95\\notepad.exe"), 0, &stFileInfo, sizeof(stFileInfo), SHGFI_ICON)) { CDC* pDC = ...; // 获取绘图设备上下文 pDC->DrawIcon(10, 10, stFileInfo.hIcon); } ``` 方法二(使用`ExtractIcon`): ```cpp HICON hIcon = ExtractIcon(AfxGetInstanceHandle(), _T("NotePad.exe"), 0); if (hIcon && hIcon != (HICON)-1) { CDC* pDC = ...; // 获取绘图设备上下文 pDC->DrawIcon(10, 10, hIcon); } ``` 4. 获取各种目录信息 要获取Windows目录,可以使用`GetWindowsDirectory`函数。例如,如果你想获取Windows目录,可以这样操作: ```cpp TCHAR windir[MAX_PATH]; GetWindowsDirectory(windir, MAX_PATH); // windir现在包含了Windows目录的路径 ``` 除了以上技巧,还有许多其他实用的VC++编程技巧,例如内存管理、异常处理、多线程编程、性能优化、资源管理等。熟练掌握这些技巧将有助于提高你在VC++开发中的专业技能和项目实施能力。在实际编程过程中,不断实践和探索,积累经验,才能真正成为VC++的专家。