随笔 - 16  文章 - 0 评论 - 0 阅读 - 31965
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

今天来介绍两个获取系统文件夹API函数
获取Windows文件夹的路径
UINT GetWindowsDirectory(LPTSTR lpBuffer,UINT uSize)

获取systrm32文件夹的路径
UINT GetSystemDirectory(LPTSTR lpBuffer,UINT uSize)


这两个函数的使用方法很简单,和以前一样有两种方法来确定缓冲区的长度:
1、Windows定义了一个文件路径的最长长度的常量MAX_PATH(值为260),我们可以用它来建立字符串缓冲区;
2、给缓冲区传入NULL,调用函数成功后将返回缓冲区的长度。

下面来看例子:
wstring getWindowsDirectory()
{
    wstring wstr;
    UINT size=GetWindowsDirectory(NULL,0);
    wchar_t *path=new wchar_t[size];
    if(GetWindowsDirectory(path,size)!=0) //函数调用失败将返回0
    {
     wstr=path;
    }
    delete [] path;
    return wstr;
}

wstring getSystemDirectory()
{
    wstring wstr;
    UINT size=GetSystemDirectory(NULL,0);
    wchar_t *path=new wchar_t[size];
    if(GetSystemDirectory(path,size)!=0)
    {
     wstr=path;
    }
    delete [] path;
    return wstr;
}

 
posted on   了无尘  阅读(2145)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示