Inno Setup生成的安装程序不显示“选择目标位置".在某些系统上的页面 [英] Inno Setup generated installer does not show "Select Destination Location" page on some systems

查看:505
本文介绍了Inno Setup生成的安装程序不显示“选择目标位置".在某些系统上的页面的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我用py2exe创建我的应用程序,并使用Windows 7上的Inno Setup将其打包到安装程序exe中.然后,可以将以此方式创建的安装程序安装在Windows 7和Windows 10系统上.工作正常时,安装程​​序将依次显示以下屏幕:

I create my application with py2exe and package it into an installer exe using Inno Setup on Windows 7. The installer created this way can then be installed on both Windows 7 and Windows 10 systems. When it works, the installer shows following screens in sequence:

  1. 欢迎屏幕
  2. EULA屏幕
  3. 默认(或以前的安装)位置,允许用户选择新的安装位置,
  4. 确认安装位置,并且
  5. 通常的安装屏幕.

这是我使用 Inno Setup 5.5.5 或更低版本得到的行为.

This is the behavior I get with Inno Setup 5.5.5 or lower.

使用 Inno Setup 5.5.7 及更高版本(未尝试5.5.6),将正常创建安装程序,并且可以在Windows 7上按上述设置.但是,同一安装程序无法显示在Windows 10上进行安装时,从上面的列表中依次选择屏幕1和3:安装程序直接从EULA屏幕开始,然后跳转以确认安装位置.确认屏幕甚至不显示将完成安装的目录.

With Inno Setup 5.5.7 and higher (did not try 5.5.6), the installer is created normally and can be setup as above on Windows 7. However, the same installer fails to show screens 1 and 3 from above list during setup on Windows 10: setup directly starts with EULA screen and then jumps to confirm install location. The confirm screen doesn't even show which directory the installation will be done.

继续执行将允许在默认位置进行安装,并且应用程序可以正常运行.不知道安装位置会非常烦人和令人讨厌.

Continuing allows the installation to happen in the default location and the application works normally. Not knowing the install location is highly annoying and undesirable.

我使用的.iss文件(见下文)在我尝试过的不同Inno Setup版本中是相同的.在文件中,DefaultDirName是显式设置的(基于应用程序的版本).

The .iss file that I use (see below) is identical across the different Inno Setup versions that I have tried. In the file, the DefaultDirName is set explicitly (based on the version of the application).

; WARNING: This script has been created by py2exe. Changes to this script
; will be overwritten the next time py2exe is run!

[Setup]
AppName=MyApp
AppVersion=2.0.1
AppVerName=MyApp 2.0.1
AppPublisher=Company, Inc.
AppPublisherURL=www.company.com
AppContact=support@company.com
AppCopyright=Copyright (C) 2010-2016, Company, Inc.
LicenseFile=license\MyAppEULA.rtf
SetupIconFile=icons\CompanyScreeningProgram.ico
WizardImageFile=icons\MyAppImage.bmp
WizardSmallImageFile=icons\MyAppSmallImage.bmp
DefaultDirName=C:\MyApp_v2.0.1
DefaultGroupName=MyApp
Compression=lzma
OutputDir=F:\Python\dist\
OutputBaseFilename=MyApp_2.0.1_Setup

[Files]
Source: "MyApp_main.exe"; DestDir: "{app}\"; Flags: ignoreversion
Source: "lib\_bsddb.pyd"; DestDir: "{app}\lib"; Flags: ignoreversion
;.
;.
;.  600 lines of Source:
Source: "mpl-data\stylelib\grayscale.mplstyle"; DestDir: "{app}\mpl-data\stylelib"; Flags: ignoreversion

我还尝试在Windows 10上使用Inno Setup(5.5.7和5.5.9)打包安装程序,但是它具有相同的行为.

I also tried packaging the installer with Inno Setup (5.5.7 and 5.5.9) on Windows 10, but it had the same behavior.

我想知道我是否需要设置其他参数以使安装程序在Windows 10上也能正常运行,同时还需要较新版本的Inno Setup?

I was wondering it I need to set additional parameters for the installer to work correctly on Windows 10 also for newer versions of Inno Setup?

推荐答案

引用

按照Microsoft桌面应用程序指南的建议,DisableWelcomePage现在默认为yes.另外,DisableDirPageDisableProgramGroupPage现在默认为auto.所有先前版本中的默认值为no.

As recommended by Microsoft's desktop applications guideline, DisableWelcomePage now defaults to yes. Additionally DisableDirPage and DisableProgramGroupPage now default to auto. The defaults in all previous versions were no.


结论:


Conclusion:

DisableWelcomePage=no

我认为您对页面在Windows 7上显示的说法不正确.

选择目标位置"页面仅显示用于全新安装,不显示升级".因此,这与Windows 7和Windows 10无关.不同之处可能是您已在Windows 10系统上安装了该应用程序.并且您没有在Windows 7系统上安装它.

The "Select Destination Location" page is shown for fresh installations only, not for "upgrades". So this has nothing to do with Windows 7 vs. Windows 10. The difference is probably that you have the application installed on Windows 10 system; and you do not have it installed on the Windows 7 system.

要始终显示页面,请设置 DisableDirPage :

To show the page always, set the DisableDirPage:

DisableDirPage=no

如上面引用中所述,建议使用默认值,因此应遵循默认值.

Thought as mentioned in the quote above, the defaults are recommended, so you should follow them.

这篇关于Inno Setup生成的安装程序不显示“选择目标位置".在某些系统上的页面的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