2017-05-03 2 views
0

ホストとホストインスタンスの削除を自動化するためのスクリプトを作成すると、以下のスクリプトがPowerShellで実行されます。MSBTS_HostSettingが見つかりません

PS

C:\WINDOWS\system32> [System.Management.ManagementObject]$objHostSetting = ([WmiClass]"root/MicrosoftBizTalkServer:MSBTS_HostSetting").Delete()

ただし、スクリプトを実行した後、私がそれを実行しているたびに下のエラーを受信したためMSBTS_HostSettingがなくなっているようです。

PS

C:\WINDOWS\system32> [System.Management.ManagementObject]$objHostSetting =[WmiClass]"root/MicrosoftBizTalkServer:MSBTS_HostSetting" Cannot convert value "root/MicrosoftBizTalkServer:MSBTS_HostSetting" to type "System.Management.ManagementClass". Error: "Not found " At line:1 char:2 + [System.Management.ManagementObject]$objHostSetting =[WmiClass]"root/MicrosoftB ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [], RuntimeException + FullyQualifiedErrorId : InvalidCastToWMIClass

私はBizTalkOMExplorerをロードしようとしていますが、MSBTS_HostSettingは戻っていません。どのように私はそれを戻すことができますどのような提案や知識。

+1

あなたはそれを削除した後、なぜそこにいると思いますか? –

+0

正直なところ、delete()が全体の設定を削除することに気づいていません。なぜなら、私はそれを元に戻そうとしているからです。 – jgpadilla04

+0

'.delete()'メソッドは何をすると思いましたか?確かに[クラスのドキュメント](https://msdn.microsoft.com/en-us/library/aa560307.aspx)と[操作のサンプルコード](https://msdn.microsoft.com)を確認しました。 /en-us/library/aa560467.aspx)あなたのコードを書いて使用する前に? –

答えて

0

問題を修正しました。以下は私がやったことです。

  1. 開き、CMDとBTSWMIProvider.dll 例登録: ます。Regsvr32.exe「C:\プログラムファイル(x86の)\マイクロソフトのBizTalk Server 2013 R2 \ Bins32 \ BTSWMIProvider.dll」
  2. 実行に次のようにCMDも同様です。 mofcomp.exe BTSWMISchema.mof mofcomp.exe BTSWMISchema.mfl
  3. サービスでWMIを再起動します。

これはトリックです! PowerShellを使用し:)

0

、あなたにあなたのHostInstancesを取得することができます:

$hostInstances = Get-WmiObject MSBTS_HostInstance -namespace root\MicrosoftBizTalkServer -ErrorAction Stop 

そして、あなたは、Deleteメソッドを削除し、起動したい1見つけることができます。

$hostInstances[0].Delete() 

同じホストで:

$hosts = Get-WmiObject MSBTS_Host -Namespace root\MicrosoftBizTalkServer -ErrorAction Stop 
$hostToDelete = $hosts | where {$_.Name -eq 'HostNameToDelete'} 
$hostToDelete.Delete() 
関連する問題