.exe与Inno Setup返回的.exe之间的区别 - 已安装的应用程序失败

时间:2016-01-27 23:35:46

标签: java swing inno-setup exe launch4j

我不知道问题所在,但由于某种原因,我从Inno Setup运行安装程序后得到的.exe文件和.exe文件不一样。

没有抛出错误代码或任何东西,它编译得很完美,但我的应用程序中的工具栏(程序是用Java swing制作的)没有正确包含它们的按钮。我有两个持有JButton的JToolBars(每个按钮都有一个图像)。当我使用Launch4j将我的程序包装到exe中时它工作得很好,但是当我运行我在使用Inno Setup后得到的exe时,那些工具栏不能正确按住按钮。它们缩小到更小的尺寸,按钮非常小,可能是2px x 2px。除非盘旋,否则也无法看到它们。为什么Inno Setup的exe与原来的exe不同?

2 个答案:

答案 0 :(得分:1)

Inno Setup不会以任何方式修改已安装的EXE文件。

如果应用程序在安装时失败,那么它本身并不是Inno Setup的错误,而是部署过程中的错误。

安装的应用程序失败的可能原因很多,包括但不限于:

  • 您省略了一些依赖项
    • DLL库
    • .NET Framework
    • Java运行时环境
    • 其他运行时
    • COM / ActiveX对象等
  • 该应用程序需要一些配置
    • 文件
    • 注册表项[包括COM / ActiveX对象注册]
    • 环境变量等
  • 某些应用程序需要对其文件夹进行写访问。由于Inno Setup将应用程序安装到" Program Files"默认情况下,文件夹限制写访问权限,此类应用程序失败。

答案 1 :(得分:0)

如果有人想知道我是如何解决它的,我只是将.exe移动到安装程序的目录,当它提示你在Inno Setup中添加.exe时,它应该在默认打开的目录中。不确定为什么会有效(或者如果这是程序的要求),但它对我有用