GetCurrentDirectoryA and SetCurrentDirectoryA


#include <iostream>
#include <Windows.h>
#include <tchar.h>

using std::cout;
using std::endl;

int main()
{
    char buf[MAX_PATH];
    DWORD dwRet;
    dwRet = GetCurrentDirectoryA(MAX_PATH,buf);
    // 返回0表示得到文件的当路径失败,当前路径就是dsw所在的文件夹
    if(0 == dwRet)
    {
        cout << "GetCurrentDirectory failed :" << dwRet << endl;
        return 1;
    }
    if(dwRet > MAX_PATH)
    {
        cout << "GetCurrentDirectory failed(buf too small,need "
            << dwRet << " chars)" << endl;
        return 2;
    }

    cout << "GetCurrentDirectory is :" << endl;
    cout << buf << endl;
    cout << "realSize :" << dwRet << endl;
    cout << endl;

    char oldPath[MAX_PATH];
    strcpy(oldPath,buf);

    // 设置当前路径为c盘
    // SetCurrentDirectoryA("..")   // 就是设置目录为当前目录的上级目录
    SetCurrentDirectoryA("C:\\");
    dwRet = GetCurrentDirectoryA(MAX_PATH,buf);
    cout << "GetCurrentDirectory is :" << endl;
    cout << buf << endl;
    cout << "realSize :" << dwRet << endl;
    SetCurrentDirectoryA(oldPath);
    cout << endl;

    dwRet = GetCurrentDirectoryA(MAX_PATH,buf);
    cout << "GetCurrentDirectory is :" << endl;
    cout << buf << endl;
    cout << "realSize :" << dwRet << endl;
    cout << endl;

    GetModuleFileNameA(NULL,buf,MAX_PATH);
    cout << "Current module path : " << endl;
    cout << buf << endl;
    cout << endl;

    system("pause");
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值