cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
usmanjamil
Level 5

Can I create insatller for 64 bit windows from Installscript project

Hi

Is it possible to create installer for 64 bit windows using Installscript project. I could not find any option in project settings, where I could mention the target machine architecture. I tried running an installer on 64 bit machine but the installers process runs as a 32 bit process and it get installed in "Program Files (86)". Also it cannot access default "System32" folder or the default registry accessible to 64 bit processes. Is there any possibility I can avoid remaking the whole Installscript project as MSI project.

Regards

Usman
Labels (1)
0 Kudos
(5) Replies
usmanjamil
Level 5

Anybody with any ideas???
0 Kudos
MichaelU
Level 12 Flexeran
Level 12 Flexeran

If you're looking for how to access 64-bit folders from script calls, see Enable/Disable WOW64FSREDIRECTION.
0 Kudos
shontu
Level 4

Go to Installshield Help and look for following Topic "
Using 64-Bit Windows Installer Packages"

Here are some details
When you create 64-bit Windows Installer Packages or applications that call Windows Installer to install 64-bit packages, do the following:

Use a Windows Installer database schema of 200 or higher. Specify that version 2.0 is the minimum version of the installer required to install the package by setting the Page Count Summary property to the integer 200. Earlier Windows Installer versions reject attempts to install 64-bit packages.

Indicate in the Template Summary property of the package summary information stream that this is a 64-bit package. Enter "Intel64" into the platform field of the Template Summary property if the package is to be run on an Intel64 processor. Enter "x64" if the package is to be run on a 64-bit extended processor. A package cannot be marked as supporting both Intel64 and x64 platforms, a Template Summary property value of "Intel64,x64" is invalid. A package cannot be marked as supporting both 32-bit and 64-bit platforms, the Template Summary property values of "Intel,x64" or "Intel,Intel64" are invalid.

Identify every 64-bit component by setting the msidbComponentAttributes64bit in the Attributes column of the Component table.

Use optional conditional statements that check the version of the 64-bit operating system by referencing the VersionNT64 property. Windows Installer 2.0 sets this property to the 64-bit Windows version and leaves VersionNT64 undefined if the operating system is not 64-bit Windows. For more information, see Using Properties in Conditional Statements.

Use optional conditional statements that check the numeric processor level of the computer by referencing the Intel64 or Msix64 property. The Windows Installer sets these properties to the current numeric processor level of the computer and leaves the Intel64 Property undefined if this is not an Itanium-based processor. For more information, see Using Properties in Conditional Statements.

Use the AppSearch Table and AppSearch Action to do optional searches of the registry for existing 64-bit components. To search for existing 64-bit components, include the msidbLocatorType64bit bit in the Type column of the RegLocator Table. For more information, see Searching for Existing Applications, Files, Registry Entries or .ini File Entries Property

Obtain the paths to system folders by referencing the System64Folder Property, ProgramFiles64Folder Property, and CommonFiles64Folder Property for the 64-bit folders and the SystemFolder Property, ProgramFilesFolder Property, and CommonFilesFolder Property for the 32-bit folders.

Verify that the application uses the correct GUID when referencing a 64-bit component. If there are 32-bit and 64-bit versions of a specific component, these should have different component ID GUIDs.

Determine whether any new environment variables need to be defined when installing 64-bit applications.

If a 64-bit ODBC Driver Manager is to be installed, the component that carries it should be named ODBCDriverManager64. The ODBC Driver Manager must be authored in the installer package and a component named ODBCDriverManager64 must be included. The manager will be installed if necessary.

Verify that the application only calls 32-bit services that run as executables. Applications should not call 32-bit services that run in DLLs.

If the application installs coexisting 32-bit and 64-bit versions of a component, verify that the application shares .ini file information correctly.
Verify that the application only applies 32-bit patches to 32-bit binaries and 64-bit patches to 64-bit binaries.

Consider future upgrade scenarios for both 32-bit and 64-bit versions and maintain upgrade codes. For more information, see Patching and Upgrades.

To disable registry reflection for registry keys that are affected by a particular component, set the msidbComponentAttributesDisableRegistryReflection bit in the Attributes field of the Component table. This may be necessary to have 32-bit and 64-bit copies of the same application coexist. If this bit is set, the Windows Installer calls the RegDisableReflectionKey function on each key that is being accessed by the component. This bit is available with Windows Installer version 4.0 and is ignored on 32-bit systems.


Note The value of the numeric registry root returned by the lpPathBuf parameter of the MsiGetComponentPath function distinguishes between components on 32-bit and 64-bit operating systems. For more information, see MsiGetComponentPath function.
0 Kudos
tenebrae
Level 4

shontu wrote:
Go to Installshield Help and look for following Topic "
Using 64-Bit Windows Installer Packages"


Valuable information, but the question was about InstallScript type projects not Basic MSI.

I'm also curious about that as I'm about to start doing similar thing...

Regards,

tene
0 Kudos
liberybell
Level 4

Have anybody got any answer to this question?
Is there a pattern to follow when building a installation package as a InstallScript project for a 64-bit platform?
Any suggestions would be greatly appreciate.
0 Kudos