发布时间:2025-12-09 20:03:11 浏览次数:4
3D Stereoscopic Player立体播放器是款立体影片专用播放软件,安装设置软件就可播放观看享受立体影片。最近公司项目要通过代码控制Stereoscopic Player播放器,实现打开播放器,加载影片,全屏,暂停,动态获得播放时间等功能,的确有些犯难。查阅网上大量资料,少有实例,自己研究。终于查了一点资料 Stereoscopic Player是支持OLE automation的(自动播放控制),如何控制不知。最后查到vbs可操作automation对象,于是去研究vbs了。不负有心人,最后还研究出来了,所有功能实现都还可以,还的感谢前辈的vbs高手。原理利用C# ScriptControl接口(MSScriptControl命名空间)执行vbs脚本。
1.打开播放器vbs脚本:
Set WshShell=createobject("WScript.shell")
Set oExec=WshShell.Exec("C:\Program Files\Stereoscopic Player\StereoPlayer.exe")
(将脚本保存为vbs后缀名,点击运行即可。)参数为播放器安装路径。
2.打开视频文件 vbs脚本:
Function OpenFile(filePath)
ON Error Resume Next
Dim Player
Set Player = CreateObject("StereoPlayer.Automation")
Dim Ready
Ready = False
While Not Ready
Player.GetReady Ready
Wend
on error goto 0
ON Error Resume Next
Player.CloseVideo
Player.OpenFile filePath
on error goto 0
End function
Call OpenFile(WScript.Arguments(0))
(保存为vbs文件,在cmd 中执行vbs文件,参数为视频文件路径C:\ying.avi)
当然是用代码去执行cmd命令的,cmd手动输入路径是测试-->结果ok,不过先要打开播放器(路径有误加C:\)
3.全屏vbs:
Dim Player
Set Player = WScript.CreateObject("StereoPlayer.Automation")
Player.EnterFullscreenMode True
4.暂停vbs:
Dim Player
Set Player = WScript.CreateObject("StereoPlayer.Automation")
Player.SetPlaybackState 1
5.关闭视频vbs:
Dim Player
Set Player = WScript.CreateObject("StereoPlayer.Automation")
Player.CloseVideo
6.关闭播放器vbs:
Dim Player
Set Player = WScript.CreateObject("StereoPlayer.Automation")
Player.ClosePlayer
7.返回播放时间vbs:
Dim Player
Set Player = CreateObject("StereoPlayer.Automation")
Dim Position
Player.GetPosition Position
Function GetPos()
GetPos=position
End function
差不多够用了,直接点击vbs就可执行了,不过用C#调用vbs有些麻烦,写了另外两个帮助类实现了在winfrom中按钮控制功能。