• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            我住包子山

            this->blog.MoveTo("blog.baozishan.in")

            瀏覽文件夾對話框,演示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的提醒,以后我一定會更加慎重
            }

            posted on 2008-04-24 13:15 Gohan 閱讀(11256) 評論(16)  編輯 收藏 引用 所屬分類: C++MFC/SDK

            Feedback

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法[未登錄] 2008-04-24 18:21 true

            TCHAR * path = new TCHAR[MAX_PATH];
            delete path;  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-04-24 20:34 Z_song

            正好要用,感謝中。。。  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-04-25 21:19 wangyucao

            你也很努力啊!!呵呵  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-05-21 23:56 ershu

            delete [] path;

            好好學習吧  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-05-22 22:38 Gohan

            @ershu
            朋友,針對字符串,delete []與delete是等價的(至少在目前的VC++下)。這點我是學習過的,至于動態開的數組則必須加[]  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-05-30 23:16 hoodlum1980

            放在你這里,delete不加也可以,因為你的程序馬上就要退出了,這個進程中申請的內存也就會被系統給收回。但是如果你的程序還在運行,則最好自己管理號自己的內存。  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-05-31 19:07 Gohan

            @hoodlum1980
            對的,養成好的編程習慣,:)  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-06-12 10:12 tmp

            MessageBox(NULL,TEXT("),TEXT("Choose"),MB_OK);
            這里少了個引號,呵呵  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-06-12 13:44 Gohan

            @tmp
            呵呵,謝謝你,你很細心,我用一個叫code2html的程序把code轉成html,它有點bug,有中文字符串會丟掉引號:),已改正  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-06-24 13:58 ailee

            正好要用,謝了.  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-10-20 11:16 過客001

            很好,。可以用的,謝謝樓主的資料。
            能否在文章中做個連接
            連接到可以選定文件而不只是文件夾的代碼嗎  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2008-12-08 09:38 Naran

            受益了 謝謝了  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2009-02-10 11:00 HotSoftG

            CAutoPtr<TCHAR> path(new TCHAR[MAX_PATH]);
              回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2009-02-19 19:46 Gohan

            @HotSoftG
            自銷毀的智能指針確實更易用  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2010-10-25 08:59 YiLi

            MAX_PATH是常量, 所以這里不一定非要new
            直接TCHAR path[MAX_PATH];這樣也是沒有問題的  回復  更多評論   

            # re: 瀏覽文件夾對話框,演示SHBrowseForFolder用法 2011-01-18 09:10 企業即時通訊

            受益了,很好。  回復  更多評論   

            亚洲AV无码1区2区久久| 激情久久久久久久久久| 99久久精品免费看国产一区二区三区| 久久亚洲精品国产亚洲老地址| 99久久这里只精品国产免费| 久久中文字幕人妻丝袜| 97r久久精品国产99国产精| 久久国产成人午夜aⅴ影院| 久久精品aⅴ无码中文字字幕不卡| a高清免费毛片久久| 亚洲国产精品成人AV无码久久综合影院 | 久久人人爽人人爽人人片AV东京热| 四虎影视久久久免费| 国产精品久久久久影院嫩草| 日韩亚洲国产综合久久久| 九九久久99综合一区二区| 亚洲国产成人久久精品99| 精品久久久久久亚洲| 久久久久久免费视频| 久久久久久国产精品美女| 久久国产热精品波多野结衣AV| 色欲综合久久躁天天躁| 久久99精品国产一区二区三区| 思思久久99热只有频精品66| 精品无码人妻久久久久久| 91精品国产综合久久婷婷| 亚洲国产另类久久久精品小说| 久久一区二区三区免费| 精品无码人妻久久久久久| 94久久国产乱子伦精品免费 | 香蕉久久夜色精品国产尤物| 国产免费久久精品丫丫| 久久夜色精品国产亚洲| 久久发布国产伦子伦精品| 亚洲色欲久久久综合网| 久久久久久久久波多野高潮| 亚洲国产精品嫩草影院久久| 亚洲欧美久久久久9999| 色狠狠久久综合网| 久久无码中文字幕东京热| 人妻无码αv中文字幕久久琪琪布|