source: dev/trunk/ab5.0/jenga/include/common/Environment.h @ 524

Last change on this file since 524 was 524, checked in by dai_9181, 15 years ago

ヘッダファイルを整理中

File size: 1.4 KB
Line 
1#pragma once
2
3namespace Jenga{
4namespace Common{
5
6#pragma warning(disable : 4996)
7
8class Environment
9{
10public:
11    static const std::string GetCurrentDir()
12    {
13        char temp[MAX_PATH];
14        ::GetCurrentDirectory( MAX_PATH, temp );
15        return temp;
16    }
17
18    static const std::string &GetAppDir()
19    {
20        static std::string appDir;
21        if( appDir.size() == 0 )
22        {
23            char temporary[MAX_PATH];
24            char temp2[MAX_PATH];
25            char temp3[MAX_PATH];
26            GetModuleFileName(GetModuleHandle(0),temporary,MAX_PATH);
27            _splitpath(temporary,temp2,temp3,NULL,NULL);
28            if( temp3[lstrlen(temp3)-1]=='\\' )
29            {
30                temp3[lstrlen(temp3)-1] = 0;
31            }
32            lstrcat(temp2,temp3);
33
34            appDir = temp2;
35        }
36        return appDir;
37    }
38
39    static const std::string &GetAppFileName()
40    {
41        static std::string appFileName;
42        if( appFileName.size() == 0 )
43        {
44            char temporary[MAX_PATH];
45            char temp2[MAX_PATH];
46            char temp3[MAX_PATH];
47            GetModuleFileName(GetModuleHandle(0),temporary,MAX_PATH);
48            _splitpath(temporary,NULL,NULL,temp2,temp3);
49            lstrcat(temp2,temp3);
50
51            appFileName = temp2;
52        }
53        return appFileName;
54    }
55
56    static const std::string &GetAppFilePath()
57    {
58        static std::string appFilePath;
59        if( appFilePath.size() == 0 )
60        {
61            char temporary[MAX_PATH];
62            GetModuleFileName(GetModuleHandle(0),temporary,MAX_PATH);
63
64            appFilePath = temporary;
65        }
66        return appFilePath;
67    }
68};
69
70
71}}
Note: See TracBrowser for help on using the repository browser.