向通过PowerShell生成的电子邮件添加超链接



我有一个脚本,它目前可以做几件事。它在Active Directory中创建一个用户帐户,将数据写入SQL表,并向帐户请求者发送一封包含帐户用户名和密码的电子邮件。

我们很想在该电子邮件中添加一个超链接,这样请求者就可以点击查看他们的原始请求表单,但我似乎无法完全理解语法。

因为PowerShell语法和HTML链接中都使用了双引号,所以我将链接定义为一个变量,并将该变量插入到电子邮件的-body部分,以消除双引号混淆,尽管这可能没有必要。

有人能帮我在这封电子邮件中插入一个链接吗?非常感谢!

当前副本:

"The user account you requested (request #$ReqID) has been created."

我们想要$ReqID来超链接到Web表单。

我定义的变量:

$link = '<a href="http://tsturl/detail.aspx?reqID=$reqID">$ReqID</a>'

但它在电子邮件正文中显示如下:

The user account you requested (request #<a href="http://tsturl/detail.aspx?reqID=$reqID">$ReqID</a>) has been created.

帮助?

交换您的报价,即:

$link = "<a href='http://tsturl/detail.aspx?reqID=$reqID'>$ReqID</a>"

或者做:

$link = '<a href="http://tsturl/detail.aspx?reqID=$reqID">$ReqID</a>'
$link = $ExecutionContext.InvokeCommand.ExpandString($link)

除了注释之外,如果您希望邮件正文呈现为HTML,从而显示一个链接,那么您需要告诉您的邮件客户端该正文是HTML。$link只是一个普通的旧字符串,不知道它是HTML。

根据您之前的问题,我猜您正在使用Send-MailMessage cmdlet。如果是,则需要指定-BodyAsHtml开关。

最新更新