zoukankan      html  css  js  c++  java
  • C++ Builder获取系统文件的路径

    取得路径的程序:(注意红色字体,由于博客显示问题,所以中间加了空格,大家自己把空格去掉即可)

    // ---------------------------------------------------------------------------
    #define NO_WIN32_LEAN_AND_MEAN
    #inclu de <vcl.h>
    #pragma hdrstop

    #inclu de "Unit1.h"
    #inclu de "shlobj.h "
    // ---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;

    // ---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) {
    }

    // ---------------------------------------------------------------------------
    void __fastcall TForm1::FormShow(TObject *Sender) {
    LPITEMIDLIST pidl;
    LPMALLOC pShellMalloc;
    //定义快捷方式的数据文件名

    char szDir[MAX_PATH];

    if (S?(SHGetMalloc(&pShellMalloc))) {
    // 取得快捷方式的PIDL

    if (S?(SHGetSpecialFolderLocation(NULL, CSIDL_APPDATA, &pidl))){

    // 把PIDL转换为路径名
    if (SHGetPathFromIDList(pidl, szDir)) {
    //szDir就是所要取得的路径

    Label1->Caption = szDir;
    }

    pShellMalloc->Free(pidl);
    }

    pShellMalloc->Release();
    }

    }

    将CSIDL_STARTUP变换成其他,如
    CSIDL_ADMINTOOLS
    表示当前用户的“管理工具”系统文件夹
    CSIDL_APPDATA
    表示当前用户的特定的应用程序数据存储文件夹,例如:C:Documents and SettingsusernameApplication Data
    CSIDL_BITB KET
    表示回收站
    CSIDL_COMMON_ADMINTOOLS
    表示所有用户的“管理工具”系统文件夹
    CSIDL_COMMON_ALTSTARTUP
    表示所有用户的 (只支持WINDOWS NT 系统)
    CSIDL_COMMON_APPDATA
    表示所有用户的特定的应用程序数据存储文件夹,例如:C:Documents and SettingsAll UsersApplication Data
    CSIDL_COMMON_DESKTOPDIRECTORY
    表示所有用户的“桌面”文件夹,例如:C:Documents and SettingsAll UsersDesktop。
    CSIDL_COMMON_DOCUMENTS
    表示所有用户的“我的文档”文件夹,例如:C:Documents and SettingsAll UsersDocuments
    CSIDL_COMMON_FAVORITES
    表示所有用户的“我的收藏夹”文件夹。
    CSIDL_COMMON_PROGRAMS
    表示所有用户的“程序”文件夹,例如:C:Documents and SettingsAll UsersStart MenuPrograms
    CSIDL_COMMON_STARTMENU
    表示所有用户的“开始菜单”文件夹,例如:C:Documents and SettingsAll UsersStart Menu
    CSIDL_COMMON_STARTUP
    表示所有用户的“启动”文件夹,例如:C:Documents and SettingsAll UsersStart MenuProgramsStartup
    CSIDL_COMMON_TEMPLATES
    表示所有用户的“模块”文件夹,例如:C:Documents and SettingsAll UsersTemplates
    CSIDL_CONTROLS
    表示“控制面板”文件夹
    CSIDL_COOKIES
    表示当前用户Internet Explorer的cookie 文件夹,例如:C:Documents and SettingsusernameCookies
    CSIDL_DESKTOP
    表示“桌面”虚拟文件夹,包含了计算机中的所有内容
    CSIDL_DESKTOPDIRECTORY
    表示当前用户的“桌面”文件夹,例如:C:Documents and SettingsusernameDesktop

  • 相关阅读:
    jquery操作select(取值,设置选中)
    POST 服务测试PHP页面
    Web开发者不容错过的20段CSS代码(二)
    Web开发者不容错过的20段CSS代码(一)
    Word排版技巧
    需求分析的故事——如何练就需求分析的火眼金晴?
    如何来书写需求说明书
    Struts配置文件阐释
    做需求要会问为什么和需求场景
    跑通并调试第一个Java Struts程序
  • 原文地址:https://www.cnblogs.com/blogpro/p/11446018.html
Copyright © 2011-2022 走看看