Platform SDK: Win32 API

Interrupt 21h Function 7160h Minor Code 2h

Retrieves the complete path in its long filename form for the specified file or path. The function returns the long name for all directories in the path.

mov ax, 7160h 
mov cl, 2                  ; Get Long Path Name
mov ch, SubstExpand        ; see below
mov si, seg SourcePath     ; see below
mov ds, si
mov si, offset SourcePath
mov di, seg DestPath       ; see below
mov es, di
mov di, offset DestPath
int 21h
jc  error

Parameters

SubstExpand
Flag that indicates if the returned path should contain a SUBST drive letter or the path associated with the SUBST drive. Zero is specified to indicate that the returned path should contain the path associated with the SUBST drive, and 80h is specified to indicate that the returned path should contain the SUBST drive letter.
SourcePath
Pointer to a null-terminated string that names the file or path to retrieve the complete long path for. Either the long filename or the short form is acceptable as the source string.
DestPath
Pointer to the buffer that receives the complete path. The buffer should be large enough to contain the largest possible Windows 95/98 path (260 characters, including the drive letter, colon, leading backslash, and terminating null character).

Return Values

Clears the carry flag, modifies the AX register, and returns the complete long path in the given buffer if successful. Otherwise, the function sets the carry flag and sets the AX register to an error value.

Remarks

Relative paths containing the characters "." and ".." in SourcePath are fully expanded. Since this function performs validation, SourcePath must contain either a valid filename or path.