Previous Contents Index Next |
Setup Util Programmer's Guide |
Appendix A Common Questions and Answers
This appendix lists answers to common questions about the Setup Util. It is divided into the following sections:
General
The following questions and answers relate to the Setup Util as a whole.
What is the Messaging Installation Framework?
The Setup Util provides many common APIs for UNIX and Windows NT. Nonetheless, it still requires programmers to write two different sets of UI code.
What is the Installation Database?
The installation database is a list of all products installed on a machine. It is stored in the serverroot/setup directory. On UNIX, the list is called setup.inf. On Windows NT, it is called uninstall.inf.
Each product has a subdirectory beneath setup which contains a list of unzipped files (component.log) and installed component information (product.inf).
Is the Setup Util Localizable?
Yes on Windows NT. Maybe on UNIX. Localization is dependent on having all text strings in one or more resource files. On NT, this is currently implemented. On UNIX, most resource strings are in one centralized file, but there may be exceptions.
Why Does Setup Skip Product Selection?
This is a feature of the Setup Util. The Common Install Shell knows which products are available when the user enters a destination directory. If there is only one product in the archive, the Common Install Shell knows to select it without prompting the user.
Directory-Related
These questions address LDAP and Directory Server issues.
Where Does Setup Capture LDAP Information?
The Common Install Shell captures LDAP-related information in three files: dbswitch.conf, ldap.conf, and ds.conf. All three files are stored in the serverroot/shared/config directory.
dbswitch.conf contains the default configuration directory.
ldap.conf contains the URL and administrator name for the user directory.
Information Files, Upgrades, and Archives
These questions relate to information files, upgrades, and product archives.
Which Compression Algorithm Does Setup Use?
The Common Install Shell links with unzip (version 5.31) from InfoZip. You must package your product archive in the zip format.
The ZIP options you use depend on your needs. The Administration Server team uses "-ry9uT".
How Do Programs Recognize ReInstallations?
If a product is already installed, the Common Install Shell will notify the pre- and post-installation programs as follows:
On UNIX, setup passes the -r option to the programs to let them know that this is a reinstallation.
On Windows NT, ReInstall=True is set in the affected component's section of the installation cache file. For example:
Can I Use Self-Extracting Archives?
On Windows NT, you can use self-extracting archives. This feature is not yet available on UNIX.
Where Should I Package Text Files?
You should package readme.txt and license.txt in the same directory as the Common Install Shell (setup). If license.txt is not in this directory, installation will fail immediately. If readme.txt is not in this directory, installation will work, but the user will not be prompted to view the readme file.
What's a Build Number?
A build number (buildnumber) consists of three parts: year (4 digits), date (total number of days since the beginning of the year), time (hour and minutes). For example, 1998.295.2154 is the buildnumber for 2:45 PM, October 22, 1998.
If an existing product and a new installation have the same version number, the Common Install Shell will check build numbers. Here is some simple source code to generate a build number:
now = time(NULL);
now_tm = gmtime(&now);
strftime(build_num, BUILD_NUM_LEN, "%Y.%j.%H%M", now_tm);
Can I Use More than Two Levels in an Inf File?
The Setup Util does not support more than two levels of component information. If you need to work around this, you can create a dialog that lets a user pick subcomponents. You can then choose the product archive based on this selection.
Silent Installation and Uninstallation
This section contains answers to common silent installation and uninstallation questions.
Why Doesn't Silent Installation Work For Me?
Make sure that you have saved your installation cache file as described in Chapter 7 "Silent Installation." You may need to modify this file before using it for silent installation. Double-check that the destination directory and host information are correct.
What is an Uninstallation Log?
The uninstallation log records the success or failure of an uninstallation operation. It's only available on Windows NT and is stored in the system's temporary directory.
Why Doesn't Silent Uninstallation Work For Me?
Make sure that you are following the directions described in Chapter 11 "Uninstalling."
Why Doesn't Uninstallation Remove Everything?
By default, the uninstallation shell removes only those files that are listed in the installation log. Since the installation log records the files that are extracted from the product archive, anything that was saved at a later date may not be removed. If you know which files the uninstallation shell may try to keep, you can delete them using your post-uninstallation program.
UNIX-Specific
The following questions and answers only pertain to UNIX.
Are There Known Curses Problems on UNIX?
Yes. On AIX and HP-UX, you may see the following problems:
AIX
Some users of AIX 4.2 have reported strange display problems such as improperly rendered text and unresponsive cursors. Rebuilding your installer on AIX 4.3 generally fixes these problems. Charlene Wynn reports that updating machines with the latest libcurses.a (bos.rte.libcur.4.3.2.3) works well.
HP-UX
Japanese input does not work well on HP-UX. This is especially true when using the ShiftJIS locale. A fix is not available at this time.
Windows-Specific
The following questions and answers only pertain to Microsoft Windows.
Why Doesn't The Back Button Work?
In some installers, clicking Back from within the summary window does not work. This occurs when the last property sheet before the summary does not return the result code NS_WIZNEXT. To keep this from happening, use the following code in your final property sheet:
case PSN_WIZNEXT:
mi.m_nResult = NS_WIZNEXT;
SendMessage(GetParent(hwndDlg), WM_CLOSE, 0, 0);
Can I Enable Asian Characters in an NT Dialog?
Yes. Upon receiving the WM_INITDIALOG message, set the global font to DEFAULT_GUI_FONT. In some dialogs, this does not change the font for text boxes. If this occurs, change the individual text box fonts to DEFAULT_GUI_FONT as well. The following code shows you how to do this:
hGdiObj = GetStockObject(DEFAULT_GUI_FONT);
SendMessage(hwndDlg, WM_SETFONT,
(WPARAM) ((struct HFONT__ *)hGdiObj),
MAKELPARAM(TRUE, 0));
How Does the Setup Util Call My Plug-In?
The Setup Util calls each component's plug-in APIs in the following order:
How Do I Assign a Domain Name on Win2K?
To assign a domain name on Windows 2000, either open Control Panel > System > Network Identification > Properties > More or right-click on My Computer and choose Properties > More.
Previous Contents Index Next
Copyright (C) 2005 Red Hat, Inc. All rights reserved.
This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/
Last Updated April 11, 2000