使用win32创建目录意味着

时间:2014-07-05 16:04:15

标签: c++ winapi

使用shlwapi.dll和shfolder.dll需要有关目录创建的帮助。

TCHAR szPath[MAX_PATH];
char buffer[]="My\Folder";
char *lpStr;
lpStr=buffer;

if(SUCCEEDED(SHGetFolderPath(NULL, 
                             CSIDL_APPDATA|CSIDL_FLAG_CREATE,
                             NULL,
                             0,
                             szPath)))
{
    PathAppend(szPath, lpStr);
    SHCreateDirectory(0, L"C:\Documents and Settings\Administrator\Application Data\My\Folder");
}

我真的需要PathAppend吗?它是一个正确的代码,如果没有,我需要什么来酝酿?

1 个答案:

答案 0 :(得分:2)

你应该这样做:

WCHAR szPath[MAX_PATH];

if (SUCCEEDED(SHGetFolderPathW(NULL, 
                             CSIDL_APPDATA|CSIDL_FLAG_CREATE,
                             NULL,
                             0,
                             szPath)))
{
    PathAppendW(szPath, L"My\\Folder");
    SHCreateDirectory(0, szPath);
}