(更新)如何从C中在PowerShell中执行几行代码?

时间:2018-10-26 15:53:24

标签: c

#带有PowerShell示例的编辑版本

如何在C中从PowerShell中执行几行代码?我更喜欢使用from中的system()命令。下面是一个通过Gmail发送电子邮件的脚本示例,该脚本在PowerShell中本身可以正常工作,但在C程序中使用时则无法正常工作。

这是脚本:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
   system("powershell.exe -w hidden -c"
          "$email = 'SENDER_EMAIL'"
          "$pass = 'SENDER_PASSWORD'"
          "$to = 'RECEIVER_EMAIL'"
          "$smtpServer = 'smtp.gmail.com'"
          "$msg = new-object Net.Mail.MailMessage"
          "$smtp = new-object Net.Mail.SmtpClient($smtpServer)"
          "$smtp.EnableSsl = $true"
          "$msg.From = '$email'"
          "$msg.To.Add('$to')"
          "$msg.BodyEncoding = [system.Text.Encoding]::Unicode"
          "$msg.SubjectEncoding = [system.Text.Encoding]::Unicode"
          "$msg.IsBodyHTML = $true"
          "$msg.Subject = 'SUBJECT'"
          "$msg.Body = 'BODY_TEXT'"
          "$SMTP.Credentials = New-Object System.Net.NetworkCredential('$email', '$pass');"
          "$smtp.Send($msg)");

   return 0;
}

0 个答案:

没有答案