如何拦截Outlook超链接点击以运行c#代码?

如何拦截Outlook超链接点击以运行c#代码?,c#,outlook,outlook-addin,C#,Outlook,Outlook Addin,我有一个Outlook插件,它将纯文本参考号(票号)转换为可单击的超链接。单击时,它们会打开默认浏览器(与您所做的一样)。这很好,但是现在我想截取这个点击,转而运行我的外接程序的c#代码。类似于Outlook截取指向已知地址的mailto链接的方式(它显示的是联系人卡) 如何实现这一点?Word对象模型没有用户单击链接时触发的任何事件(Word在Outlook中呈现HTML消息)。最好是创建自己的url处理程序(例如MyHandler:somelink)。然后可以替换HTML正文中的链接 我熟悉

我有一个Outlook插件,它将纯文本参考号(票号)转换为可单击的超链接。单击时,它们会打开默认浏览器(与您所做的一样)。这很好,但是现在我想截取这个点击,转而运行我的外接程序的c#代码。类似于Outlook截取指向已知地址的mailto链接的方式(它显示的是联系人卡)


如何实现这一点?

Word对象模型没有用户单击链接时触发的任何事件(Word在Outlook中呈现HTML消息)。最好是创建自己的url处理程序(例如MyHandler:somelink)。然后可以替换HTML正文中的链接

我熟悉为外部应用程序设置自定义URI方案,但不知道如何为Outlook加载项注册URI方案。Outlook使用已注册的内容。如果将MyHandler注册为url方案,Outlook将使用该方案。如果我错了,请纠正我的错误,但据我所知,注册url方案的唯一方法是通过win registry,其中包括为处理url的应用程序设置位置。我不能只设置外接程序的位置,因为它不是可执行文件。正确。exe可以做任何你想让它做的事情,包括与你的插件通信。@JackFrost我不确定你是否理解Dmitry的建议。他建议你注册一个协议。与
http://
激活默认浏览器和
mailto:
激活默认邮件处理程序和
utorrent
itunes的方式类似。您可以阅读更多关于它的信息。您可以添加代码吗?它可以帮助我们了解在哪里可以帮助你。