最近做一个工程的时候需要保存一些配置文件到用户的机器上,在xp以下的操作系统中保存正常,但是在vista下无法保存。后来发现是vista在文件磁盘加了写保护,程序只有......
最近做一个工程的时候需要保存一些配置文件到用户的机器上,在xp以下的操作系统中保存正常,但是在vista下无法保存。后来发现是vista在文件磁盘加了写保护,程序只有在特定的目录中才有些权限。所以,需要获得系统的一些特殊目录。
其实,这个目录可以通过windows下的环境变量获得:
#include <stdio.h> #include <stdlib.h>
int main(int argc, char *argv[]) {
printf("%s\n",getenv("ALLUSERSPROFILE")); getchar(); return 0; }
其实,windows下还有其他许多有用的环境变量,总结如下:
%SystemDrive% 操作系统所在的分区号。如 C:
%SystemRoot% 操作系统根目录。如 C:\WINDOWS
%windir% 操作系统根目录。如 C:\WINDOWS
%ALLUSERSPROFILE% 相当于 C:\Documents and Settings\All Users
%APPDATA% 相当于 C:\Documents and Settings\用户目录\Application Data
%ProgramFiles% 相当于 C:\Program Files
%CommonProgramFiles% 相当于 C:\Program Files\Common Files
%HOMEDRIVE% 操作系统所在的分区号。如:C:
%HOMEPATH% 相当于 \Documents and Settings\用户目录
%USERPROFILE% 相当于 C:\Documents and Settings\用户目录
%HOMEDRIVE% = C:\ 当前启动的系统的所在分区
%SystemRoot% = C:\WINDOWS 当前启动的系统的所在目录
%windir% = %SystemRoot% = C:\WINDOWS 当前启动的系统的所在目录
%USERPROFILE% = C:\Documents and Settings\sihochina 当前用户数据变量
%HOMEPATH% = C:\Documents and Settings\sihochina 当前用户环境变量
%system% = C:\WINDOWS\SYSTEM32
%ALLUSERSPROFILE% : 列出所有用户Profile文件位置。
1/2 1 2 下一页 尾页 |