我正在使用带有 Windows 7 Media Center 的 Hauppauge HD-PVR(使用 DVBLink 连接它们)。我想编写一个小应用程序来检查系统当前是否正在录制,如果没有执行某些操作。我使用哪些课程来获得此状态?我已经阅读了文档,但解决方案对我来说并不是很明显。
问问题
443 次
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 回答