トランザクション トリガーに対する規則の評価または実行ができませんでした。
Message Queuing トリガー規則の起動は、いくつかの理由で失敗する可能性があります。このエラーは、次のいずれかの条件が原因で発生する可能性があります。
規則の条件または動作パラメーターが無効です。
規則によって起動されるコンポーネント オブジェクト モデル (COM) オブジェクトが正しく登録されていません。
規則内で指定されている実行可能ファイルが見つからないか、機能していません。
これらの手順を実行するには、Administrators のメンバーであるか、適切な権限を委任されている必要があります。
規則の条件または動作パラメーターが無効
規則の条件または動作パラメーターの有効性を確認するには:
コンピューターの管理スナップインを開きます。コンピューターの管理を開くには、[スタート] をクリックします。検索ボックスに「compmgmt.msc」と入力し、Enter キーを押します。
コンソール ツリーで、[サービスとアプリケーション]、[Message Queuing]、[トリガー] の順に展開します。
[Message Queuing トリガー] で、[トリガー] をクリックします。
実行する規則を右クリックしてプロパティを確認します。
[全般] タブをクリックします。規則が目的のキューをポイントしていることと、処理の種類が正しいことを確認します。
[適用される規則] タブをクリックして、適用される規則が適切であることを確認します。
[トリガー] で [規則] をクリックして、使用可能な規則のリストを表示します。
トリガーで実行する規則を右クリックして、それぞれのプロパティを表示します。
[規則の条件] タブで、規則の条件が適切であることを確認します。
[規則の操作] タブで、規則が目的の操作をポイントしていることを確認します。
規則の条件またはパラメーターが問題であると判断した場合は、「規則またはトリガーの構成」セクションを参照してください。
規則によって起動される COM オブジェクトが正しく登録されていない
COM オブジェクトが正しく登録されているかどうかを確認するには:
コンポーネント サービス スナップインを開きます。コンポーネント サービスを開くには、[スタート] をクリックして、[ファイル名を指定して実行] をクリックします。[名前] ボックスに「comexp.msc」と入力し、Enter キーを押します。
コンソール ツリーで、[コンポーネント サービス]、[コンピューター]、[マイ コンピューター] の順に展開して、[COM+ アプリケーション] をクリックします。
COM コンポーネントが存在し登録済みであることを確認します。
COM オブジェクトが正しく登録されていないと判断した場合は、「COM+ コンポーネントの登録」セクションを参照してください。
規則内で指定されている実行可能ファイルが見つからないか、機能していない
実行可能ファイルが存在して機能しているかどうかを確認するには:
エクスプローラーを開いて、イベントで指定されている実行可能ファイルを参照します。このファイルが存在し、正しく実行されていることを確認します。
実行可能ファイルが規則内で正しく参照されているかどうかを確認します。コンピューターの管理スナップインを開きます。コンピューターの管理を開くには、[スタート] をクリックします。検索ボックスに「comexp.msc」と入力し、Enter キーを押します。
コンソール ツリーで、[コンピューターの管理]、[サービスとアプリケーション]、[Message Queuing]、[トリガー]、[規則] の順に展開して、[規則] をクリックします。
エラー メッセージで指定されている規則を右クリックして、[プロパティ] をクリックします。
[規則の操作] タブの [スタンドアロン実行可能ファイルの起動] で、実行可能ファイルのパスに表示された実行可能ファイルが存在し、完全なパス付きで表示されていることを確認します。たとえば、単に MyApp.exe ではなく、c:\MyDirectory\MyApp.exe となっている必要があります。
実行可能ファイルに問題があると判断した場合は、「規則の削除および再作成」セクションを参照してください。
トリガー規則の作成の詳細については、「規則を作成してトリガーに適用する」( http://go.microsoft.com/fwlink/?LinkId=104059) を参照してください。
規則またはトリガーの構成
規則の条件またはトリガーは正しく構成する必要があります。意図された規則やトリガー設定がわからない場合は、ソリューション アーキテクトに確認することができます。
この手順を実行するには、Administrators のメンバーであるか、適切な権限を委任されている必要があります。
規則とトリガーを確認して変更するには:
コンピューターの管理スナップインを開きます。コンピューターの管理を開くには、[スタート] をクリックします。検索ボックスに「compmgmt.msc」と入力し、Enter キーを押します。
[サービスとアプリケーション]、[Message Queuing]、[トリガー] の順に展開します。
[Message Queuing トリガー] で、[トリガー] をクリックします。
実行する規則を右クリックし、[プロパティ] をクリックします。
[全般] タブをクリックします。規則が目的のキューをポイントしていることと、処理の種類が正しいことを確認します。
[適用される規則] タブをクリックして、適用される規則が適切であることを確認します。
[トリガー] で [規則] をクリックして、使用可能な規則のリストを表示します。
トリガーで実行する規則を右クリックして、それぞれのプロパティを表示します。
[規則の条件] タブで、規則の条件が適切であることを確認します。
[規則の操作] タブで、規則が目的の操作をポイントしていることを確認します。
各規則に対して手順 7 ~ 10 を繰り返します。
COM+ オブジェクトの登録
規則によって起動された COM+ オブジェクトが正しく登録されていません。このオブジェクトを再度登録するには、コマンドライン ユーティリティ regsvr32.exe を使用します。詳細については、Microsoft サポート技術情報の記事 249873 ( http://go.microsoft.com/fwlink/?LinkId=107513) を参照してください。
この手順を実行するには、Administrators のメンバーであるか、適切な権限を委任されている必要があります。
COM+ オブジェクトを登録するには:
regsvr32.exe を実行します。regsvr32.exe を実行するには、[スタート] をクリックします。検索ボックスに「cmd」と入力し、Enter キーを押します。
コマンド プロンプトで、「regsvr32 <your COM+ component.dll>」と入力して、Enter キーを押します。
規則の削除および再作成
規則内で指定されている実行可能ファイルが見つからないか、機能していません。この問題を解決するには、指定された規則を削除して再作成します。
この手順を実行するには、Administrators のメンバーであるか、適切な権限を委任されている必要があります。
指定された規則を削除して再作成するには:
コンピューターの管理スナップインを開きます。コンピューターの管理を開くには、[スタート] をクリックします。検索ボックスに「compmgmt.msc」と入力し、Enter キーを押します。
コンソール ツリーで、[コンピューターの管理]、[サービスとアプリケーション]、[Message Queuing]、[トリガー]、[規則] の順に展開して、[規則] をクリックします。
エラー メッセージで指定されている規則を選択してダブルクリックします。
規則の実行可能ファイルへの完全なパスが指定されていることを確認します。
トリガー規則の作成の詳細については、「規則を作成してトリガーに適用する」( http://go.microsoft.com/fwlink/?LinkId=104059) を参照してください。
詳細については、イベント ID 2210 ( http://technet.microsoft.com/en-us/library/dd337483(WS.10).aspx) を参照してください
Target | Microsoft.MSMQ.6.3.Triggers | ||
Category | AvailabilityHealth | ||
Enabled | False | ||
Event_ID | 2210 | ||
Event Source | $Target/Host/Property[Type="Microsoft.MSMQ.6.3.ServerRole"]/ServiceName$ | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
Alert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.MSMQ.6.3.Rule.Alert.Event2210" Enabled="false" Target="Microsoft.MSMQ.6.3.Triggers" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>AvailabilityHealth</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">2210</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Host/Property[Type="Microsoft.MSMQ.6.3.ServerRole"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="Alert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertName/>
<AlertDescription/>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.MSMQ.6.3.Rule.Alert.Event2210.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
<Custom1/>
<Custom2/>
<Custom3/>
<Custom4/>
<Custom5/>
<Custom6/>
<Custom7/>
<Custom8/>
<Custom9/>
<Custom10/>
</WriteAction>
</WriteActions>
</Rule>