The WNetCancelConnection2 function breaks an existing network connection. It can also be used to remove remembered network connections that are not currently connected. This function supersedes WNetCancelConnection.
DWORD WNetCancelConnection2(
LPTSTR lpName, | // pointer to resource name to disconnect |
DWORD dwFlags, | // connection type flags |
BOOL fForce | // flag for unconditional disconnect |
); |
Parameters
lpName
Points to a null-terminated string that specifies the name of either the redirected local device or the remote network resource to disconnect from. If this parameter specifies a redirected local resource, only the specified redirection is broken; otherwise, all connections to the remote network resource are broken.
dwFlags
Specifies a bitmask for the connection type. The following values are defined:
Value | Meaning |
0 | No stored information about the connection is updated. If the connection was marked as persistent in the registry, Windows will still restore the connection at the next logon. If the connection was not marked as persistent, the function ignores the setting of the CONNECT_UPDATE_PROFILE flag. |
CONNECT_UPDATE_PROFILE | The user profile is updated with the information that this is no longer a persistent connection. Windows will not restore this connection during subsequent logon operations. Disconnecting resources using remote names has no effect on persistent connections. |
fForce
Specifies whether the disconnection should occur even if there are open files or jobs on the connection. If this parameter is FALSE, the function fails if there are open files or jobs.
Return Values
If the function succeeds, the return value is NO_ERROR.
If the function fails, the return value is an error code. To get extended error information, call GetLastError. GetLastError may return one of the following error codes:
Value | Meaning |
ERROR_BAD_PROFILE | The user profile is in an incorrect format. |
ERROR_CANNOT_OPEN_PROFILE | The system is unable to open the user profile to process persistent connections. |
ERROR_DEVICE_IN_USE | The device is in use by an active process and cannot be disconnected. |
ERROR_EXTENDED_ERROR | A network-specific error occurred. To get a description of the error, use the WNetGetLastError function. |
ERROR_NOT_CONNECTED | The name specified by the lpName parameter is not a redirected device, or the system is not currently connected to the device specified by the parameter. |
ERROR_OPEN_FILES | There are open files, and the fForce parameter is FALSE. |
See Also
WNetAddConnection, WNetAddConnection2, WNetAddConnection3, WNetCancelConnection, WNetGetConnection, WNetGetLastError