星期一

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
//************************************************ ***************************/

沒有留言:

張貼留言