首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用windows命令从Javascript运行VLC播放器

使用windows命令从Javascript运行VLC播放器
EN

Stack Overflow用户
提问于 2016-07-10 17:12:11
回答 1查看 800关注 0票数 1

我在windows 2012服务器上安装了一个VLC播放器。我想使用vlc播放器将输入的.ogg流转换为.mp3。我有一个生成.ogg流的web应用程序,当用户单击我的web应用程序上的“转换”按钮时,我想要执行一个javascript,它应该以.ogg流作为输入,并对安装在服务器上的vlc播放器执行一个windows命令,并启动代码转换。我有windows命令,可以使用vlc将.ogg代码转换为.mp3,但我希望通过编程实现这一点。在按钮上单击如何访问命令行并执行windows命令?

EN

回答 1

Stack Overflow用户

发布于 2016-07-10 17:29:31

我认为,如果不操作客户端系统,JavaScript就不可能做到这一点。如果每个网站都能在客户端系统上执行命令,那就太危险了。浏览器中的JavaScript运行在沙箱中,这意味着它无法访问系统并执行命令。

但是如果你有可能操纵这个系统,那么你可以这样做,我想。至少在Windows里是这样的。您可以向windows注册表添加一个新的伪协议,并将其链接到VLC播放器。类似于其他应用程序的做法,例如torrent客户端、jDownloader或IRC客户端。然后,您可以输入或打开具有这样一个协议地址的弹出窗口,如

代码语言:javascript
复制
vlcurl:your-data-comes-here

一个有用的例子是电子邮件伪协议,您现在可以在浏览器中尝试该协议:

代码语言:javascript
复制
mailto:test%40example.com?subject=Hello%20you

这里有一个例子:

但是请注意!这会使客户端系统容易受到来自web的攻击。我只是把它作为一个例子来展示,我不建议使用这种方法。而且,这并不是所有浏览器都能做到的。有些浏览器根本不处理注册表系统设置,有些浏览器将显示一个必须接受的对话框。所以能力是有限的。reg文件示例:

代码语言:javascript
复制
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\vlcurl]
@="VLC player URL"
"FriendlyTypeName"="VLC player URL"
"URL Protocol"=""
"EditFlags"=dword:00000002

[HKEY_CLASSES_ROOT\vlcurl\DefaultIcon]
@="C:\\Program Files (x86)\\VideoLAN\\VLC\\vlc.exe,0"

[HKEY_CLASSES_ROOT\vlcurl\shell]

[HKEY_CLASSES_ROOT\vlcurl\shell\open]

[HKEY_CLASSES_ROOT\vlcurl\shell\open\command]
@="\"C:\\Program Files (x86)\\VideoLAN\\VLC\\vlc.exe\" \"%1\""

您需要编辑最后一行。然后,您可以执行我上面写的URL (“vlcurl:your来之不易”)。

另一种方法是使用您自己的浏览器插件/插件,比如flash,它绕过浏览器的沙箱(afaik)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38294469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档