LAAW_STARTUPINFO

InstallShield 2016 » InstallScript Language Reference

When you call LaunchApplication, LaunchAndAppAndWait, or LaunchApp, the LAAW_STARTUPINFO structured variable specifies main window properties if a new window is created for the launched process. This system variable is initialized automatically during installation initialization by a call to LaunchAppAndWaitInitStartupInfo.

The STARTUPINFO system variable has the following members:

LAAW_STARTUPINFO

Member

Description

cb

Specifies the size, in bytes, of the structure.

lpReserved

Reserved. Set this member to NULL.

lpDesktop

Pointer to a null-terminated string that specifies either the name of the desktop only or the name of both the desktop and window station for this process. A backslash in the string pointed to by lpDesktop indicates that the string includes both desktop and window station names. If lpDesktop is NULL, the new process inherits the desktop and window station of its parent process. If lpDesktop is an empty string, the process does not inherit the desktop and window station of its parent process; instead, the system determines if a new desktop and window station need to be created. If the impersonated user already has a desktop, the system will use the existing desktop.

lpTitle

For console processes, this is the title displayed in the title bar if a new console window is created. If NULL, the name of the executable file is used as the window title instead. This parameter must be NULL for GUI or console processes that do not create a new console window.

dwX

Ignored unless dwFlags specifies STARTF_USEPOSITION. Specifies the x offset, in pixels, of the upper left corner of a window if a new window is created. The offset is from the upper left corner of the screen. For GUI processes, the specified position is used the first time the new process calls the Windows API function CreateWindow to create an overlapped window if the x parameter of CreateWindow is CW_USEDEFAULT.

dwY

Ignored unless dwFlags specifies STARTF_USEPOSITION. Specifies the y offset, in pixels, of the upper left corner of a window if a new window is created. The offset is from the upper left corner of the screen. For GUI processes, the specified position is used the first time the new process calls the Windows API function CreateWindow to create an overlapped window if the y parameter of CreateWindow is CW_USEDEFAULT.

dwXSize

Ignored unless dwFlags specifies STARTF_USESIZE. Specifies the width, in pixels, of the window if a new window is created. For GUI processes, this is used only the first time the new process calls the Windows API function CreateWindow to create an overlapped window if the nWidth parameter of CreateWindow is CW_USEDEFAULT.

dwYSize

Ignored unless dwFlags specifies STARTF_USESIZE. Specifies the height, in pixels, of the window if a new window is created. For GUI processes, this is used only the first time the new process calls CreateWindow to create an overlapped window if the nHeight parameter of CreateWindow is CW_USEDEFAULT.

dwXCountChars

Ignored unless dwFlags specifies STARTF_USECOUNTCHARS. For console processes, if a new console window is created, dwXCountChars specifies the screen buffer width in character columns. This value is ignored in a GUI process.

dwYCountChars

Ignored unless dwFlags specifies STARTF_USECOUNTCHARS. For console processes, if a new console window is created, dwYCountChars specifies the screen buffer height in character rows. This value is ignored in a GUI process.

dwFillAttribute

Ignored unless dwFlags specifies STARTF_USEFILLATTRIBUTE. Specifies the initial text and background colors if a new console window is created in a console application. These values are ignored in GUI applications. This value can be any combination of the following values: FOREGROUND_BLUE, FOREGROUND_GREEN, FOREGROUND_RED, FOREGROUND_INTENSITY, BACKGROUND_BLUE, BACKGROUND_GREEN, BACKGROUND_RED, and BACKGROUND_INTENSITY. For information on using these Windows constants, which are not defined in ISRTWindows.h, see Using Windows Constants in a Script. For example, the following combination of values produces red text on a white background:

FOREGROUND_RED| BACKGROUND_RED| BACKGROUND_GREEN| BACKGROUND_BLUE

dwFlags

This is a bit field that determines whether certain STARTUPINFO members are used when the process creates a window. Any combination of the following values can be specified:

STARTF_FORCEONFEEDBACK—Indicates that the cursor is in feedback mode for two seconds after LaunchApplication or LaunchAndAppAndWait is called. If during those two seconds the process makes the first GUI call, the system gives five more seconds to the process. If during those five seconds the process shows a window, the system gives five more seconds to the process to finish drawing the window.

The system turns the feedback cursor off after the first call to the Windows API function GetMessage, regardless of whether the process is drawing.

STARTF_FORCEOFFFEEDBACK—Indicates that the feedback cursor is forced off while the process is starting. The normal cursor is displayed.
STARTF_RUNFULLSCREEN—Indicates that the process should be run in full-screen mode, rather than in windowed mode.

This flag is only valid for console applications running on an x86 computer.

STARTF_USECOUNTCHARS—If this value is not specified, the dwXCountChars and dwYCountChars members are ignored.
STARTF_USEFILLATTRIBUTE—If this value is not specified, the dwFillAttribute member is ignored.
STARTF_USEPOSITION—If this value is not specified, the dwX and dwY members are ignored.
STARTF_USESHOWWINDOW—If this value is not specified, the wShowWindow member is ignored.
STARTF_USESIZE—If this value is not specified, the dwXSize and dwYSize members are ignored.
STARTF_USESTDHANDLES—Sets the standard input, standard output, and standard error handles for the process to the handles specified in the hStdInput, hStdOutput, and hStdError members of the STARTUPINFO structure. LAAW_PARAMETERS.bInheritHandles must be set to TRUE for this to work properly.

If this value is not specified, the hStdInput, hStdOutput, and hStdError members of the STARTUPINFO structure are ignored.

wShowWindow

Ignored unless dwFlags specifies STARTF_USESHOWWINDOW. The wShowWindow member can be any of the SW_ constants defined in Winuser.h. For GUI processes, wShowWindow specifies the default value the first time the Windows API function ShowWindow is called. The nCmdShow parameter of ShowWindow is ignored. In subsequent calls to ShowWindow, the wShowWindow member is used if the nCmdShow parameter of ShowWindow is set to SW_SHOWDEFAULT.

cbReserved2

Reserved; must be zero.

lpReserved2

Reserved; must be NULL.

hStdInput

Ignored unless dwFlags specifies STARTF_USESTDHANDLES. Specifies a handle that will be used as the standard input handle to the process if STARTF_USESTDHANDLES is specified.

hStdOutput

Ignored unless dwFlags specifies STARTF_USESTDHANDLES. Specifies a handle that will be used as the standard output handle to the process if STARTF_USESTDHANDLES is specified.

hStdError

Ignored unless dwFlags specifies STARTF_USESTDHANDLES. Specifies a handle that will be used as the standard error handle to the process if STARTF_USESTDHANDLES is specified.

Example

To specify that the launched application should be displayed at coordinates (0,0), before calling LaunchAppAndWait, you would customize the structure as follows:

LAAW_STARTUPINFO.dwFlags = LAAW_STARTUPINFO.dwFlags | STARTF_USEPOSITION;

LAAW_STARTUPINFO.dwX = 0;

LAAW_STARTUPINFO.dwY = 0;

See Also