【问题标题】:MariaDb silent install of a msi with innosetup doesn't workMariaDb 静默安装带有 innosetup 的 msi 不起作用
【发布时间】:2016-04-26 15:21:18
【问题描述】:

我尝试使用 inno setup 静默安装 MariaDB,但它没有安装。

 [Files] 
    Source: "mariadb-10.1.9-win32.msi"; DestDir: "{tmp}"
 [Run]   
    Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\mariadb-10.1.9-win32.msi SERVICENAME=MySQL DATADIR=C:\mydata\DB PORT=3306 UTF8=1"" /qn"

创建了正确的文件夹,但仅将卸载文件放入其中。

如果我在以管理员身份启动的 cmd 中运行它,它就可以工作并且 mariaDB 可以使用了

msiexec.exe /i E:\Installatie\mariadb-10.1.9-win32.msi SERVICENAME=MySQL DATADIR=C:\mydata\DB  PORT=3306 /qn

ps 我忘记了密码

我修改了文件来源:

[Files] 
"mariadb-10.1.9-win32.msi";  DestName: "mariadb-10.1.9-win32.msi"; DestDir: "c:\temp" 

我删除了参数,然后我得到了 mariaDB 安装程序。那么为什么它不适用于参数。 我得到退出代码 1619

【问题讨论】:

  • 我投票决定将此问题作为题外话结束,因为它询问为什么安装不起作用。没有迹象表明这与编程、开发或开发工具有关。
  • @PhilDW:软件安装工具是开发人员使用的工具之一,因此有关安装程序的问题是这里的主题。
  • 我修改了文件来源:"mariadb-10.1.9-win32.msi";目标名称:“mariadb-10.1.9-win32.msi”;目标目录:“c:\temp”

标签: mysql windows-installer


【解决方案1】:

这是我的解决方案。在运行部分放:

Filename: "msiexec.exe"; Parameters: "/i {app}\mariadb-5.2.9-win32.msi PORT=3306 PASSWORD=xxxxxx SERVICENAME=MySQL ADDLOCAL=ALL REMOVE=DEVEL,HeidiSQL INSTALLDIR=""C:\mariadb"" /L*v log.txt /qb"; WorkingDir: {app}; Flags: waituntilterminated skipifdoesntexist

我尝试的版本是 5,但它也应该与 10 一起正常工作。 我的问题是 /i 之后的双引号,一旦删除,安装就完美无声地执行了 (/qb),并为 mariadb 安装创建了一个 log.txt 文件。

【讨论】:

    【解决方案2】:

    可能的解释:当您以管理员身份运行它时,它会运行提升并成功。当您以静默方式运行它时,它无法请求提升并且失败,因为它需要提升的权限,因此请以管理员身份运行 InnoSetup 来尝试。

    【讨论】:

      【解决方案3】:

      我使用的是 Windows 10,但由于 {tmp} 而无法正常工作。当我使用 c:\temp 之类的路径而不是 {tmp} 时,它可以工作

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-04-06
        • 1970-01-01
        • 2013-03-01
        • 1970-01-01
        • 2021-11-04
        • 1970-01-01
        • 2012-01-23
        • 1970-01-01
        相关资源
        最近更新 更多