【问题标题】:Executing C# executable that uses Powershell execution is erroring out执行使用 Powershell 执行的 C# 可执行文件出错
【发布时间】:2012-03-05 15:26:52
【问题描述】:

我有 c# web 服务调用带有参数的外部可执行文件,以使用运行空间运行 Powershell。

我有 64 位机器并配置 IIS 以运行 64 位可执行文件。

调用 Executable 时找不到 PowerShell 命令,如果我在 32 位模式下运行,似乎找不到合适的 64 位 PowerShell cmdlet。

我正在寻求有关如何配置它的帮助。

  1. 我已经使用 Visual Studio 在 64 位模式下编译了可执行文件。
  2. 我已将 IIS 配置为在 64 位模式下运行
  3. 我有 Windows 2008 R2

此 cmdlet 与 Office365 用户创建有关

当我执行 New-MsolUse 时,它​​说你必须执行 Connect-MsolUser 我的 PowerShell 在 New-MsolUser 命令之前确实有适当的连接调用。

有什么帮助吗?

【问题讨论】:

  • “我在 32 位模式下运行”是什么意思?您说可执行文件编译为 x64。托管 PowerShell 运行空间的 EXE 确定使用哪个 PowerShell 引擎(32 位或 64 位)。您确定 Office365 cmdlet 是 64 位的吗?启动 64 位 PowerShell 提示符,看看您是否可以看到这些 cmdlet。

标签: c# powershell 64-bit office365


【解决方案1】:

在 Project Properties > Compile > Advanced Compile Options 页面中,尝试将 Target CPU 设置为“Any CPU”。看看这是否能解决问题。

【讨论】:

  • 我尝试了 Any CPU 并尝试了 x64,但似乎没有任何效果,我的可执行文件确实被执行但出现错误。如果我在命令行上运行可执行文件,它就可以正常工作。
猜你喜欢
  • 1970-01-01
  • 2021-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-06
  • 2014-01-08
相关资源
最近更新 更多