#include "shlobj.h"LPITEMIDLIST pidl = NULL;
SHGetSpecialFolderLocation(NULL, CSIDL_PROGRAM_FILES, &pidl);char szPath[__MAX_PATH] = {0};
if(SHGetPathFromIDList(pidl, szPath))
    AfxMessageBox(szPath);

解决方案 »

  1.   

    我试过了,但出现 error C2065: 'CSIDL_PROGRAM_FILES' : undeclared identifier
    我也查过shlobj.h没有定义这个常量'CSIDL_PROGRAM_FILES' 
      

  2.   

    你需要下载新版的SDK,或者定义:
    #define CSIDL_PROGRAM_FILES             0x0026        // C:\Program Files
    也可以的。记住,给分哦!
      

  3.   

    我给搞定啦,真多谢你了,你是如何知道CSIDL_PROGRAM_FILES的值是0x0026啊