/* * winnetwk.h Win32 networking functions * * ========================================================================= * * Open Watcom Project * * Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved. * * This file is automatically generated. Do not edit directly. * * ========================================================================= */ #ifndef _WINNETWK_ #define _WINNETWK_ #ifndef _ENABLE_AUTODEPEND #pragma read_only_file; #endif #include #ifdef __cplusplus extern "C" { #endif /* Network resource scopes */ #define RESOURCE_CONNECTED 0x00000001L #define RESOURCE_GLOBALNET 0x00000002L #define RESOURCE_REMEMBERED 0x00000003L #if (WINVER >= 0x0400) #define RESOURCE_RECENT 0x00000004L #define RESOURCE_CONTEXT 0x00000005L #endif /* Network resource types */ #define RESOURCETYPE_ANY 0x00000000L #define RESOURCETYPE_DISK 0x00000001L #define RESOURCETYPE_PRINT 0x00000002L #if (WINVER >= 0x0400) #define RESOURCETYPE_RESERVED 0x00000008L #endif #define RESOURCETYPE_UNKNOWN 0xFFFFFFFFL /* Network resource usage flags */ #define RESOURCEUSAGE_CONNECTABLE 0x00000001L #define RESOURCEUSAGE_CONTAINER 0x00000002L #if (WINVER >= 0x0400) #define RESOURCEUSAGE_NOLOCALDEVICE 0x00000004L #define RESOURCEUSAGE_SIBLING 0x00000008L #define RESOURCEUSAGE_ATTACHED 0x00000010L #define RESOURCEUSAGE_ALL \ (RESOURCEUSAGE_CONNECTABLE | RESOURCEUSAGE_CONTAINER | RESOURCEUSAGE_ATTACHED) #endif #define RESOURCEUSAGE_RESERVED 0x80000000L /* Network resource display types */ #define RESOURCEDISPLAYTYPE_GENERIC 0x00000000L #define RESOURCEDISPLAYTYPE_DOMAIN 0x00000001L #define RESOURCEDISPLAYTYPE_SERVER 0x00000002L #define RESOURCEDISPLAYTYPE_SHARE 0x00000003L #define RESOURCEDISPLAYTYPE_FILE 0x00000004L #define RESOURCEDISPLAYTYPE_GROUP 0x00000005L #if (WINVER >= 0x0400) #define RESOURCEDISPLAYTYPE_NETWORK 0x00000006L #define RESOURCEDISPLAYTYPE_ROOT 0x00000007L #define RESOURCEDISPLAYTYPE_SHAREADMIN 0x00000008L #define RESOURCEDISPLAYTYPE_DIRECTORY 0x00000009L #endif #define RESOURCEDISPLAYTYPE_TREE 0x0000000AL #if (WINVER >= 0x0400) #define RESOURCEDISPLAYTYPE_NDSCONTAINER 0x0000000BL #endif /* Network connection flags */ #define CONNECT_UPDATE_PROFILE 0x00000001L #define CONNECT_UPDATE_RECENT 0x00000002L #define CONNECT_TEMPORARY 0x00000004L #define CONNECT_INTERACTIVE 0x00000008L #define CONNECT_PROMPT 0x00000010L #define CONNECT_NEED_DRIVE 0x00000020L #if (WINVER >= 0x0400) #define CONNECT_REFCOUNT 0x00000040L #define CONNECT_REDIRECT 0x00000080L #define CONNECT_LOCALDRIVE 0x00000100L #define CONNECT_CURRENT_MEDIA 0x00000200L #define CONNECT_DEFERRED 0x00000400L #define CONNECT_RESERVED 0xFF000000L #endif #if (WINVER >= 0x0500) #define CONNECT_COMMANDLINE 0x00000800L #define CONNECT_CMD_SAVECRED 0x00001000L #endif #if (WINVER >= 0x0600) #define CONNECT_CRED_RESET 0x00002000L #endif /* Network connection dialog flags */ #if (WINVER >= 0x0400) #define CONNDLG_RO_PATH 0x00000001L #define CONNDLG_CONN_POINT 0x00000002L #define CONNDLG_USE_MRU 0x00000004L #define CONNDLG_HIDE_BOX 0x00000008L #define CONNDLG_PERSIST 0x00000010L #define CONNDLG_NOT_PERSIST 0x00000020L #endif /* Network disconnect dialog flags */ #if (WINVER >= 0x0400) #define DISC_UPDATE_PROFILE 0x00000001L #define DISC_NO_FORCE 0x00000040L #endif /* Network name information levels */ #define UNIVERSAL_NAME_INFO_LEVEL 0x00000001L #define REMOTE_NAME_INFO_LEVEL 0x00000002L /* Network name formatting flags */ #if (WINVER >= 0x0400) #define WNFMT_MULTILINE 0x00000001L #define WNFMT_ABBREVIATED 0x00000002L #define WNFMT_INENUM 0x00000010L #define WNFMT_CONNECTION 0x00000020L #endif /* Network information characteristics */ #if (WINVER >= 0x0400) #define NETINFO_DLL16 0x00000001L #define NETINFO_DISKRED 0x00000004L #define NETINFO_PRINTERRED 0x00000008L #endif /* Network connection information flags */ #if (WINVER >= 0x0400) #define WNCON_FORNETCARD 0x00000001L #define WNCON_NOTROUTED 0x00000002L #define WNCON_SHOWLINK 0x00000004L #define WNCON_DYNAMIC 0x00000008L #endif /* Networking error codes */ #define WN_SUCCESS NO_ERROR #define WN_NO_ERROR NO_ERROR #define WN_NOT_SUPPORTED ERROR_NOT_SUPPORTED #define WN_CANCEL ERROR_CANCELLED #define WN_RETRY ERROR_RETRY #define WN_NET_ERROR ERROR_UNEXP_NET_ERR #define WN_MORE_DATA ERROR_MORE_DATA #define WN_BAD_POINTER ERROR_INVALID_ADDRESS #define WN_BAD_VALUE ERROR_INVALID_PARAMETER #define WN_BAD_USER ERROR_BAD_USERNAME #define WN_BAD_PASSWORD ERROR_INVALID_PASSWORD #define WN_ACCESS_DENIED ERROR_ACCESS_DENIED #define WN_FUNCTION_BUSY ERROR_BUSY #define WN_WINDOWS_ERROR ERROR_UNEXP_NET_ERR #define WN_OUT_OF_MEMORY ERROR_NOT_ENOUGH_MEMORY #define WN_NO_NETWORK ERROR_NO_NETWORK #define WN_EXTENDED_ERROR ERROR_EXTENDED_ERROR #define WN_BAD_LEVEL ERROR_INVALID_LEVEL #define WN_BAD_HANDLE ERROR_INVALID_HANDLE #if (WINVER >= 0x0400) #define WN_NOT_INITIALIZING ERROR_ALREADY_INITIALIZED #define WN_NO_MORE_DEVICES ERROR_NO_MORE_DEVICES #endif #define WN_NOT_CONNECTED ERROR_NOT_CONNECTED #define WN_OPEN_FILES ERROR_OPEN_FILES #define WN_DEVICE_IN_USE ERROR_DEVICE_IN_USE #define WN_BAD_NETNAME ERROR_BAD_NET_NAME #define WN_BAD_LOCALNAME ERROR_BAD_DEVICE #define WN_ALREADY_CONNECTED ERROR_ALREADY_ASSIGNED #define WN_DEVICE_ERROR ERROR_GEN_FAILURE #define WN_CONNECTION_CLOSED ERROR_CONNECTION_UNAVAIL #define WN_NO_NET_OR_BAD_PATH ERROR_NO_NET_OR_BAD_PATH #define WN_BAD_PROVIDER ERROR_BAD_PROVIDER #define WN_CANNOT_OPEN_PROFILE ERROR_CANNOT_OPEN_PROFILE #define WN_BAD_PROFILE ERROR_BAD_PROFILE #define WN_BAD_DEV_TYPE ERROR_BAD_DEV_TYPE #define WN_DEVICE_ALREADY_REMEMBERED ERROR_DEVICE_ALREADY_REMEMBERED #define WN_CONNECTED_OTHER_PASSWORD ERROR_CONNECTED_OTHER_PASSWORD #if (WINVER >= 0x0501) #define WN_CONNECTED_OTHER_PASSWORD_DEFAULT ERROR_CONNECTED_OTHER_PASSWORD_DEFAULT #endif #define WN_NO_MORE_ENTRIES ERROR_NO_MORE_ITEMS #define WN_NOT_CONTAINER ERROR_NOT_CONTAINER #if (WINVER >= 0x0400) #define WN_NOT_AUTHENTICATED ERROR_NOT_AUTHENTICATED #define WN_NOT_LOGGED_ON ERROR_NOT_LOGGED_ON #define WN_NOT_VALIDATED ERROR_NO_LOGON_SERVERS #endif /* Network resource information */ typedef struct _NETRESOURCEA { DWORD dwScope; DWORD dwType; DWORD dwDisplayType; DWORD dwUsage; LPSTR lpLocalName; LPSTR lpRemoteName; LPSTR lpComment; LPSTR lpProvider; } NETRESOURCEA; typedef NETRESOURCEA *LPNETRESOURCEA; typedef struct _NETRESOURCEW { DWORD dwScope; DWORD dwType; DWORD dwDisplayType; DWORD dwUsage; LPWSTR lpLocalName; LPWSTR lpRemoteName; LPWSTR lpComment; LPWSTR lpProvider; } NETRESOURCEW; typedef NETRESOURCEW *LPNETRESOURCEW; #ifdef UNICODE typedef NETRESOURCEW NETRESOURCE; typedef LPNETRESOURCEW LPNETRESOURCE; #else typedef NETRESOURCEA NETRESOURCE; typedef LPNETRESOURCEA LPNETRESOURCE; #endif /* WNetConnectionDialog1() parameters */ #if (WINVER >= 0x0400) typedef struct _CONNECTDLGSTRUCTA { DWORD cbStructure; HWND hwndOwner; LPNETRESOURCEA lpConnRes; DWORD dwFlags; DWORD dwDevNum; } CONNECTDLGSTRUCTA; typedef CONNECTDLGSTRUCTA *LPCONNECTDLGSTRUCTA; typedef struct _CONNECTDLGSTRUCTW { DWORD cbStruct; HWND hwndOwner; LPNETRESOURCEW lpConnRes; DWORD dwFlags; DWORD dwDevNum; } CONNECTDLGSTRUCTW; typedef CONNECTDLGSTRUCTW *LPCONNECTDLGSTRUCTW; #ifdef UNICODE typedef CONNECTDLGSTRUCTW CONNECTDLGSTRUCT; typedef LPCONNECTDLGSTRUCTW LPCONNECTDLGSTRUCT; #else typedef CONNECTDLGSTRUCTA CONNECTDLGSTRUCT; typedef LPCONNECTDLGSTRUCTA LPCONNECTDLGSTRUCT; #endif #endif /* WNetDisconnectDialog1() parameters */ #if (WINVER >= 0x0400) typedef struct _DISCDLGSTRUCTA { DWORD cbStructure; HWND hwndOwner; LPSTR lpLocalName; LPSTR lpRemoteName; DWORD dwFlags; } DISCDLGSTRUCTA; typedef DISCDLGSTRUCTA *LPDISCDLGSTRUCTA; typedef struct _DISCDLGSTRUCTW { DWORD cbStructure; HWND hwndOwner; LPWSTR lpLocalName; LPWSTR lpRemoteName; DWORD dwFlags; } DISCDLGSTRUCTW; typedef DISCDLGSTRUCTW *LPDISCDLGSTRUCTW; #ifdef UNICODE typedef DISCDLGSTRUCTW DISCDLGSTRUCT; typedef LPDISCDLGSTRUCTW LPDISCDLGSTRUCT; #else typedef DISCDLGSTRUCTA DISCDLGSTRUCT; typedef LPDISCDLGSTRUCTA LPDISCDLGSTRUCT; #endif #endif /* Universal name information */ typedef struct _UNIVERSAL_NAME_INFOA { LPSTR lpUniversalName; } UNIVERSAL_NAME_INFOA; typedef UNIVERSAL_NAME_INFOA *LPUNIVERSAL_NAME_INFOA; typedef struct _UNIVERSAL_NAME_INFOW { LPWSTR lpUniversalName; } UNIVERSAL_NAME_INFOW; typedef UNIVERSAL_NAME_INFOW *LPUNIVERSAL_NAME_INFOW; #ifdef UNICODE typedef UNIVERSAL_NAME_INFOW UNIVERSAL_NAME_INFO; typedef LPUNIVERSAL_NAME_INFOW LPUNIVERSAL_NAME_INFO; #else typedef UNIVERSAL_NAME_INFOA UNIVERSAL_NAME_INFO; typedef LPUNIVERSAL_NAME_INFOA LPUNIVERSAL_NAME_INFO; #endif /* Remote name information */ typedef struct _REMOTE_NAME_INFOA { LPSTR lpUniversalName; LPSTR lpConnectionName; LPSTR lpRemainingPath; } REMOTE_NAME_INFOA; typedef REMOTE_NAME_INFOA *LPREMOTE_NAME_INFOA; typedef struct _REMOTE_NAME_INFOW { LPWSTR lpUniversalName; LPWSTR lpConnectionName; LPWSTR lpRemainingPath; } REMOTE_NAME_INFOW; typedef REMOTE_NAME_INFOW *LPREMOTE_NAME_INFOW; #ifdef UNICODE typedef REMOTE_NAME_INFOW REMOTE_NAME_INFO; typedef LPREMOTE_NAME_INFOW LPREMOTE_NAME_INFO; #else typedef REMOTE_NAME_INFOA REMOTE_NAME_INFO; typedef LPREMOTE_NAME_INFOA LPREMOTE_NAME_INFO; #endif /* Network information */ typedef struct _NETINFOSTRUCT { DWORD cbStructure; DWORD dwProviderVersion; DWORD dwStatus; DWORD dwCharacteristics; ULONG_PTR dwHandle; WORD wNetType; DWORD dwPrinters; DWORD dwDrives; } NETINFOSTRUCT; typedef NETINFOSTRUCT *LPNETINFOSTRUCT; /* Network connection information */ #if (WINVER >= 0x0400) typedef struct _NETCONNECTINFOSTRUCT { DWORD cbStructure; DWORD dwFlags; DWORD dwSpeed; DWORD dwDelay; DWORD dwOptDataSize; } NETCONNECTINFOSTRUCT; typedef NETCONNECTINFOSTRUCT *LPNETCONNECTINFOSTRUCT; #endif /* Functions in MPR.DLL */ DWORD APIENTRY WNetAddConnection2A( LPNETRESOURCEA, LPCSTR, LPCSTR, DWORD ); DWORD APIENTRY WNetAddConnection2W( LPNETRESOURCEW, LPCWSTR, LPCWSTR, DWORD ); DWORD APIENTRY WNetAddConnection3A( HWND, LPNETRESOURCEA, LPCSTR, LPCSTR, DWORD ); DWORD APIENTRY WNetAddConnection3W( HWND, LPNETRESOURCEW, LPCWSTR, LPCWSTR, DWORD ); DWORD APIENTRY WNetAddConnectionA( LPCSTR, LPCSTR, LPCSTR ); DWORD APIENTRY WNetAddConnectionW( LPCWSTR, LPCWSTR, LPCWSTR ); DWORD APIENTRY WNetCancelConnection2A( LPCSTR, DWORD, BOOL ); DWORD APIENTRY WNetCancelConnection2W( LPCWSTR, DWORD, BOOL ); DWORD APIENTRY WNetCancelConnectionA( LPCSTR, BOOL ); DWORD APIENTRY WNetCancelConnectionW( LPCWSTR, BOOL ); DWORD APIENTRY WNetCloseEnum( HANDLE ); DWORD APIENTRY WNetConnectionDialog( HWND, DWORD ); DWORD APIENTRY WNetDisconnectDialog( HWND, DWORD ); DWORD APIENTRY WNetEnumResourceA( HANDLE, LPDWORD, LPVOID, LPDWORD ); DWORD APIENTRY WNetEnumResourceW( HANDLE, LPDWORD, LPVOID, LPDWORD ); DWORD APIENTRY WNetGetConnectionA( LPCSTR, LPSTR, LPDWORD ); DWORD APIENTRY WNetGetConnectionW( LPCWSTR, LPWSTR, LPDWORD ); DWORD APIENTRY WNetGetLastErrorA( LPDWORD, LPSTR, DWORD, LPSTR, DWORD ); DWORD APIENTRY WNetGetLastErrorW( LPDWORD, LPWSTR, DWORD, LPWSTR, DWORD ); DWORD APIENTRY WNetGetUniversalNameA( LPCSTR, DWORD, LPVOID, LPDWORD ); DWORD APIENTRY WNetGetUniversalNameW( LPCWSTR, DWORD, LPVOID, LPDWORD ); DWORD APIENTRY WNetGetUserA( LPCSTR, LPSTR, LPDWORD ); DWORD APIENTRY WNetGetUserW( LPCWSTR, LPWSTR, LPDWORD ); DWORD APIENTRY WNetOpenEnumA( DWORD, DWORD, DWORD, LPNETRESOURCEA, LPHANDLE ); DWORD APIENTRY WNetOpenEnumW( DWORD, DWORD, DWORD, LPNETRESOURCEW, LPHANDLE ); #if (WINVER >= 0x0400) DWORD APIENTRY MultinetGetConnectionPerformanceA( LPNETRESOURCEA, LPNETCONNECTINFOSTRUCT ); DWORD APIENTRY MultinetGetConnectionPerformanceW( LPNETRESOURCEW, LPNETCONNECTINFOSTRUCT ); DWORD APIENTRY WNetConnectionDialog1A( LPCONNECTDLGSTRUCTA ); DWORD APIENTRY WNetConnectionDialog1W( LPCONNECTDLGSTRUCTW ); DWORD APIENTRY WNetDisconnectDialog1A( LPDISCDLGSTRUCTA ); DWORD APIENTRY WNetDisconnectDialog1W( LPDISCDLGSTRUCTW ); DWORD APIENTRY WNetGetNetworkInformationA( LPCSTR, LPNETINFOSTRUCT ); DWORD APIENTRY WNetGetNetworkInformationW( LPCWSTR, LPNETINFOSTRUCT ); DWORD APIENTRY WNetGetProviderNameA( DWORD, LPSTR, LPDWORD ); DWORD APIENTRY WNetGetProviderNameW( DWORD, LPWSTR, LPDWORD ); DWORD APIENTRY WNetGetResourceInformationA( LPNETRESOURCEA, LPVOID, LPDWORD, LPSTR * ); DWORD APIENTRY WNetGetResourceInformationW( LPNETRESOURCEW, LPVOID, LPDWORD, LPWSTR * ); DWORD APIENTRY WNetGetResourceParentA( LPNETRESOURCEA, LPVOID, LPDWORD ); DWORD APIENTRY WNetGetResourceParentW( LPNETRESOURCEW, LPVOID, LPDWORD ); DWORD APIENTRY WNetUseConnectionA( HWND, LPNETRESOURCEA, LPCSTR, LPCSTR, DWORD, LPSTR, LPDWORD, LPDWORD ); DWORD APIENTRY WNetUseConnectionW( HWND, LPNETRESOURCEW, LPCWSTR, LPCWSTR, DWORD, LPWSTR, LPDWORD, LPDWORD ); #endif #if (_WIN32_WINNT < 0x0600) DWORD APIENTRY WNetRestoreConnectionW( HWND, LPCWSTR ); #endif /* Map generic function names to the appropriate ANSI or Unicode version. */ #ifdef UNICODE #define WNetAddConnection2 WNetAddConnection2W #define WNetAddConnection3 WNetAddConnection3W #define WNetAddConnection WNetAddConnectionW #define WNetCancelConnection WNetCancelConnectionW #define WNetCancelConnection2 WNetCancelConnection2W #define WNetEnumResource WNetEnumResourceW #define WNetGetConnection WNetGetConnectionW #define WNetGetLastError WNetGetLastErrorW #define WNetGetUniversalName WNetGetUniversalNameW #define WNetGetUser WNetGetUserW #define WNetOpenEnum WNetOpenEnumW #if (WINVER >= 0x0400) #define MultinetGetConnectionPerformance MultinetGetConnectionPerformanceW #define WNetConnectionDialog1 WNetConnectionDialog1W #define WNetDisconnectDialog1 WNetDisconnectDialog1W #define WNetGetNetworkInformation WNetGetNetworkInformationW #define WNetGetProviderName WNetGetProviderNameW #define WNetGetResourceInformation WNetGetResourceInformationW #define WNetGetResourceParent WNetGetResourceParentW #define WNetUseConnection WNetUseConnectionW #endif #else #define WNetAddConnection2 WNetAddConnection2A #define WNetAddConnection3 WNetAddConnection3A #define WNetAddConnection WNetAddConnectionA #define WNetCancelConnection WNetCancelConnectionA #define WNetCancelConnection2 WNetCancelConnection2A #define WNetEnumResource WNetEnumResourceA #define WNetGetConnection WNetGetConnectionA #define WNetGetLastError WNetGetLastErrorA #define WNetGetUniversalName WNetGetUniversalNameA #define WNetGetUser WNetGetUserA #define WNetOpenEnum WNetOpenEnumA #if (WINVER >= 0x0400) #define MultinetGetConnectionPerformance MultinetGetConnectionPerformanceA #define WNetConnectionDialog1 WNetConnectionDialog1A #define WNetDisconnectDialog1 WNetDisconnectDialog1A #define WNetGetNetworkInformation WNetGetNetworkInformationA #define WNetGetProviderName WNetGetProviderNameA #define WNetGetResourceInformation WNetGetResourceInformationA #define WNetGetResourceParent WNetGetResourceParentA #define WNetUseConnection WNetUseConnectionA #endif #endif #ifdef __cplusplus } /* extern "C" */ #endif #endif /* _WINNETWK_ */