如何从控制台Win添加bodyto到mailto链接?

时间:2013-11-04 15:45:29

标签: email cmd mailto

我遇到了这个问题:

我正在尝试从命令行发送电子邮件,但如果我这样做:

mailto:example@rat.it?subject = subject& body = body

cmd让我回答:“身体”非èriconosciuto来自comando interno o esterno,  un programma eseguibile o un file batch。

我只设法写一个主题和没有正文的电子邮件,我该如何添加正文?

请帮帮我

2 个答案:

答案 0 :(得分:4)

差不多......

这有效:

  start mailto:"example@rat.it?subject=subject&body=body"

编辑:但是它会在地址的开头添加额外的" ... (你可以通过在它前面插入一个空格来避免身体末端的额外"

EDIT2: 但这很有效:

start "" "mailto:example@rat.it?subject=subject&body=body "

答案 1 :(得分:0)

Interlink邮件客户端执行此操作。 https://binaryoutcast.com/projects/interlink

  • 描述互连:
    • 与经典雷鸟类似,但效果更好
    • 当前的发展中
    • 长期存在的TB错误已修复
    • 不是克隆人,也不是最近的分支

摘自http://kb.mozillazine.org/Command_line_arguments_%28Thunderbird%29的文档并在Windows上进行测试:

d:\Path\Interlink.EXE -compose ^
"from='From Name ^<FromBox@FromDomain.com^>'^
,to='To Name One ^<ToBoxOne@ToDomainOne.com^>, To Name Two ^<ToBoxTwo@ToDomainTwo.com^>'^
,cc='CC Name One ^<CCBoxOne@CCDomainOne.com^>, CC Name Two ^<CCBoxTwo@CCDomainTwo.com^>'^
,bcc='BC Name One ^<BCBoxOne@BCDomainOne.com^>, BC Name Two ^<BCBoxTwo@BCDomainTwo.com^>'^
,subject='Your Subject Here'^
,message='d:\Path\Body File.htm',^
,attachment='^
d:\Path\Attach One.PDF,^
d:\Path\Attach Two.PDF^
'"

行继续用于可读性和bat / cmd文件,但也可以正常工作。 不需要在Set语句的单引号内将尖括号转义。

错误:标识中必须存在发件人地址,否则生成的撰写窗口将为空。该错误已于2020年7月左右提交到队列中。 在身份中找到发件人地址后,将从身份中复制发件人名称,并忽略命令行上的发件人名称。

语法:

  • -compose的整个参数列表都用双引号引起来。 在参数列表中,参数用逗号分隔;逗号不能以空格开头或跟随。 当参数列表仅包含一个参数,并且该参数包含零个空格或尖括号时,将其括在双引号中是可选的。

  • 在参数中,值列表用单引号引起来。 在值列表中,值用逗号分隔;逗号后面可以跟空格。 如果一个值列表仅包含一个值,并且该值包含零个空格或尖括号,则将其用单引号引起来是可选的。

  • 某些参数将接受值列表中的所有值:to =,cc =,bcc =,attachment =

  • 某些参数将仅接受值列表中的第一个值:from =,subject =,body =,message =;以下值将被忽略。

  • 如果同时指定message =和body =,则body =将被忽略。

雷鸟可能兼容。

使用以下命令从注册表中将可执行文件路径名获取到环境变量中:

For /F "Tokens=3" %%A In ('Reg Query HKEY_CLASSES_ROOT\mailto\shell\open\command') Do Set MailerEXE=%%A