Application/MFC

[MFC] 심볼릭 링크 혹은 정션 링크 위치 가져오기

devsalix 2023. 2. 21. 14:15
728x90

Symbolic Link 혹은 Junction Link의 위치를 가져오고 싶다면

 

GetFinalPathNameByHandle 함수를 사용 하면 됩니다

 

사용법으로는 아래와 같이 작성 하면 링크가 바라보는 위치를 가져올 수 있습니다

 

CString GetFinalPath(CString strSource)
{
	WCHAR szPath[MAX_PATH];

	HANDLE hFile = CreateFile(strSource, 0, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, NULL);
	if(hFile == INVALID_HANDLE_VALUE)
	{
		return _T("");
	}

	wcscpy_s(szPath, strSource);
	if(GetFinalPathNameByHandle(hFile, szPath, MAX_PATH, VOLUME_NAME_DOS) == FALSE)
	{
		CloseHandle(hFile);
		return _T("");
	}

	strSource.Format(_T("%s"), szPath);

	CloseHandle(hFile);
	return strSource;
}

 

 

 


제 글이 도움이 되셨다면 댓글 & 공감 부탁드려요 😀

 

 
728x90
반응형