Set-Mailbox AcceptMessagesOnlyFrom powershell命令未按预期工作

时间:2011-11-04 07:20:09

标签: c# powershell exchange-server

我正在寻找一种为会议室(邮箱)设置AcceptMessagesOnlyFrom的方法。我正在使用C#代码(Windows应用程序)执行Exchange 2007 Powershell命令。

这是我的代码

RunspaceConfiguration rc = RunspaceConfiguration.Create();
PSSnapInException snapEx = null;
PSSnapInInfo info = rc.AddPSSnapIn("Microsoft.Exchange.Management.PowerShell.Admin", out snapEx);
Runspace r = RunspaceFactory.CreateRunspace(rc);
r.Open();
RunspaceInvoke ri = new RunspaceInvoke(r);
string str = "Set-Mailbox -Identity '" + MeetingRoomName + "' -AcceptMessagesOnlyFrom ((Get-Mailbox -identity '" + MeetingRoomName + "').AcceptMessagesOnlyFrom + " + strUser + ")";
ICollection<PSObject> results = ri.Invoke(str); 

这个命令在powershell中完美运行,但不是从C#开始。代码执行时没有任何错误,但用户没有被添加到列表中。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

如果以管理员身份运行是问题,请尝试此操作。

在启动Visual Studio之前,右键单击Visual Studio图标,然后选择以管理员身份运行。

image of how to run as administrator

如果您这样做,您从Visual Studio开始的任何事情也将“以管理员身份运行”。如果要以管理员身份从bin目录运行.exe,可以在Windows资源管理器中右键单击它,然后选择“以管理员身份运行”。