轉載:瀏覽文件夾對話框,演示SHBrowseForFolder用法

瀏覽文件夾對話框,演示SHBrowseForFolder用法

image
/********************************************************************
  created:  2008/04/24
  created:  24:4:2008   12:47
  author:    Gohan
                http://feed.feedsky.com/gohan
  purpose:  演示SHBrowseForFolder用法
*********************************************************************/
#include <Windows.h>
#include <ShlObj.h>
int main()
{
   
BROWSEINFO bi;
   
ZeroMemory(&bi,sizeof(BROWSEINFO));
   
LPMALLOC pMalloc;
   
LPITEMIDLIST pidl = SHBrowseForFolder(&bi);
   
TCHAR * path = new TCHAR[MAX_PATH];
   
if(pidl != NULL)
    {
       
SHGetPathFromIDList(pidl,path);
       
MessageBox(NULL,path,TEXT("Choose"),MB_OK);
       
if(SUCCEEDED(SHGetMalloc(&pMalloc)))//pidl指向的對象用完應該釋放,之前忽略了
        {
           
pMalloc->Free(pidl);
           
pMalloc->Release();
        }
    }
   
else
    {
       
MessageBox(NULL,TEXT("選擇爲空"),TEXT("Choose"),MB_OK);
    }
   
delete path;//謝謝true的提醒,以後我一定會更加慎重
}

轉載處:http://www.cppblog.com/gohan/archive/2008/04/24/47993.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章