2013-01-03 56 views
2

在这里有一个奇怪的问题。我可以在Lync Server 2010实例中启动从C#应用程序到PowerShell的远程会话。我能够获得所有特定于Lync的cmdlet并执行它们,但是如果我尝试使用标准cmdlet执行某些操作(在我的情况下为了将文件转换为字节数组,我的“get-content”) - 它不会识别命令。在Lync的远程会话中执行标准PowerShell cmdlet

是否有方法/需要将标准PS集cmdlet加载到该会话中?感觉就像我在这里失去了一些东西...

在此先感谢!

ň

编辑:这是我已经打算上的代码片段...

PSCredential creds = new PSCredential(lyncUser, lyncPW); 

     WSManConnectionInfo conn = new WSManConnectionInfo(new Uri(lyncURI), schema, creds); 

     conn.AuthenticationMechanism = AuthenticationMechanism.Default; 

     Runspace rs = RunspaceFactory.CreateRunspace(conn); 
     rs.Open(); 


     List<FileInfo> files = getWavFiles(); 

     foreach (var file in files) 
     { 

      Pipeline lyncCommands = rs.CreatePipeline(); 

      Command getContent = new Command("Get-Content"); 
      getContent.Parameters.Add(file.FullName); 
      getContent.Parameters.Add("readcount", 0); 
      getContent.Parameters.Add("encoding", "byte"); 
      lyncCommands.Commands.Add(getContent); 

      Command importAnnouncement = new Command("import-csannouncementfile"); 
      importAnnouncement.Parameters.Add("parent", "applicationserver:myserver.mydomain.mycom"); 
      importAnnouncement.Parameters.Add("filename", file.Name); 
      importAnnouncement.Parameters.Add("force"); 

      lyncCommands.Commands.Add(importAnnouncement); 

      foreach (PSObject r in lyncCommands.Invoke()) 
      { 
       Console.WriteLine(r.ToString() + Environment.NewLine); 
      } 
     } 

的“进口csannouncement”部分将只是正常工作......这是“获取内容“部分冒险...

+0

你连接到一个特殊的Lync远程处理端点。您可以通过执行'icm -Session $ lyncSession {$ ExecutionContext.SessionState.InvokeCommand.GetCmdlets()}' –

+0

来查看哪些cmdlet可用。谢谢,Keith。是的,我正在连接到OCSpowershell网址。我可以在它上面的get-command命令中输入,但是我看到的只有一个是Lync cmdlet。所以......其余的人在哪里?我甚至无法运行add-pssnapin ... – napo

+0

可能是因为您应该执行导入会话,该导入会话允许您在本地调用Lync cmdlet,以便您可以访问其他cmdlet。这是保护服务器的常用方法。此快速入门包含更多详细信息:http://blogs.technet.com/b/csps/archive/2010/06/16/qsremoteaccess.aspx –

回答

0

您可以尝试重新配置LYNC服务器远程会话的全语言模式。

(Link是有关配置Exchange服务器,但我相信这是同样的问题)

http://blog.mimecast.com/2011/08/get-full-control-over-your-exchange-remote-powershell-session/

+0

好的建议!唉,这并没有诀窍。我试过了,没有什么区别。 我也启动了远程PowerShell会话到Lync服务器,它不会让我做一个字节数组的导入,因为它太大了。 我想我已经设法通过在将运行托管代码的主机中安装管理shell来解决这个问题,并且这将处理它。我们将看到...... – napo

+0

阵列有多大?默认情况下,远程会话的内存限制为150MB,但您可以增加该限制。 http://blogs.msdn.com/b/powershell/archive/2010/05/03/configuring-wsman-limits.aspx – mjolinor

相关问题