私はWindows7MediaCenterでHauppaugeHD-PVRを使用しています(DVBLinkを使用して接続しています)。システムが現在記録しているかどうかを確認し、実行していない場合は何らかのアクションを実行するための小さなアプリケーションを作成したいと思います。このステータスを取得するためにどのクラスを使用しますか?ドキュメントを読みましたが、解決策はすぐにはわかりません。
1 に答える
0
これを使用できます:名前空間Microsoft.MediaCenter.Samples.MediaState.MediaState
(MediaState) ms=new MediaState();
ms.Connect();
if(ms.Active == true) {
Console.Writeline("MediaState Active");
}
else {
Console.Writeline("MediaState NOT Active");
}
これは機能していても常にfalseを返すことに注意してください。この点を明確にするためにこれを含めたので、falseが返されることに夢中にならず、続行しないでください....;-)
次に、応答イベントを配線します
ms.OnMSASEvent += new MSASEventHandler(ms_OnMSASEvent);
private void ms_OnMSASEvent(object state, MediaStatusEventArgs args)
{
MediaState typedState = (MediaState) state;
string _Out = " " + args.Session.ToString() + " " + args.SessionID.ToString() + " " + args.Tag.ToString() + args.Value.ToString();
Console.Writeline(_Out);
}
メディアセンターで発生するすべてのイベントが表示されます。
より具体的なイベントがあります。同じクラスに、特定のイベントを監視できる名前空間TVRECORDINGがあります。
これがお役に立てば幸いです....もっとお役に立てれば大声で...
于 2010-02-13T17:06:12.020 に答える