我正在尝试使用C#应用程序从我个人最喜欢的Media Player Classic中获取媒体信息.
假设我得到了我感兴趣的MPC-HC实例的窗口句柄,但WM_GETTEXT只获得了窗口标题.我对此并不满意.我还想获取播放状态(停止/暂停/播放),当前时间,总长度和文件路径.我应该能够从文件中获取所有其他东西,知道它的路径.
我首先想到的是使用AutoIt Window Info应用程序,它在我的Visible Text选项卡中获取了我想要的东西,我可以将它用作获取文本的工具,但我怎么能直接获得该文本到我的C#app进行解析?
我想找到一个不涉及干扰用户活动的解决方案,比如强行提起玩家的窗口.我只想获取当前时间,播放状态和完整文件路径到我的C#应用程序.有一个简单的方法吗?
我发现通过启用MPC-HC Web界面,会显示一个很好的页面,其中包含我在此地址所需的所有当前玩家的统计数据:http://localhost:13579/variables.html(13579是默认端口,但您可以在选项中更改它).选中仅允许从localhost访问以保护您的秘密音乐欲望;)

该页面上的HTML有点像这样:
<html>
<head>
<title>MPC-HC WebServer - Variables</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="default.css">
</head>
<body>
<p id="filepatharg">C:\music.mp3</p>
<p id="filepath">C:\music.mp3</p>
<p id="filedirarg">C:\</p>
<p id="filedir">C:\</p>
<p id="state">1</p>
<p id="statestring">Paused</p>
<p id="position">85918</p>
<p id="positionstring">00:01:25</p>
<p id="duration">284525</p>
<p id="durationstring">00:04:44</p>
<p id="volumelevel">50</p>
<p id="muted">0</p>
<p id="playbackrate">1</p>
<p id="reloadtime">0</p>
</body>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2006 次 |
| 最近记录: |