久久―日本道色综合久久,亚洲欧美精品在线,狼狼色丁香久久婷婷综合五月,香蕉人人超,日本网站黄,国产在线观看不卡免费高清,无遮挡的毛片免费

2023信創(chuàng)獨角獸企業(yè)100強
全世界各行各業(yè)聯(lián)合起來,internet一定要實現(xiàn)!

判斷windows的桌面及其它目錄

2004-02-14 eNet&Ciweek

  使用API函數(shù)SHGetSpecialFolder。Shlobj.h里有SHGetSpecialFolder的原型聲明。這個函數(shù)可以幫我們找到windows的Desktop目錄、啟動目錄、我的文檔目錄等?! ?

  SHGetSpecialFolder需要三個參數(shù)。 第一個參數(shù)是HWND,它指定了"所有者窗口":在調(diào)用這個函數(shù)時可能出現(xiàn)的對話框或消息框。第二個參數(shù)是一個整數(shù)id,決定哪個目錄是待查找目錄,它的取值可能是:  

  CSIDL_BITBUCKET 回收站

  CSIDL_CONTROLS 控制面板

  CSIDL_DESKTOP Windows 桌面desktop

  CSIDL_DESKTOPDIRECTORY desktop的目錄

  CSIDL_DRIVES 我的電腦

  CSIDL_FONTS 字體目錄

  CSIDL_NETHOOD 網(wǎng)上鄰居

  CSIDL_NETWORK 網(wǎng)上鄰居virtual folder

  CSIDL_PERSONAL 我的文檔

  CSIDL_PRINTERS 打印機

  CSIDL_PROGRAMS 程序組

  CSIDL_RECENT 大多數(shù)最近打開的文檔列一

  CSIDL_SENDTO “發(fā)送到”菜單項

  CSIDL_STARTMENU 任務(wù)條啟動菜單項

  CSIDL_STARTUP 啟動目錄

  CSIDL_TEMPLATES 臨時文檔

  最后一個參數(shù)是pidl地址。SHGetSpecialFolderLocation把地址寫到pidl?! ?

  下面的代碼演示了怎樣使用SHGetSpecialFolderLocation:  

  //----------------------------------------------------------------------

  void __fastcall TForm1::Button1Click(Tobject *Sender)

  {

    LPITEMIDLIST pidl;

    LPMALLOC pShellMalloc;

    char szDir[MAX_PATH];

  if(SUCCEEDED(SHGetMalloc(&pShellMalloc)))

    {

      if(SUCCEEDED(SHGetSpecialFolderLocation(NULL,CSIDL_DESKTOPDIRECTORY,&pidl)))

      {

        // 如果成功返回true

        if(SHGetPathFromIDList(pidl, szDir))

        {

          Label1->Caption = szDir;

        }

      pShellMalloc->Free(pidl);

      }

    pShellMalloc->Release();

    }

  }

相關(guān)頻道: eNews

您對本文或本站有任何意見,請在下方提交,謝謝!

投稿信箱:tougao@enet16.com