1. C語言中怎麼實現建文件夾語句!
#include <stdio.h>
#include <stdlib.h>
#include <shlobj.h>
void main(int argc, char* argv[])
{
TCHAR szPath[MAX_PATH];
if(SUCCEEDED(SHGetFolderPath(NULL,
CSIDL_COMMON_ADMINTOOLS|CSIDL_FLAG_CREATE,
NULL,
0,
szPath)))
{
printf(szPath);
printf("\n");
}
}
//***************************************************************************
//CSIDL_FLAG_CREATE($8000)
// windows 2000:如果這個CSIDL所引用的文件夾不存在,則創建這個文件夾!.
// CSIDL_FLAG_DONT_VERIFY($4000)
// WINDOWS 2000: 無論這個CSIDL所引用的文件夾是否存在都使用它!
//CSIDL_ADMINTOOLS($30)
// 表示當前用戶的「管理工具」系統文件夾
//CSIDL_ALTSTARTUP($h1D)
// 不詳
//CSIDL_APPDATA($1A)
// 表示當前用戶的特定的應用程序數據存儲文件夾,例如:C:\Documents and Settings\username\Application Data
//CSIDL_BITBUCKET($A)
// 表示回收站
//CSIDL_COMMON_ADMINTOOLS($2F)
// 表示所有用戶的「管理工具」系統文件夾
//CSIDL_COMMON_ALTSTARTUP($1D)
// 表示所有用戶的 (只支持WINDOWS NT 系統)
//CSIDL_COMMON_APPDATA($23)
// 表示所有用戶的特定的應用程序數據存儲文件夾,例如:C:\Documents and Settings\All Users\Application Data
//CSIDL_COMMON_DESKTOPDIRECTORY($19)
// 表示所有用戶的「桌面」文件夾,例如:C:\Documents and Settings\All Users\Desktop。
//CSIDL_COMMON_DOCUMENTS($2E)
// 表示所有用戶的「我的文檔」文件夾,例如:C:\Documents and Settings\All Users\Documents
//CSIDL_COMMON_FAVORITES($1F)
// 表示所有用戶的「我的收藏夾」文件夾。
//CSIDL_COMMON_PROGRAMS($17)
// 表示所有用戶的「程序」文件夾,例如:C:\Documents and Settings\All Users\Start Menu\Programs
//CSIDL_COMMON_STARTMENU($16)
// 表示所有用戶的「開始菜單」文件夾,例如:C:\Documents and Settings\All Users\Start Menu
//CSIDL_COMMON_STARTUP($18)
// 表示所有用戶的「啟動」文件夾,例如:C:\Documents and Settings\All Users\Start Menu\Programs\Startup
//CSIDL_COMMON_TEMPLATES($2D)
// 表示所有用戶的「模塊」文件夾,例如:C:\Documents and Settings\All Users\Templates
//CSIDL_CONTROLS($3)
// 表示「控制面板」文件夾
//CSIDL_COOKIES($21)
// 表示當前用戶Internet Explorer的cookie 文件夾,例如:C:\Documents and Settings\username\Cookies
//CSIDL_DESKTOP($0)
// 表示「桌面」虛擬文件夾,包含了計算機中的所有內容
//CSIDL_DESKTOPDIRECTORY($10)
// 表示當前用戶的「桌面」文件夾,例如:C:\Documents and Settings\username\Desktop
//CSIDL_DRIVES($11)
// 表示「我的電腦」虛擬文件夾,包含了計算機中所有的驅動器
//CSIDL_FAVORITES($6)
// 表示當前用戶的「收藏夾」文件夾,例如:C:\Documents and Settings\username\Favorites
//CSIDL_FONTS($14)
// 表示「系統字體」文件夾,例如:C:\WINNT\Fonts
//CSIDL_HISTORY($22)
// 表示Inernet Explorer的「歷史記錄」文件夾
//CSIDL_INTERNET($1)
// 表示Internet的這個虛擬文件夾
//CSIDL_INTERNET_CACHE($20)
// 表示當前用戶的Internet Explorer的"Cache"文件夾,例如:C:\Documents and Settings\username\Temporary Internet Files
//CSIDL_LOCAL_APPDATA($1C)
// 表示當前用戶的應用程序數據文件夾,例如:C:\Documents and Settings\username\Local Settings\Application Data
//CSIDL_MYMUSIC
// 表示當前用戶存儲音樂文件的文件夾,例如:C:\Documents and Settings\User\My Documents\My Music
//CSIDL_MYPICTURES($27)
// 表示當前用戶存儲圖像文件的文件夾,例如:C:\Documents and Settings\username\My Documents\My Pictures
//CSIDL_NETHOOD($13)
// 表示當前用戶存在的網路連接的文件夾,例如:C:\Documents and Settings\username\NetHood
//CSIDL_NETWORK($12)
// 表示「網上鄰居」這個虛擬文件夾
//CSIDL_PERSONAL($5)
// 表示當前用戶的「我的文檔」文件夾,例如:C:\Documents and Settings\username\My Documents
//CSIDL_PRINTERS($4)
// 指向「列印機」這個虛擬文件夾
//CSIDL_PRINTHOOD($1B)
// 表示當前用戶存在的網路列印機的虛擬文件夾,例如:C:\Documents and Settings\username\PrintHood
//CSIDL_PROFILE($28)
// 表示當前用用戶配置文件的文件夾
//CSIDL_PROGRAM_FILES($26)
// 表示程序文件的文件夾,例如:C:\Program Files
//CSIDL_PROGRAM_FILES_COMMON($2B)
// 表示系統程序共用組件文件夾,例如:C:\Program Files\Common
//CSIDL_PROGRAMS($2)
// 表示當前用戶的「程序」菜單文件夾,例如:C:\Documents and Settings\username\Start Menu\Programs
//CSIDL_RECENT($8)
// 表示當前用戶的「文檔」菜單文件夾,例如:C:\Documents and Settings\username\Start Menu\Programs
//CSIDL_SENDTO($9)
// 表示當前用戶的「發送到」文件夾,例如:C:\Documents and Settings\username\SendTo
//CSIDL_STARTMENU($B)
// 表示當前用戶的「開始」菜單文件夾,例如:C:\Documents and Settings\username\Start Menu
//CSIDL_STARTUP($7)
// 表示當前用戶的「啟動」菜單文件夾,例如:C:\Documents and Settings\username\Start Menu\Programs\Startup
//CSIDL_SYSTEM($25)
// 表示WINDOWS系統的系統文件夾,例如:C:\WINNT\SYSTEM32
//CSIDL_TEMPLATES($15)
// 表示的是系統中存儲文檔模塊的文件夾
//CSIDL_WINDOWS($24)
// 表示的是系統中Windows目錄的文件珍,例如:C:\WINNT
//***************************************************************************/
CSIDL_PERSONAL
:
void main(int argc, char* argv[])
{
TCHAR szPath[MAX_PATH];
if(SUCCEEDED(SHGetFolderPath(NULL,
CSIDL_PERSONAL|CSIDL_FLAG_CREATE,
NULL,
0,
szPath)))
{
printf(szPath);
printf("\n");
}
}
網站拿去看!
http://cnxhacker.net/article/show/2881.html
http://news.hackzj.com/200512/2005-12-10/95564_2.html