diff --git a/rtl/win/sysutils.pp b/rtl/win/sysutils.pp index ff9ea6f3e3..8a96ef42a1 100644 --- a/rtl/win/sysutils.pp +++ b/rtl/win/sysutils.pp @@ -221,7 +221,7 @@ begin rc := WNetGetUniversalNameW (pwidechar(s), UNIVERSAL_NAME_INFO_LEVEL, buf, @size); end; if rc = NO_ERROR then - Result := PRemoteNameInfo(buf)^.lpUniversalName + Result := PRemoteNameInfoW(buf)^.lpUniversalName else if rc = ERROR_NOT_CONNECTED then Result := filename else diff --git a/rtl/win/wininc/struct.inc b/rtl/win/wininc/struct.inc index dbe2a1e494..826b190919 100644 --- a/rtl/win/wininc/struct.inc +++ b/rtl/win/wininc/struct.inc @@ -6458,14 +6458,35 @@ Const TREASSIGNBLOCKS = REASSIGN_BLOCKS; PREASSIGNBLOCKS = ^REASSIGN_BLOCKS; - REMOTE_NAME_INFO = record + REMOTE_NAME_INFOA = record lpUniversalName : LPTSTR; lpConnectionName : LPTSTR; lpRemainingPath : LPTSTR; end; - _REMOTE_NAME_INFO = REMOTE_NAME_INFO; - TREMOTENAMEINFO = REMOTE_NAME_INFO; - PREMOTENAMEINFO = ^REMOTE_NAME_INFO; + _REMOTE_NAME_INFOA = REMOTE_NAME_INFOA; + TREMOTENAMEINFOA = REMOTE_NAME_INFOA; + PREMOTENAMEINFOA = ^REMOTE_NAME_INFOA; + + REMOTE_NAME_INFOW = record + lpUniversalName : LPWSTR; + lpConnectionName : LPWSTR; + lpRemainingPath : LPWSTR; + end; + _REMOTE_NAME_INFOW = REMOTE_NAME_INFOW; + TREMOTENAMEINFOW = REMOTE_NAME_INFOW; + PREMOTENAMEINFOW = ^REMOTE_NAME_INFOW; + +{$IFNDEF UNICODE} + REMOTE_NAME_INFO = REMOTE_NAME_INFOA; + _REMOTE_NAME_INFO = REMOTE_NAME_INFOA; + TREMOTENAMEINFO = REMOTE_NAME_INFOA; + PREMOTENAMEINFO = ^REMOTE_NAME_INFOA; +{$ELSE UNICODE} + REMOTE_NAME_INFO = REMOTE_NAME_INFOW; + _REMOTE_NAME_INFO = REMOTE_NAME_INFOW; + TREMOTENAMEINFO = REMOTE_NAME_INFOW; + PREMOTENAMEINFO = ^REMOTE_NAME_INFOW; +{$ENDIF UNICODE} (* TODO: OLE