Contents Index Topic Contents | ||
Previous Topic: PathQuoteSpaces Next Topic: PathRemoveArgs |
PathRelativePathTo
BOOL PathRelativePathTo( LPTSTR pszPath, LPCTSTR pszFrom, DWORD dwAttrFrom, LPCTSTR pszTo, DWORD dwAttrTo );Creates a relative path from two paths.
- Returns TRUE if successful, or FALSE otherwise.
- pszPath
- Address of a string that receives the relative path. This buffer is assumed to be at least MAX_PATH characters in size.
- pszFrom
- Address of a string that contains the path that pszPath will be relative from. This is the path in which the relative path can be used.
- dwAttrFrom
- File attributes of pszFrom. If this value contains FILE_ATTRIBUTE_DIRECTORY, pszFrom is assumed to be directory; otherwise, pszFrom is assumed to be a file.
- pszTo
- Address of a string that contains the path that pszPath will be relative to. The relative path will point to this path.
- dwAttrTo
- File attributes of pszTo. If this value contains FILE_ATTRIBUTE_DIRECTORY, pszTo is assumed to be directory; otherwise, pszTo is assumed to be a file.
Example:
#include <windows.h> #include <iostream.h> #include "Shlwapi.h" void main( void ) { char szOut[MAX_PATH] = ""; char szFrom[] = "c:\\a\\b\\path"; char szTo[] = "c:\\a\\x\\y\\file"; cout << "The relative path is relative from: "; cout << szFrom; cout << "\n"; cout << "The relative path is relative to: "; cout << szTo; cout << "\n"; PathRelativePathTo( szOut, szFrom, FILE_ATTRIBUTE_DIRECTORY, szTo, FILE_ATTRIBUTE_NORMAL); cout << "The relative path is: "; cout << szOut; cout << "\n"; } OUTPUT: ================== The relative path is relative from: c:\a\b\path The relative path is relative to: c:\a\x\y\file The relative path is: ..\x\y\file
Top of Page
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.