Customizing the Install procedure in InstallShield for DPI - installshield

I want to turn on the DPI resizing of from the Install Shield such that the font size will be independent to the resolution of the screen. I don't want to ask each customer to change their setting as that would not be practical as well as a bad customer service. So I would like to set up the installer such that when installing I wont have to worry about the setting and set the setting as default when the software is installed.

You use feature "DPI-Awareness in the Wizard Interface".
Reference document: https://docs.revenera.com/installshield26helplib/helplibrary/SteUIDPI.htm
Some configuration related to DPI:
Check DPI on client machine: DLG_INFO_CHECKSELECTION: https://docs.revenera.com/installshield26helplib/LangRef/LangrefDLGINFOCHECKSELECTION.htm?Highlight=dpi
Background About the Default Images on Dialogs in InstallScript and InstallScript MSI Projects: https://docs.revenera.com/installshield26helplib/helplibrary/ISDefaultDialogImg.htm?Highlight=dpi
Default Visual Asset Settings: https://docs.revenera.com/installshield26helplib/helplibrary/DefaultVisualAssetSettings.htm?Highlight=dpi
SdOptionsButtons: https://docs.revenera.com/installshield26helplib/LangRef/LangrefSdOptionsButtons.htm?Highlight=dpi
and other: https://docs.revenera.com/installshield26helplib/Search.htm?q=dpi

Related

EXE created by ant build on execution directly getting installed in TEMP path [duplicate]

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:
Welcome screen
EULA screen
default (or previous install) location, allowing user to select new install location,
Confirming install location, and
usual install screens.
This is the behavior I get with Inno Setup 5.5.5 or lower.
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.
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).
[Setup]
AppName=MyApp
AppVersion=2.0.1
AppVerName=MyApp 2.0.1
DefaultDirName=C:\MyApp_v2.0.1
[Files]
Source: "MyApp_main.exe"; DestDir: "{app}\"; Flags: ignoreversion
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.
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?
Quoting revision history for Inno Setup 5.5.7:
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:
The Welcome page is not shown anymore by default. To enable it, set the DisableWelcomePage:
DisableWelcomePage=no
I do not think you are right with your statement that the page shows on 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.
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.
I found another parameters that affects it.
CreateAppDir=no
In CreateAppDir page says:
If this is set to no, no directory for the application will be created, the Select Destination Location wizard page will not be displayed, and the {app} directory constant is equivalent to the {win} directory constant. If the uninstall feature is enabled when CreateAppDir is no, the uninstall data files are created in the system's Windows directory.
here I used
[Setup]
DisableDirPage=No
by default this parameter is seted to auto.
If this is set to auto, at startup Setup will look in the registry to
see if the same application is already installed, and if so, it will
not show the Select Destination Location wizard page.
See more in https://jrsoftware.org/ishelp/index.php?topic=setup_disabledirpage

InnoSetup not asking for destination folder [duplicate]

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:
Welcome screen
EULA screen
default (or previous install) location, allowing user to select new install location,
Confirming install location, and
usual install screens.
This is the behavior I get with Inno Setup 5.5.5 or lower.
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.
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).
[Setup]
AppName=MyApp
AppVersion=2.0.1
AppVerName=MyApp 2.0.1
DefaultDirName=C:\MyApp_v2.0.1
[Files]
Source: "MyApp_main.exe"; DestDir: "{app}\"; Flags: ignoreversion
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.
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?
Quoting revision history for Inno Setup 5.5.7:
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:
The Welcome page is not shown anymore by default. To enable it, set the DisableWelcomePage:
DisableWelcomePage=no
I do not think you are right with your statement that the page shows on 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.
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.
I found another parameters that affects it.
CreateAppDir=no
In CreateAppDir page says:
If this is set to no, no directory for the application will be created, the Select Destination Location wizard page will not be displayed, and the {app} directory constant is equivalent to the {win} directory constant. If the uninstall feature is enabled when CreateAppDir is no, the uninstall data files are created in the system's Windows directory.
here I used
[Setup]
DisableDirPage=No
by default this parameter is seted to auto.
If this is set to auto, at startup Setup will look in the registry to
see if the same application is already installed, and if so, it will
not show the Select Destination Location wizard page.
See more in https://jrsoftware.org/ishelp/index.php?topic=setup_disabledirpage

