如何制作mailto:链接将在我的程序中注册?
那么我如何在我的程序中处理该事件?
我从快速Google搜索中找到的大多数解决方案都是如何手动执行此操作,但如果他们单击按钮(例如"设置为默认电子邮件客户端"),我需要自动为我的程序用户执行此操作.
删除了对Delphi的引用,因为答案与您的语言无关.
Lir*_*dav 18
@ Dillie-O:你的答案让我朝着正确的方向前进(我应该期待它只是一个注册表更改)我得到了这个工作.但我打算将此标记为答案,因为我将在处理此问题时提供一些我发现的其他信息.
这个问题的解决方案与您正在使用的编程语言无关,只要有一些方法可以修改Windows注册表设置.
最后,这是答案:
%1将替换为整个mailto URL.例如,给定链接:
<a href="mailto:user@example.com">Email me</a>
Run Code Online (Sandbox Code Playgroud)
将执行以下操作:
" 您的程序的可执行文件 ""mailto:user@example.com"
更新(通过shellscape评论):
从Windows 8开始,此方法不再按预期工作.Win8强制执行以下项:HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associati ons\URLAssociations\MAILTO\UserChoice,其中所选应用程序的ProgID经过哈希处理且无法伪造.这是一个皇家PITA
Dil*_*e-O 12
从我所看到的,有一些注册表项设置默认邮件客户端.其中一个是:
系统密钥: [HKEY_CLASSES_ROOT\mailto\shell\open\command]
价值名称: (Default)
数据类型:( REG_SZ字符串值)
价值数据:Mail program command-line.
我不熟悉Delphi 7,但我确信在那里有一些注册表编辑库可以用来修改这个值.
有些地方列出的不仅仅是这个键,有些地方只是这个键,所以你可能需要稍微测试才能找到合适的键.
| 归档时间: |
|
| 查看次数: |
27763 次 |
| 最近记录: |