SetSearchPathMode 函数 (winbase.h)
设置 SearchPath 函数在查找文件时使用的每进程模式。
语法
BOOL SetSearchPathMode(
[in] DWORD Flags
);
参数
[in] Flags
要使用的搜索模式。
返回值
如果操作成功完成, SetSearchPathMode 函数将返回非零值。
如果操作失败, SetSearchPathMode 函数将返回零。 若要获得更多的错误信息,请调用 GetLastError 函数。
如果 SetSearchPathMode 函数因参数值无效而失败,则 GetLastError 函数返回的值将 ERROR_INVALID_PARAMETER。
如果 SetSearchPathMode 函数由于当前状态和参数值的组合无效而失败,则 GetLastError 函数返回的值将 ERROR_ACCESS_DENIED。 有关详细信息,请参阅“备注”部分。
备注
如果尚未为当前进程成功调用 SetSearchPathMode 函数,则从系统注册表获取 SearchPath 函数使用的搜索模式。 有关详细信息,请参阅 SearchPath。
为当前进程成功调用 SetSearchPathMode 函数后,系统会忽略系统注册表中的设置,转而改用最近成功设置的模式。
如果已成功为当前进程调用 SetSearchPathMode 函数,且 Flags 设置为 (BASE_SEARCH_PATH_ENABLE_SAFE_SEARCHMODE | BASE_SEARCH_PATH_PERMANENT)
,则会为调用进程永久设置安全模式。 尝试更改搜索模式的进程内 对 SetSearchPathMode 函数的任何后续调用都将 失败,并 ERROR_ACCESS_DENIED GetLastError 函数。
此函数不会修改系统注册表。
在 Windows 8 和 Windows Server 2012 中,此函数由以下技术支持。
技术 | 支持 |
---|---|
服务器消息块 (SMB) 3.0 协议 | 是 |
SMB 3.0 透明故障转移 (TFO) | 是 |
具有横向扩展文件共享的 SMB 3.0 (SO) | 是 |
群集共享卷文件系统 (CSV) | 是 |
弹性文件系统 (ReFS) | 是 |
要求
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
目标平台 | Windows |
标头 | winbase.h (包括 Windows.h) |
Library | Kernel32.lib |
DLL | Kernel32.dll |
可再发行组件 | 在 Windows XP 上KB959426 SP2 及更高版本以及 Windows Server 2003 SP1 及更高版本 |