InnoSetup no longer allows user to pick installation directory? [duplicate]

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:
Welcome screen
EULA screen
default (or previous install) location, allowing user to select new install location,
Confirming install location, and
usual install screens.
This is the behavior I get with Inno Setup 5.5.5 or lower.
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.
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).
[Setup]
AppName=MyApp
AppVersion=2.0.1
AppVerName=MyApp 2.0.1
DefaultDirName=C:\MyApp_v2.0.1
[Files]
Source: "MyApp_main.exe"; DestDir: "{app}\"; Flags: ignoreversion
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.
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?
Quoting revision history for Inno Setup 5.5.7:
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:
The Welcome page is not shown anymore by default. To enable it, set the DisableWelcomePage:
DisableWelcomePage=no
I do not think you are right with your statement that the page shows on 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.
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.
I found another parameters that affects it.
CreateAppDir=no
In CreateAppDir page says:
If this is set to no, no directory for the application will be created, the Select Destination Location wizard page will not be displayed, and the {app} directory constant is equivalent to the {win} directory constant. If the uninstall feature is enabled when CreateAppDir is no, the uninstall data files are created in the system's Windows directory.
here I used
[Setup]
DisableDirPage=No
by default this parameter is seted to auto.
If this is set to auto, at startup Setup will look in the registry to
see if the same application is already installed, and if so, it will
not show the Select Destination Location wizard page.
See more in https://jrsoftware.org/ishelp/index.php?topic=setup_disabledirpage

can't run the emulator in android studio 2.0

I wan't to use the camera in my application but when I ran the emulator it shows this:
And this is my setting:
Try this:
Right-click on the Desktop and click Nvidia Control Panel. Click
Manage 3D settings. Click Program Settings. Select SketchUp from the
drop-down list. There are five settings that you need to configure:
Anisotropic Filtering set to Application Controlled.
Antialiasing FxAA set to On.
Antialiasing Gamma set to On.
Antialiasing Mode set to Application Controlled.
Open GL set to the name of the video card that you have.
This might remedy the situation where you have incorrect OpenGL settings. However if you have an old card with a small amount of VRAM you might unfortunately be unable to run the emulator of that system.

How do I create an InstallShield LE project to install a windows service?

