Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
wscript cscript with javascript使用COM with node.js_Javascript_Node.js_Com_Itunes_Wsh - Fatal编程技术网

wscript cscript with javascript使用COM with node.js

wscript cscript with javascript使用COM with node.js,javascript,node.js,com,itunes,wsh,Javascript,Node.js,Com,Itunes,Wsh,操作系统:windows 10节点:v6.9.4iTunes 12.5.5.5 我正在尝试编写一个与itunes通信的node.js应用程序,它将做很多事情,我希望捕获响应并在网页中显示 为了理解wscript,我现在要做的是运行一个节点文件,它将继续运行,以便在“change song”事件中输出一些关于tack的信息 在我做了一些研究之后,我提出了一个观点,但现在我被卡住了。 我对windows生态系统编码一无所知,在这一部分我很挣扎 在网上搜索我找到了这个解决方案 我不知道为什么我可以在c

操作系统:windows 10
节点:v6.9.4
iTunes 12.5.5.5

我正在尝试编写一个与itunes通信的node.js应用程序,它将做很多事情,我希望捕获响应并在网页中显示

为了理解wscript,我现在要做的是运行一个节点文件,它将继续运行,以便在“change song”事件中输出一些关于tack的信息

在我做了一些研究之后,我提出了一个观点,但现在我被卡住了。 我对windows生态系统编码一无所知,在这一部分我很挣扎

在网上搜索我找到了这个解决方案

我不知道为什么我可以在cmd上使用cscript o wscript,但是在.js文件中我需要使用wscript

/* itunes open and playing a song */
var itunes = WScript.CreateObject("iTunes.Application");

var currentTrack = itunes.CurrentTrack;

WScript.Echo("name: " + currentTrack.Name + " artist: " + currentTrack.Artist);
打开cmd,转到该文件夹,然后运行

cscript /nologo myItunesScript.js 
/* /nologo prevent to show some default cmd text*/
程序将运行,输出播放的音乐并自动关闭

如果我用wscript做同样的事情,我不知道为什么,但它会显示一个带有结果的弹出窗口,而不是显示在cmd屏幕上

在这个页面上,我可以做很多事情,甚至可以处理一些事件

我在npm上找不到任何能让我的生活变得更轻松的应用程序

所以如果有人能给我一些建议,我会非常感激的

编辑:是否可以从节点连接到“iTunes.Application”,而不使用WScript

如果没有,是否可以侦听WScript输出中的事件?(就像在socket.io中,你连接到某个东西并一直在听东西)

这个问题不清楚,我可能不应该回答。
这一回答从问题中明确提出了这一点

如果我用wscript做同样的事情,我不知道为什么,但它会显示一个带有结果的弹出窗口,而不是显示在cmd屏幕上

您可能会混淆什么是
cscript.exe
wscript.exe

这两个程序都是WSH(,也称为WScript)

  • cscript.exe
    -命令行版本
  • wscript.exe
    -Windows GUI版本
两者都运行VBScript,但输出结果不同,下面是一个简单的示例

下面的脚本将输出短语
Hello World

Dim输出:输出=“你好世界”
Echo输出
使用
cscript.exe
输出为

cscript//nologo“test.vbs” 你好,世界 使用
wscript.exe
输出为

wscript//nologo“test.vbs”
cscript.exe
是WSH(Windows脚本主机)的命令行版本,
wscript.exe
是GUI版本。它们是一样的,只是输出不同而已。示例
cscript.exe
中的代码
WScript.Echo“Hello”
将输出到命令行,而使用
WScript.exe执行的同一行将输出到弹出消息。确定,但是你能给我举个例子,说明如何从节点运行并持续运行以侦听事件。@MateusSilva如果这是你有意要问的,请尝试更新问题,目前它没有这样说。我只是试着回答“如果我用wscript做同样的事情,我不知道为什么,但它会显示一个带有结果的弹出窗口,而不是显示在cmd屏幕上。”我已经这样做了“我现在要做的是运行一个节点文件,它将继续运行,以便在‘更改歌曲’事件中输出有关曲目的一些信息,以了解wscript的内容。”