c++中关于GetCurrentDirectory
答案:3 悬赏:60
解决时间 2021-03-24 09:28
- 提问者网友:我喜歡係
- 2021-03-23 16:10
我在MSDN上怎么找不到它的资料啊,我是想获取当前程序的工作目录我找到的是 http://msdn.microsoft.com/zh-cn/library/xzfkbdd6.aspx 不合适 下面这一种方法输出的是乱码 http://blog.163.com/strive_only/blog/static/89380168200910285636730/
最佳答案
- 二级知识专家网友:深街酒徒
- 2021-03-23 17:38
DWORD GetCurrentDirectory(
DWORD nBufferLength, // size of directory buffer
LPTSTR lpBuffer // directory buffer
);
函数功能 获取当前进程的当前目录
参数说明
参数 类型及说明
nBufferLength lpBuffer缓冲区的长度
lpBuffer 指定一个预定义字串,用于装载当前目录
返回值
调用成功 返回装载到lpBuffer的字节数。
如nBufferLength的长度不够,不足以容纳目录,则返回值是必要的缓冲区长度(要求至少这个长度),其中包括空中止字符。零表示失败。使用GetLastError函数可获得错误信息
DWORD nBufferLength, // size of directory buffer
LPTSTR lpBuffer // directory buffer
);
函数功能 获取当前进程的当前目录
参数说明
参数 类型及说明
nBufferLength lpBuffer缓冲区的长度
lpBuffer 指定一个预定义字串,用于装载当前目录
返回值
调用成功 返回装载到lpBuffer的字节数。
如nBufferLength的长度不够,不足以容纳目录,则返回值是必要的缓冲区长度(要求至少这个长度),其中包括空中止字符。零表示失败。使用GetLastError函数可获得错误信息
全部回答
- 1楼网友:努力只為明天
- 2021-03-23 20:20
用 这个 吧
CString sPath;
GetModuleFileName(NULL,sPath.GetBufferSetLength(MAX_PATH+1),MAX_PATH);
sPath.ReleaseBuffer();
int len = sPath.ReverseFind('\\') + 1;
m_strPath = sPath.Left(len);// 这个m_strPath是定义的CString的全局对象,即最后获得的当前程序所在的目录,含有最后的“\”,其他的路径你把它附在后面就可以了。
- 2楼网友:荒唐后生
- 2021-03-23 18:42
<p><a href="http://wenwen.soso.com/z/urlalertpage.e?sp=shttp%3a%2f%2fmsdn.microsoft.com%2fen-us%2flibrary%2faa364934" target="_blank">http://msdn.microsoft.com/en-us/library/aa364934</a>(vs.85).aspx</p> <p>好像没有中文版的网页。:(</p>
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