2017-01-06 83 views
1

我有一个作为子进程产生的游戏。这一切都很好,并与游戏的原始.exe文件。然而,我希望它执行最小化,并且据我所知,唯一的方法是创建一个Windows快捷方式(.lnk文件,位于同一目录中),并将启动选项设置为最小化。 Node.js的不喜欢:用node.js生成一个.lnk窗口快捷方式给出“UNKNOWN”错误

internal/child_process.js:313 
    throw errnoException(err, 'spawn'); 
    ^

Error: spawn UNKNOWN 
    at exports._errnoException (util.js:1026:11) 
    at ChildProcess.spawn (internal/child_process.js:313:11) 
    at exports.spawn (child_process.js:380:9) 
    at ExecDom4Server (D:\Google Drive\Clockwork Hounds stuff\MrClockworkBot\v10 
\MrClockworkBot.js:568:42) 
    at ontimeout (timers.js:365:14) 
    at tryOnTimeout (timers.js:237:5) 
    at Timer.listOnTimeout (timers.js:207:5) 

游戏本身对图形设置的一些具体参数,但启动它或者最小化无。这里是特定的代码:

function execDom4Server(name, args) 
{ 
    var spawn = require('child_process').spawn; 
    childrenProcesses[name.toLowerCase()] = spawn(dom4root + "dom4.exe.lnk", args); 
    updateDom4Games(); 
} 

我已经到处寻找这个,但我想它是相当具体的。我不知道是否只是node.js无法处理.lnk文件。任何你可以给我的指针将不胜感激!

回答

0

,如果你使用的spawnshell选项(这应该工作)

spawn('application.lnk', args, { shell: true }) 
+0

谢谢,我实际上尝试,和它的所作所为被立即关闭该实例。这是因为将shell设置为true时,路径在shell中执行,因此需要在字符串中使用额外的引号。现在的另一个问题是,尽管它现在正确执行.lnk,但它并未开始最小化,即使启动选项已在其属性中设置。那里有任何想法? – Drithyl

+0

我无法在Windows 10 Build 14986中重现该行为 – djones

相关问题