使用 Qt 安装程序安装后无法将 .bat 文件获取到 运行
Cannot get .bat file to run after installation with Qt installer
我需要 运行 安装程序完成后插入 postgres windows 服务的 bat
文件,以便我的数据库有一个活动服务器(我使用的是静态 postgres)。 bat
文件 运行 是 pg_ctl
注册命令。
根据 Qt 安装程序文档,installationFinished
是您用来发出方法的方法,一旦安装程序通过控制器或包安装脚本完成,这些方法将 运行。我不确定我是否正确使用它,因为在安装程序 运行 之后 bat
文件没有 运行。这个功能如何正确使用?
我在控制器脚本中试过:
Controller.prototype.installationFinished = function(){
installer.executeDetatched("C:\Program Files (x86)\PostgreSQL\9.6\pgserv.bat", new Array(), "@homeDir@")
}
也在组件安装脚本中尝试过:
Component.prototype.installationFinished = function(){
component.addElevatedOperation("Execute", "cmd", "/C", "C:\Program Files (x86)\PostgreSQL\9.6\pgserv.bat");
}
此 bat
文件要 运行 post 安装,因为 bat
文件上的命令需要 postgres\bin 文件夹,该文件夹已添加到 PATH
安装后的变量。
非常感谢大家的帮助! :)
试试这个:
Component.prototype.installationFinished = function()
{
QDesktopServices.openUrl("file:///" + installer.value("TargetDir") +
"/file.bat");
}
我需要 运行 安装程序完成后插入 postgres windows 服务的 bat
文件,以便我的数据库有一个活动服务器(我使用的是静态 postgres)。 bat
文件 运行 是 pg_ctl
注册命令。
根据 Qt 安装程序文档,installationFinished
是您用来发出方法的方法,一旦安装程序通过控制器或包安装脚本完成,这些方法将 运行。我不确定我是否正确使用它,因为在安装程序 运行 之后 bat
文件没有 运行。这个功能如何正确使用?
我在控制器脚本中试过:
Controller.prototype.installationFinished = function(){
installer.executeDetatched("C:\Program Files (x86)\PostgreSQL\9.6\pgserv.bat", new Array(), "@homeDir@")
}
也在组件安装脚本中尝试过:
Component.prototype.installationFinished = function(){
component.addElevatedOperation("Execute", "cmd", "/C", "C:\Program Files (x86)\PostgreSQL\9.6\pgserv.bat");
}
此 bat
文件要 运行 post 安装,因为 bat
文件上的命令需要 postgres\bin 文件夹,该文件夹已添加到 PATH
安装后的变量。
非常感谢大家的帮助! :)
试试这个:
Component.prototype.installationFinished = function()
{
QDesktopServices.openUrl("file:///" + installer.value("TargetDir") +
"/file.bat");
}