WNetRestoreConnectionW 函数 (winnetwk.h)

[WNetRestoreConnectionW 在 Windows Vista 中不可用。]

WNetRestoreConnectionW 函数还原到网络资源的连接。 如有必要,函数会提示用户输入名称和密码。

语法

DWORD WNetRestoreConnectionW(
  [in] HWND    hWnd,
  [in] LPCWSTR lpDevice
);

参数

[in] hWnd

函数用于显示用户界面的父窗口的句柄 (UI) ,在建立网络连接时提示用户输入用户名和密码。 如果此参数为 NULL,则没有所有者窗口。

[in] lpDevice

指向以 null 结尾的 Unicode 字符串的指针,该字符串指定要连接到的驱动器的本地名称,例如“Z:”。 如果此参数为 NULL,则该函数将重新连接当前用户注册表中存储的所有永久性驱动器。

返回值

如果函数成功,则返回值NO_ERROR。

如果函数失败,则返回值为 系统错误代码,例如以下值之一。

返回代码 说明
ERROR_ACCESS_DENIED
调用方无权访问网络资源。
ERROR_ALREADY_ASSIGNED
lpDevice 指定的本地设备已连接到网络资源。
ERROR_BAD_DEV_TYPE
本地设备的类型和网络资源类型不匹配。
ERROR_BAD_DEVICE
lpDevice 指定的值无效。
ERROR_BAD_PROFILE
用户配置文件的格式不正确。
ERROR_BUSY
路由器或提供程序正忙,可能正在初始化。 调用方应重试。
ERROR_CANCELLED
用户通过某个网络资源提供程序中的对话框或被调用的资源取消了建立连接的尝试。
ERROR_CANNOT_OPEN_PROFILE
系统无法打开用户配置文件来处理持久连接。
ERROR_DEVICE_ALREADY_REMEMBERED
设备的条目已在用户配置文件中。
ERROR_EXTENDED_ERROR
发生特定于网络的错误。 调用 WNetGetLastError 函数以获取错误说明。
ERROR_INVALID_PASSWORD
指定的密码无效。
ERROR_NO_NET_OR_BAD_PATH
由于网络组件未启动或无法使用指定名称,因此无法执行该操作。
ERROR_NO_NETWORK
网络不可用。

注解

Windows Vista 及更高版本不支持 WNetRestoreConnectionW 函数。

若要调用此函数,请先调用 LoadLibrary 函数以加载 Mpr.dll。 然后调用 GetProcAddress 函数以检索 WNetRestoreConnectionW 函数的地址。

Winlogon 使用 WNetRestoreConnectionW 在交互式登录过程中还原所有永久性驱动器映射。 Microsoft Windows Shell 还会调用 函数,以根据用户的请求重新连接各个驱动器。 例如,当驱动器在登录时无法重新连接,并且用户双击“我的电脑”虚拟文件夹下的驱动器时,可能会发生这种情况。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 winnetwk.h
Library Mpr.lib
DLL Mpr.dll

另请参阅

Windows 网络 (WNet) 概述

Windows 网络函数