home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World Komputer 1996 February
/
PCWK0296.iso
/
po7_win
/
install
/
windows.vrf
< prev
next >
Wrap
Text File
|
1994-09-02
|
4KB
|
108 lines
/* Copyright (c) Oracle Corporation 1993. All Rights Reserved */
/*****************************************************************************
NAME
windows.vrf - V3 common version analysis script for Windows products
DESCRIPTION
This script performs common version analysis functionality across product
VRF scripts. It returns the variable 'doit', indictating whether the
installation is to proceed. The variable 'version_status' is set to
one of four values: 'upgrade,'downgrade,'reinstall and 'new_install.
OWNER
Dan Galatin
MODIFIED DD-MMM-YY Reason
kjain 07-JUL-94 Added verbose mode support.
dgalatin 05-NOV-93 Created from unix.vrf.
*****************************************************************************/
{
product_label = product_interface_label(current_product);
ui_product(product_label);
analyze_depend = nls("analyze_depend",
"Analyzing %%product_label%% Dependencies...");
ui_action(instantiate(analyze_depend));
{
/* Check to make sure the required version of the Installer is running */
required_version = product_version(windowsinstver);
if (earlier_version(installer_version,required_version,4))
{
temp = explode(required_version,".");
required_version = implode(list(first(temp),first(rest(temp)),
first(rest(rest(temp))),
first(rest(rest(rest(temp))))),".");
information_dialog(instantiate(instver_too_early));
return(FALSE);
}
}
[ 'UNBOUND_VARIABLE: continue(); ]
mark
if (registered(product_name(current_product)))
{
registry = registration(product_name(current_product));
current_version = product_version(current_product);
installed_version = registry_version(registry);
if (earlier_version(registry,current_version))
{
version_status = 'upgrade;
if (verbose)
doit = yesno_dialog(instantiate(reinstall_prompt01),TRUE,
instantiate(reinstall_content01),
instantiate(reinstall_help01));
else
doit = TRUE;
if (not(doit))
if (internally_called)
information_dialog(instantiate(reinstall_prompt02),
instantiate(reinstall_content02),
instantiate(reinstall_help02));
}
else
{
if (later_version(registry,current_version))
version_status = 'downgrade;
else
version_status = 'reinstall;
if (member(selected_products,current_product))
if (version_status == 'downgrade)
doit = yesno_dialog(instantiate(reinstall_prompt03),FALSE,
instantiate(reinstall_content03),
instantiate(reinstall_help03));
else
{
if (verbose)
doit = yesno_dialog(instantiate(reinstall_prompt04),FALSE,
instantiate(reinstall_content04),
instantiate(reinstall_help04));
else
doit = TRUE;
}
else
doit = FALSE;
}
}
else
{
version_status = 'new_install;
doit = TRUE;
}
if (doit)
{
if (not(member(products_for_installation,current_product)))
add(products_for_installation,current_product);
}
else if (member(selected_products,current_product))
ui_action(instantiate(nls("cancel_install","Cancelling Installation of %%product_label%%...")));
return(doit);
}