Knowledge Base |

# 16-Bit App WNetGetCaps Call Return Value on Win32

Article ID: 120359

Article Last Modified on 1/20/2000

APPLIES TO

- Microsoft Win32 Software Development Kit (SDK) 3.5
- Microsoft Win32 Software Development Kit (SDK) 3.51
- Microsoft Win32 Software Development Kit (SDK) 4.0

This article was previously published under Q120359

## SUMMARY

16-bit Windows-based applications often call WNetGetCaps() to determine the capabilities of the installed network. When a Windows-based application running on Windows NT calls WNetGetCaps(), the return value is 0x8004, which corresponds to WNNC_NET_Multinet | WNNC_SUBNET_WinWorkgroups.
However, the Windows NT Windows on Windows (WOW) layer and Windows 95 do not support the Windows for Workgroups Multinet (MNet) APIs, so a call to one of these APIs returns a failed Dynalink error.
The return value of WNetGetCaps() may not seem technically correct for Windows for Workgroups. It was designed to be compatible with all existing 16-bit Windows-based applications.
If you need to determine whether a 16-bit Windows-based application is running on Windows NT or MS-DOS/Windows version 3.1, use GetWinFlags(). GetWinFlags() returns a WF_WINNT flag if the application is running under WOW on Windows NT.
GetWinFlags() is an existing function that was modified in WOW to add the following flag:

       #define WF_WINNT         0x4000

Additional query words: 3.50 4.00

Keywords: KB120359