I downloaded Visual Studio 2012 yesterday when it was released on MSDN. I have noticed that a few of the project types that we had in 2010 are gone or different. The biggest difference for me right now is the removal of the Windows Installer project. Now we are being forced to use the InstallShield LE (Limited Edition). The problem here is that I write a ton of Windows Services and I can't see how to setup InstallShield LE. It appears that we (my company) will have to invest in licenses for the professional edition.
Has anyone found a way to install services in InstallShield LE? When using the Windows Installer project, you just set the custom actions.
For Visual Studio 2012 & InstallShield LE, do the following:
Run through the InstallShield project assistant and add the primary output of your service to the Application files section.
After you are done with the project assistant, double click the "Files" item under step two of the setup project.
Right click on the primary output of your service, and go to properties.
Click the "COM and .NET Settings" tab, and place a check in the "Installer Class" checkbox.
Click Ok
Now, once you build and run your install, your service will show up in the Windows Services snap in.
Note that this assumes you added a "Project Installer" to your service project (Right click on the service design sheet and click "add installer"). I can confirm this work on Windows 8 with Visual Studio 2012 / InstallShield LE.
I've recently installed VS 2012 with Install Shield LE. At first I kept getting a ISEXP -5036 internal server error after a build (this was after setting up a ISLE project and running through the Install Shield Project Assistant). Eventually I found out that it was trying to create the MSI in the DVD-5 media type which is where it was failing. For some reason, creating the solution again from scratch somehow recognizes to only build to the CD_ROM and SingleImage media types which works.
Anyway to rectify the 5036 error, click the Build tab in VS 2012 (top menu), select configuration manager and you should see that your IS setup file is selected on the DVD-5 configuration. Change this to CD_ROM and click close. Once you build/rebuild it will complete with no IS 5036 error.
While using the installer class checkbox may work for some instances, you may experience the following error:
Error 1001.The specified service already exists
Here is an excerpt from this link on how to resolve this issue:
For Error: Error 1001.The specified service already exists
This error will occur if the component installing a .NET Service is
incorrectly configured with ".NET Installer Class" set to Yes. The
method to install a .NET Service is to use Component\Advanced
Settings\Services view, not the ".NET Installer Class" setting.
Making definitions in the Component\Advanced Settings\Services view
creates entries in the Windows Installer ServiceControl and
ServiceInstall Tables. These entries are used by the Windows
Installer "InstallServices" action to install the Service.
If your project is .NET, then try then you can use the ServiceProcessInstaller class with InstallShield LE.
To get it to work with InstallShield, you have to go into the InstallShield "files" tree and right click on your file. Then check the checkbox for "Installer class" on the "COM and .NET settings" tab.
I have gotten it to work, but I've had problems on some OS's like Windows 2008R2. Your mileage may vary.
Here is an example: http://www.codeproject.com/Articles/14353/Creating-a-Basic-Windows-Service-in-C
I had all sorts of problems with this.
As follows.
InstallShield takes ages to download
the registration process is a pain.
the configuration options are confusing and overly complex.
the accepted solution on this thread is a hack and it doesn't always work - see 1001 in the documentation - essentially you need to get through the paywall to get the right configuration options to install a windows service.
Solution for me as mentioned elsewhere - was to abandon InstallShield
Very easy from that point.
Edit: Update - install the latest version from here https://wix.codeplex.com/releases/view/115492 for vs 2013 / 2015
Visual Studio setup projects are back in VS 2013 as a visual studio extension.
https://visualstudiogallery.msdn.microsoft.com/9abe329c-9bba-44a1-be59-0fbf6151054d
Please update your solution and projects to VS 2013. If you are still in VS 2010, you are probably better off by upgrading directly to VS 2013.
My experience with Installsheild LE is that it is very quirky but once you figure out the tricks, it is easier to use. However, I think that the limited edition is a way by Microsoft and Flexera to sell the fully featured edition. In other words, first we pay Microsoft a lot of money for Visual Studio and then their partner (in crime) more for Installsheild. Bad strategy which did not work out since they had to bring back the setup projects in VS 2013.
I've written about this subject:
Augmenting InstallShield using Windows Installer XML - Windows Services
Basically you create a merge module using WiX to encapsulate the service and then add it to your installshield project. ( Be sure to associate to the INSTALLDIR directory to make sure your file goes where you expect ). Build and test on a VM. Piece of cake.
I'm using VS2012 and Installshield LE Spring Edition. I did not have to use Wix.
If you encounter the error "Could not create _isconfig.xml for use with InstallUtilLib.dll", please create a folder with the same name as your setup project and inside the setup project folder.
Credits to http://community.flexerasoftware.com/showthread.php?165929-Could-not-create-_isconfig-xml-for-use-with-InstallUtilLib-dll
I just got some problems finding where to add installer as referred in the answer. So here it is how.
Double click on your service class within your Windows service Project
A blank screen with the text "To add components to your class, drag them from the Toolbox and use the Properties window to set their properties..."
Right click anywhere but on the links and select "Add Installer"
see ya
Bear in mind that all the above explanation will not help you if you plan to create later an upgrade of that setup. InstallShiled LE can't stop the running service when you upgrade. You can't do it either from Window Service Installer -> BeforeInstall event.
Wanted to put this here;
On VS 2015, when doing this, I ran into the 1001 error upon installation repeatedly.
Answer on this page explained that on the newer versions (anything past 2012), apparently you need to explicitly leave the installer class option unchecked, and then add your windows service under the Services section under Step 3 of the installer project:
Error 1001 when installing custom Windows Service

Resources