윈도우 XP 에서 사용자 계정 폴더를 가져오는 함수의 소스 코드는 아래와 같다.
022: /**
023: * @brief 현재 사용자 계정 폴더를 리턴한다.
024: * @param pszDir 현재 사용자 계정 폴더 PATH 가 저장될 변수
025: * @param iDirSize pszDir 변수의 크기
026: * @returns 성공하면 true 를 리턴하고 그렇지 않으면 false 를 리턴한다.
027: */
028: bool GetUserDirectory( char * pszDir, int iDirSize )
029: {
030: OSVERSIONINFO osv;
031:
032: osv.dwOSVersionInfoSize = sizeof(osv);
033: GetVersionEx( &osv );
034:
035: if( osv.dwPlatformId != VER_PLATFORM_WIN32_NT ) return false;
036:
037: char szUserId[255], szRootDir[MAX_PATH];
038: DWORD iLen = sizeof(szUserId);
039:
040: memset( szUserId, 0, sizeof(szUserId) );
041: memset( szRootDir, 0, sizeof(szRootDir) );
042:
043: if( GetUserName( szUserId, &iLen ) == FALSE ) return false;
044: if( GetWindowsDirectory( szRootDir, sizeof(szRootDir) ) == 0 ) return false;
045:
046: _snprintf( pszDir, iDirSize, "%.1s:\\%s\\%s", szRootDir, "Documents and Settings", szUserId );
047:
048: return true;
049: }
//////////////////////////////////////////////////////////////////////////////////////
윈도우 비스타 또는 윈도우 7 에서 사용자 계정 폴더를 가져오는 함수의 소스 코드는 아래와 같다.
022: /**
023: * @brief 현재 사용자 계정 폴더를 리턴한다.
024: * @param pszDir 현재 사용자 계정 폴더 PATH 가 저장될 변수
025: * @param iDirSize pszDir 변수의 크기
026: * @returns 성공하면 true 를 리턴하고 그렇지 않으면 false 를 리턴한다.
027: */
051: bool GetVistaUserDirectory( char * pszDir, int iDirSize )
052: {
053: OSVERSIONINFO osv;
054:
055: osv.dwOSVersionInfoSize = sizeof(osv);
056: GetVersionEx( &osv );
057:
058: if( osv.dwPlatformId != VER_PLATFORM_WIN32_NT ) return false;
059:
060: char szUserId[255], szRootDir[MAX_PATH];
061: DWORD iLen = sizeof(szUserId);
062:
063: memset( szUserId, 0, sizeof(szUserId) );
064: memset( szRootDir, 0, sizeof(szRootDir) );
065:
066: if( GetUserName( szUserId, &iLen ) == FALSE ) return false;
067: if( GetWindowsDirectory( szRootDir, sizeof(szRootDir) ) == 0 ) return false;
068:
069: _snprintf( pszDir, iDirSize, "%.1s:\\%s\\%s", szRootDir, "users", szUserId );
070:
071: return true;
072: }
[출처] 비스타(Vista), 윈도우7 에서 사용자 계정 폴더 가져오는 함수|작성자 까미유
'C & C++ > C & C++' 카테고리의 다른 글
메모리 관련 정보 얻어오기 (0) | 2012.08.13 |
---|---|
wchar -> char char -> wchar (0) | 2012.07.31 |
내문서 경로 가져오기 (0) | 2012.06.20 |
바탕화면 폴더 경로 가져오기 (0) | 2012.06.20 |
가상키 코드 리스트 (0) | 2012.06.12 |
댓글