我正在尝试使我的应用程序与mailto处理程序关联。 在Windows 8中,只能通过“默认程序”关联进行操作,因此我需要注册我的应用程序,然后调用

IApplicationAssociationRegistrationUI *applicationAssociationRegistrationUI = 0;

CoCreateInstance(CLSID_ApplicationAssociationRegistrationUI,
                     0,
                     CLSCTX_INPROC_SERVER,
                     IID_IApplicationAssociationRegistrationUI,
                     (LPVOID*)&applicationAssociationRegistrationUI);

if (applicationAssociationRegistrationUI)
    applicationAssociationRegistrationUI->LaunchAdvancedAssociationUI(L"MyApp");

因此用户可以启用关联。

但是我只是无法注册。...我添加了以下注册表项:

HKCU\Software\
              MyFirm\
                     MyApp\
                           Capabilities\
                                        ApplicationDescription = "MyApp Description"
              RegisteredApplications\
                                     MyApp = "Software\MyFirm\MyApp\Capabilities"

我想念什么? 应用程序未显示在“默认程序”列表中,并且关联UI根本没有启动...

PS:也尝试过HKLM,但没有帮助...

先感谢您!

===============>>#1 票数:1 已采纳

能力必须在HKLM之下。 这是注册表设置的集合,您需要在Windows 8的“默认程序”中查看mailto处理程序应用程序:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\my.mailto]
@="URL:MailTo Protocol"
"EditFlags"=dword:00000002
"FriendlyTypeName"="My Mail Client"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\my.mailto\shell\open\command]
@="\"C:\\my-folder\\my-mail.exe\" \"%l\""

[HKEY_LOCAL_MACHINE\SOFTWARE\MyFirm\MyApp\Capabilities]
"ApplicationDescription"="Capability to send e-mail."
"ApplicationName"="A mail app"

[HKEY_LOCAL_MACHINE\SOFTWARE\MyFirm\MyApp\Capabilities\URLAssociations]
"mailto"="my.mailto"

  ask by Xplatforms translate from so

未解决问题?本站智能推荐: