VC常见问题百问:基本技术收集及参考书推荐

需积分: 0 27 下载量 159 浏览量 更新于2024-01-14 收藏 149KB DOC 举报
VC常见问题百问是一个收集了VC最常用的基本技术的文档,可以作为参考书使用。本文将总结其中的部分问题和解答。 问题1:如何通过代码获得应用程序主窗口的指针? 解答:应用程序主窗口的指针保存在CWinThread::m_pMainWnd中,通过调用AfxGetMainWnd函数可以获取到该指针。例如,可以使用AfxGetMainWnd()->ShowWindow(SW_SHOWMAXIMIZED)来将程序窗口最大化显示。 问题2:如何确定应用程序的路径? 解答:可以使用GetModuleFileName函数来获取应用程序的路径,然后去掉可执行文件名。例如,可以使用以下代码来获取应用程序的路径: TCHAR exeFullPath[MAX_PATH]; GetModuleFileName(NULL, exeFullPath, MAX_PATH); 问题3:如何在程序中获得其他程序的图标? 解答:有两种方法可以获取其他程序的图标。一种是使用SDK函数SHGetFileInfo或者ExtractIcon来获得图标资源的句柄;另一种是使用SDK函数SHGetFileInfo来获取文件的很多信息,包括大小图标、属性、类型等。以下是两种方法的示例代码: 方法一: HICON hIcon = (HICON)SHGetFileInfo("notepad.exe", 0, NULL, 0, SHGFI_ICON); 使用hIcon来显示图标。 方法二: SHFILEINFO shfi; SHGetFileInfo("notepad.exe", 0, &shfi, sizeof(shfi), SHGFI_ICON); 使用shfi.hIcon来显示图标。 以上是VC常见问题百问中的部分问题和解答。该文档收集了VC最常用的基本技术,是一个非常有用的参考书,可以随时翻阅。希望本文的总结能够对读者理解VC中的基本技术有所帮助。