2009-11-04 4 views
0

다른 경로를 기준으로 상대 경로를 얻는 좋은 방법이 WinAPI에 있습니까? 예를 들어 : 특정 디렉토리에 상대적인 파일 경로 얻기

는 상대 경로 목록 유무 :

\의 B \ C 형 \ d를

그리고

\ B로 상대 경로에 그들 모두를 변경하려면 \ c

이 작업을 수행하는 깔끔한 방법이 있습니까? 아니면 경로 파싱을 받아야합니까?

+0

dupe : http://stackoverflow.com/questions/275689/how-to-relative-path-from-absolute-path –

+0

nope, thats .net –

+0

잘 복제되지 않았습니다. 하나는 C#이고 하나는 Win32 용입니다 .. – Goz

답변

4

내가 아는 한 Windows API에는 그러한 기능이 없다. 해당 기능을 제공하는 article on CodeGuru

편집 : 나는 그렇군요
this answer에서 언급 한 바와 같이 쉘 API의 PathRelativePathTo()있다.

+0

그것은 확실히 아주 가깝습니다. 대단히 고마워요 :-) – Benj

+0

당신은 내게 25 점을 빚지고 있습니다. –

+0

당신이 옳았어요, 당신에게 수표를 쓸 것입니다;) –

1

이 작업을 직접 수행하는 방법을 모르지만 PathCommonPrefixPathCombine을 사용하여 몇 단계로 수행 할 수 있습니다. 그렇지 않은 경우 boost::filesystem이 가능합니다 (예 : relative_path() 메서드 사용).