URLAssociationDialogW 函数 (intshcut.h)

调用“未注册的 URL 协议”对话框。 此对话框允许用户选择要与以前未知的协议关联的应用程序。

注意 Windows XP Service Pack 2 (SP2) 或更高版本:不再支持此函数。
 

语法

INTSHCUTAPI HRESULT URLAssociationDialogW(
        HWND   hwndParent,
        DWORD  dwInFlags,
        PCWSTR pcszFile,
        PCWSTR pcszURL,
  [out] PWSTR  pszAppBuf,
        UINT   ucAppBufLen
);

parameters

hwndParent

类型:HWND

父窗口的句柄。

dwInFlags

类型:DWORD

指定函数行为的位标志。 该值可为以下项的组合:

URLASSOCDLG_FL_USE_DEFAULT_NAME

使用默认文件名 (,即“Internet 快捷方式”) 。

URLASSOCDLG_FL_REGISTER_ASSOC

将所选应用程序注册为 pcszURL 中指定的协议的处理程序。 仅当设置了此标志并且用户指示需要持久性关联时,才会注册应用程序。

pcszFile

类型: HTTPSTR

包含要与 URL 协议关联的文件名的常量零终止字符串的地址。

pcszURL

类型: HTTPSTR

包含具有未知协议的 URL 的常量零终止字符串的地址。

[out] pszAppBuf

类型: PTSTR

接收用户指定的应用程序路径的缓冲区的地址。

ucAppBufLen

类型: UINT

pszAppBuf 的大小(以字符为单位)。

返回值

类型: HRESULT

注意 从 Windows XP SP2 开始,此函数不受支持,在所有情况下都会返回E_NOTIMPL。
 
在支持的系统中,如果应用程序已注册到 URL 协议,则返回S_OK;如果未注册任何内容,则返回S_FALSE。 例如,当用户选择通过所选应用程序执行一次性执行时,函数将返回S_FALSE。

注解

注意

intshcut.h 标头将 URLAssociationDialog 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 intshcut.h
DLL Url.dll