将PortQry与ElectronJS桌面应用程序集成

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将PortQry与ElectronJS桌面应用程序集成相关的知识,希望对你有一定的参考价值。

我目前正在尝试使用ElectronJS围绕Microsoft's PortQry CLI构建一个包装器,以自动检查与我公司服务(Active Directory,Outlook等)的连接,并拥有更好看的GUI。 (我喜欢bootstrap)

该计划是我的electronicJS应用程序在本地运行CLI并获得输出。我尝试使用node-cmd,但我无法显示输出。

以下是我的electronJS文件:

的index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <div>
        <p id="input">Hello World</p>
    </div>

<script src="./backend.js"></script>
</body>
</html>

backend.js

var cmd=require('node-cmd');

    cmd.get(
        'C:PortQryV2portqry -n google.com -p tcp -o 8080',
        function(err, data, stderr){
            document.getElementById("input").innerHTML=data;
        }
    );

main.js

const { app, BrowserWindow } = require('electron')

function createWindow () {
  // Create the browser window.
  let win = new BrowserWindow({ width: 800, height: 600 })

  // and load the index.html of the app.
  win.loadFile('index.html')
  win.webContents.openDevTools()
}

app.on('ready', createWindow)

所以PortQry应该运行,并改变p标签来显示输出。但我不能让这个工作。我在想看看nodejs的child_process是否可行,但我似乎无法将其导入我的代码中。

任何帮助将不胜感激!

答案

我意识到这个问题现在多么愚蠢。

Electronjs使用nodejs作为运行时。我之前在chrome中启动了index.html,因此它从未奏效。你必须启动电子应用程序才能工作。

以上是关于将PortQry与ElectronJS桌面应用程序集成的主要内容,如果未能解决你的问题,请参考以下文章

React + electronjs 实现桌面软件开发引入 electronjs 及 node api

我怎么能通过手写在我的 Electronjs 桌面应用程序上写一些东西[关闭]

ElectronJS应用程序将插件作为单独的进程加载

如何更改 ElectronJS 应用程序的默认图标?

Electron JS/Node JS 桌面应用程序作为本地网络网络服务器

this指向数据双向流传递参数JSX中循环React中样式路由引入资源的其它方式create-react-app脚手架事件处理获取数据UI框架推荐pc桌面应用electronjs