1
我試圖以編程方式導出傳輸規則。c#編程導出傳輸規則 - 交換2010
我的代碼適用於像get-exchangeserver和get-TransportRule這樣的簡單命令,但如果我嘗試將命令導入規則給某個文件,它會給出的錯誤是給定的命令無法識別爲cmdlet腳本。
我的代碼如下(我曾嘗試給誰是外匯管理Windows身份驗證或用戶的身份驗證):
WSManConnectionInfo connectionInfo = new WSManConnectionInfo(serverUri, SHELL_URI, creds);
try
{
using (Runspace rs = RunspaceFactory.CreateRunspace(connectionInfo))
{
PowerShell psh = PowerShell.Create();
psh.Runspace = rs;
rs.Open();
psh.AddCommand("$file = Export-TransportRuleCollection -ExportLegacyRules" +"Set-Content -Path " + @"C:\LegacyRules3.xml" + "-Value file.FileData -Encoding Byte");
psh.Invoke();
我使用C#和Exchange Server 2010,PowerShell的版本是1.0。遠程操作系統是Winodws 7.
任何想法我應該做什麼修正?
嗨,感謝您的答覆,如果你看到我已經使用該cmdlet,但不能讓它通過編碼工作,想知道我怎麼可以拆分命令,以使我的代碼通過C#代碼工作。問候,Amit – user2281729
您確定您使用的憑據屬於具有必要權限的Exchange RBAC組嗎?如果他們不交流,則不會給他們該會話中使用的cmdlet。 – mjolinor
看起來您正在連接到Exchange遠程會話。這是一個受限的,無語言的會話,無法訪問Exchange服務器上的文件系統。通常使用這些會話創建本地會話,然後連接並將遠程會話功能導入到本地會話中(隱式遠程處理)。 – mjolinor