首页 > 解决方案 > (更新)如何从 C 中执行 PowerShell 中的几行代码?

问题描述

#Edited 版本与 PowerShell 示例

如何从 C 在 PowerShell 中执行几行代码?我更喜欢使用来自 . 下面是一个通过 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;
}

标签: c

解决方案


推荐阅读