2011-01-25 52 views
2

我想写一个批处理文件,将在SendTo菜单中,当您将文件发送给它时,生成的电子邮件与该文件在电子邮件的主体中超链接。电子邮件文件链接通过.bat文件,完整链接不显示电子邮件电子邮件正文

但是,输出只在电子邮件的身体部分,我相信,直到该文件的路径,第一空间:

<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%^> 

我保证我已经查看了整个堆栈溢出的可能的解决方案。

在此先感谢。

回答

1

如果参数中可能包含空格,则需要引号。你需要一组空引号,以满足start

start "" "mailto:?body=<%_attachmentLink%>" 
+0

天才。工作过一种享受。谢谢//抱歉,我不能表决这个答案,我还没有声望。 – DarkSprout 2011-01-25 14:26:22

0

您可以使用引号将参数

@ECHO OFF 
SET _attachmentLink=%~f1 
:: ECHO %_attachmentLink% 
START MAILTO:?body="<%_attachmentLink%>" 

不知道你将如何使它成为一个超链接,但。 (或任何关于此事的HTML)

0

您不能“超链接”附件,因为邮件代理会在对邮件进行MIME编码时破坏文件名,并且无法预先知道会发生什么损坏的文件名(通常是一些随机字符串)。

+0

除非你的意思是你想不想找个地方上传的文件(如FTP/HTTP服务器)并插入超链接到服务器上的文件中...这种情况应该是可行的。 – CAFxX 2011-01-25 14:12:23

相关问题