This function returns the name used to access a directory or file on a redirected local device from the network. Its primary use is to return the information for directories that are part of a distributed file store (DFS), which are redirected from a directory below the root of the associated local device. Providers that do not support this type of feature do not have to support this function, as MPR provides default behavior for this case.
DWORD NPGetUniversalName( LPTSTR lpLocalPath, DWORD dwInfoLevel, LPVOID lpBuffer, LPDWORD lpBufferSize );
lpLocalPath
Contains the local path to an object on a network resource. This path is a drive-based path.
dwInfoLevel
The level of detail of information the caller is interested in as described above. This may have the value UNIVERSAL_NAME_INFO_LEVEL or REMOTE_NAME_INFO_LEVEL, depending upon the level of information required.
lpBuffer
Points to a buffer to receive the information the user has requested. The buffer contains a UNIVERSAL_NAME_INFO structure or a REMOTE_NAME_INFO structure (depending upon the value of dwInfoLevel), followed by the return data pointed to from within the structure. The structures returned are described below.
lpBufferSize
This is used to specify the size, in bytes, of the buffer passed in. If the call fails because the buffer is not big enough, this location will be used to return the required buffer size.
WN_BAD_LOCALNAME | lpLocalPath does not start with a valid redirected local disk device name. |
WN_BAD_LEVEL | dwInfoLevel is not set to a valid value. |
WN_NOT_CONNECTED | lpLocalPath is not a connected network resource. |
WN_MORE_DATA | lpBuffer is not a large enough buffer to return the result. lpBufferSize is returned with the required buffer size. |
WN_NO_NETWORK | The network is not present. |
The structures that can be returned have the following format: UNIVERSAL_NAME_INFO and REMOTE_NAME_INFO.