zoukankan      html  css  js  c++  java
  • GetCurrentDirectory和SetCurrentDirectory函数

    转自:http://blog.csdn.net/wishfly/article/details/2906187


    在开发软件里,常常碰到要读取当前目录下的配置参数文件,或者打开当前目录下别的程序来运行,那么就需要获取当前进程的目录位置,这就需要使用函数GetCurrentDirectory获取当前进程所有在的目录。同时也可以使用SetCurrentDirectory函数来改变进程的当前目录。
     
    函数GetCurrentDirectorySetCurrentDirectory声明如下:
     
    WINBASEAPI
    DWORD
    WINAPI
    GetCurrentDirectoryA(
        __in DWORD nBufferLength,
        __out_ecount_part_opt(nBufferLength, return + 1) LPSTR lpBuffer
        );
    WINBASEAPI
    DWORD
    WINAPI
    GetCurrentDirectoryW(
        __in DWORD nBufferLength,
        __out_ecount_part_opt(nBufferLength, return + 1) LPWSTR lpBuffer
        );
    #ifdef UNICODE
    #define GetCurrentDirectory GetCurrentDirectoryW
    #else
    #define GetCurrentDirectory GetCurrentDirectoryA
    #endif // !UNICODE
     
    WINBASEAPI
    BOOL
    WINAPI
    SetCurrentDirectoryA(
        __in LPCSTR lpPathName
        );
    WINBASEAPI
    BOOL
    WINAPI
    SetCurrentDirectoryW(
        __in LPCWSTR lpPathName
        );
    #ifdef UNICODE
    #define SetCurrentDirectory SetCurrentDirectoryW
    #else
    #define SetCurrentDirectory SetCurrentDirectoryA
    #endif // !UNICODE
     
    nBufferLength是缓冲区的大小。
    lpBuffer是接收目录的缓冲区指针。
    lpPathName是设置的目录。
     
    调用函数的例子如下:
    #001  //获取或者改变当前目录路径。
    #002  //蔡军生 2007/10/17 QQ:9073204 深圳
    #003  void GetCurDir(void)
    #004  {
    #005         //
    #006         TCHAR szBuf[MAX_PATH];
    #007         ZeroMemory(szBuf,MAX_PATH);
    #008         if (GetCurrentDirectory(MAX_PATH,szBuf) > 0)
    #009         {
    #010               //获取进程目录成功。
    #011               OutputDebugString(szBuf);
    #012         }
    #013         else
    #014         {
    #015               //改变当前目录位置。
    #016               SetCurrentDirectory(_T("C://"));
    #017         }
    #018 
    #019         OutputDebugString(_T("/r/n"));          
    #020  }

  • 相关阅读:
    [Apio2014]回文串
    省队集训day6 C
    省队集训day6 B
    省队集训Day3 light
    省队集训Day3 tree
    多串匹配
    ubuntu卸载福昕阅读器
    greenlet
    python multithread task_done
    mysql参数调优
  • 原文地址:https://www.cnblogs.com/pamxy/p/2991520.html
Copyright © 2011-2022 走看看