カレントディレクトリを求める Programming Tips Top


■ カレントディレクトリを取得する。
     
    char szCurrDir[256];

    GetCurrentDirectory( sizeof(szCurrDir), szCurrDir ); 
    AfxMessageBox(szCurrDir, MB_OK);





■ 実行ファイルのフルパスを求めてからカレントディレクトリを取得する。

    char szPath    [_MAX_PATH ];
    char szDrive   [_MAX_DRIVE];
    char szDir     [_MAX_DIR  ];
    char szFileName[_MAX_FNAME];
    char szExt     [_MAX_EXT  ];

    ::GetModuleFileName(NULL, szPath, _MAX_PATH);   // 実行ファイルのフルパスを取得
    
     _splitpath(szPath, szDrive, szDir, szFileName, szExt); // フルパスを分解 





■ カレントディレクトリを変更する。
 
    SetCurrentDirectory("C:\\TEMP"); 


DWORD GetCurrentDirectory(
  DWORD nBufferLength,  // ディレクトリバッファのサイズ
  LPTSTR lpBuffer       // ディレクトリバッファ
);



BOOL SetCurrentDirectory(
  LPCTSTR lpPathName   // 新しいカレントディレクトリ
);



Copyright (C) CRIMSON Systems