人気ブログランキング | 話題のタグを見る
(C++)環境変数となってるパスを展開する
%systemroot% とか %ProgramFiles% とかの環境変数のパスをC++で展開する方法です。

Windowsにはそれ用のAPIが用意されているようなので、それを使えばいいようです。

APIは ExpandEnvironmentStringsを使います。
使い方はこんな感じです。

//MFCでCString使ったとき
CString filePath = _T("%ProgramFiles%\\xxx\\xxx.exe");
char chrPath[MAX_PATH];
CString filePath2 ;
//環境変数を展開
ExpandEnvironmentStrings(filePath,chrPath,sizeof( chrPath ));
filePath2 = chrPath;
 
//C++,Win32(MFC無し)
WCHAR CheckFileName[1024];
swprintf( CheckFileName , _T("%%APPDATA%%\\Common.xcu") );
WCHAR CheckFileName2[1024];
//環境変数を展開
ExpandEnvironmentStrings( CheckFileName ,CheckFileName2,sizeof( CheckFileName2 ));


参考:
環境変数の展開
by jehoshaphat | 2010-05-12 23:55 | C/C++開発 | Comments(0)


<< OpenOfficeをActi... グループポリシーのスタートアッ... >>