我正在尝试编写将在SendTo菜单中的批处理文件,当您向其发送文件时,会生成一封电子邮件,其中包含电子邮件主体中超链接的文件。
但是,输出只是电子邮件正文中的部分内容,我相信直到文件路径中的第一个空格:
<D:\Documents
以下是生成上述结果的代码。
:: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: Batchfile : EmailLink.bat
:: Author : DarkSprout
:: Purpose : Email File Link via Outlook using Richt-Click 'Send To' menu
:: NOTE : Save File in %USERPROFILE%\SendTo
:: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[Jan11]~~
@ECHO OFF
SET _attachmentLink=%~f1
:: ECHO %_attachmentLink%
START MAILTO:?body=^<%_attachmentLink%^>
我保证我已经在Stack Overflow中查看了可能的解决方案。
提前致谢。
答案 0 :(得分:1)
如果参数可能包含空格,则需要在参数周围引用。并且您需要一组空引号来满足start
:
start "" "mailto:?body=<%_attachmentLink%>"
答案 1 :(得分:0)
您可以在参数
周围使用引号@ECHO OFF
SET _attachmentLink=%~f1
:: ECHO %_attachmentLink%
START MAILTO:?body="<%_attachmentLink%>"
不知道如何将它作为超链接。 (或任何HTML)
答案 2 :(得分:0)
你不能“超链接”附件,因为邮件代理会在对邮件进行MIME编码时破坏文件名,并且无法事先知道受损的文件名是什么(通常是一些随机字符串)。 / p>