获取进程的当前目录
来源:互联网 发布:xboxone安卓软件 编辑:程序博客网 时间:2024/05/16 12:24
=c:=c:\ultil\bin
=d:=d:\program
如果我们调用Win32函数的时候,传递给它一个指定驱动器,并且该驱动器不是当前驱动器,系统就到进程的环境变量中查找与该驱动器相关的变量。如果变量存在,就是用变量的值作为当前目录。如果不存在,系统就假定指定驱动器的当前目录是根目录。
可以通过调用GetFullPathName来实现,原型如下:
DWORD GetFullPathName(
LPCTSTR lpFileName, // file name
DWORD nBufferLength, // size of path buffer,建议取值为:MAX_PATH
LPTSTR lpBuffer, // path buffer
LPTSTR *lpFilePart // address of file name in path
);
功能说明
从一指定文件得到文件的路径
参数说明
LPCTSTR lpFileName, 指定文件的名字
DWORD nBufferLength,缓存区的大小
LPTSTR lpBuffer, 用于存放路径的缓存区
LPTSTR *lpFilePart 文件名的起始地址
返回值
如果调用成功 返回实际路径的长度
如果缓冲区太小,不能装下文件完整路径的话 返回值就是缓冲区的值 所以我们一般都将缓存区大小设置得足够大
调用失败 返回0 用GetLastError获得错误信息
例如:要获取C盘的当前目录,可以如下操作:
TCHAR szPath[MAX_PATH];
::GetFullPathName(_T("x:"), MAX_PATH, szPath, NULL);
x为盘符,如果为当前进程所在的盘符,则szPath返回当前进程所在的目录,如果x为其他目录,又可分2种情况,如果环境变量中有该盘符的记录,则直接返回环境变量中的值,如果环境变量中没有,则直接返回以该盘符为根目录的路径x:\。另外一点,环境变量是按字母排序,因此,盘符变量一般排在前面。
- 获取进程的当前目录
- CreateProcess的当前进程的当前目录
- java获取用户的当前工作目录
- 怎样获取程序运行的当前目录
- 获取c++执行文件的当前目录
- 获取应用程序的当前目录(VC)
- Win32 获取软件运行的当前目录
- vs的当前目录
- C语言-获取程序运行的当前目录函数GetCurrentDirectory
- 获取指定进程所有线程的当前执行模块
- 枚举系统的当前进程
- 子进程继承父进程的当前工作目录的问题
- 获取可执行文件的当前路径
- 获取应用程序的当前路径
- 获取Repeater的当前行号
- 获取IOS的当前版本号
- 获取FragmentPagerAdapter的当前fragment
- 获取AutoCAD的当前配置文件
- 购物网第三阶段总结笔记4:新品上架页面和特价商品页面
- Bootstrap启动代码分析总结一
- Android SmsMessage类详解
- 新手常见的CSS浏览器兼容问题
- TFS安装
- 获取进程的当前目录
- SendMessage函数的常用消息及其应用 1
- 在ie中输入http://localhost:8080提交请求时,一直访问不到页面
- 用委托传值
- NSIS做的安装程序,可接受命令行参数,实现静默安装,静默卸载等等,真不错!-来自手册
- 内存压缩是什么?有什么用?
- 一个JS+jquery全选函数
- C++委托
- 如何用javascript把数据转EXCEL的饼图输出