boinc/win_build/installerv2/redist/WCG/scripts/Setup.rul

152 lines
7.2 KiB
Plaintext

//
// IIIIIII SSSSSS
// II SS InstallShield (R)
// II SSSSSS (c) 1996-2002, InstallShield Software Corporation
// II SS All rights reserved.
// IIIIIII SSSSSS
//
//
// This template script provides the code necessary to build an entry-point
// function to be called in an InstallScript custom action.
// Two major functions:
// CheckUnitedDevices: Check whether there is a previous World Community Agent ( United Devices)
// DeleteUnitedDevices: Delete United Devices
//
//
// File Name: Setup.rul
//
// Description: InstallShield script
//
////////////////////////////////////////////////////////////////////////////////
// Include Ifx.h for built-in InstallScript function prototypes, for Windows
// Installer API function prototypes and constants, and to declare code for
// the OnBegin and OnEnd events.
#include "ifx.h"
//including constants
#include "constants.rul"
// Include header file for built-in functions
#include "isrt.h"
// Include header file for MSI API functions and constants
#include "iswi.h"
// The keyword export identifies the function as an entry-point function.
// The argument it accepts must be a handle to the Installer database.
export prototype DeleteUnitedDevices(HWND);
export prototype CheckUnitedDevices(HWND);
// To Do: Declare global variables, define constants, and prototype user-
// defined and DLL functions here.
// To Do: Create a custom action for this entry-point function:
// 1. Right-click on "Custom Actions" in the Sequences/Actions view.
// 2. Select "Custom Action Wizard" from the context menu.
// 3. Proceed through the wizard and give the custom action a unique name.
// 4. Select "Run InstallScript code" for the custom action type, and in
// the next panel select "DeleteUnitedDevices" (or the new name of the entry-
// point function) for the source.
// 5. Click Next, accepting the default selections until the wizard
// creates the custom action.
//
// Once you have made a custom action, you must execute it in your setup by
// inserting it into a sequence or making it the result of a dialog's
// control event.
///////////////////////////////////////////////////////////////////////////////
//
// Function: DeleteUnitedDevices
//
// Purpose: This function will be called by the script engine when
// Windows(TM) Installer executes your custom action (see the "To
// Do," above).
// This Script is used to delete United Devices
//
///////////////////////////////////////////////////////////////////////////////
function DeleteUnitedDevices(hMSI)
// To Do: Declare local variables.
STRING svName;
NUMBER nvSize;
begin
// MsiSetProperty(hMSI, "UDProcess", "NotDoneUD");
RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE );
// Script that will be executed when DeleteUnitedDevices is called.
////////////////////////////////////////////////////////////////////////////////
nvSize = 256;
// if (RegDBKeyExist (WCG_UD_KEY) < 0) then
// MessageBox (NO_UD_MSG+"ininstallscriptsetup", SEVERE);
// else
// LaunchApp(KILL_UD_PROCESS, KILL_UD_PROCESS_PARAM);
if (LaunchAppAndWait ("MsiExec.exe ", UD_UNINSTALL_PARAM,LAAW_OPTION_WAIT) < 0) then
MessageBox (UD_UNABLE_UNINSTALL_MSG, SEVERE);
else
MsiSetProperty(hMSI, "UDAVAILABLE", "No");
endif;
// endif;
// MsiSetProperty(hMSI, "UDProcess", "DoneUD");
// MsiGetProperty(hMSI, "UDProcess",svName, nvSize);
// MessageBox ("the value of the UDPRocess in checkud function is "+svName+" for testing", INFORMATION);
end;
// To Do: Create a custom action for this entry-point function:
// 1. Right-click on "Custom Actions" in the Sequences/Actions view.
// 2. Select "Custom Action Wizard" from the context menu.
// 3. Proceed through the wizard and give the custom action a unique name.
// 4. Select "Run InstallScript code" for the custom action type, and in
// the next panel select "checkUnitedDevices" (or the new name of the entry-
// point function) for the source.
// 5. Click Next, accepting the default selections until the wizard
// creates the custom action.
//
// Once you have made a custom action, you must execute it in your setup by
// inserting it into a sequence or making it the result of a dialog's
// control event.
///////////////////////////////////////////////////////////////////////////////
//
// Function: CheckUnitedDevices
//
// Purpose: This function will be called by the script engine when
// Windows(TM) Installer executes your custom action (see the "To
// Do," above).
// This Script is used to check whether United Devices is present
//
//////////////////////////////////////////////////////////////////////////////
function CheckUnitedDevices(hMSI)
// To Do: Declare local variables.
STRING svName1;
NUMBER nvSize;
begin
RegDBSetDefaultRoot ( HKEY_LOCAL_MACHINE );
nvSize = 256;
// Script that will be executed when CheckUnitedDevices is called.
////////////////////////////////////////////////////////////////////////////////
MsiSetProperty(hMSI, "UDAVAILABLE", "dontknow");
if (RegDBKeyExist (WCG_UD_KEY) < 0) then
// MessageBox (NO_UD_MSG, SEVERE);
MsiSetProperty(hMSI, "UDAVAILABLE", "No");
else
MsiSetProperty(hMSI, "UDAVAILABLE", "Yes");
endif;
MsiGetProperty(hMSI, "UDAVAILABLE",svName1, nvSize);
//MessageBox ("the value of the CheckedUD is "+svName1+" for testing", INFORMATION);
// MsiSetProperty(hMSI, "UDProcess", "DoneUD");
// MsiGetProperty(hMSI, "UDProcess",svName1, nvSize);
// MessageBox ("the value of the UDPRocess in checkud function is "+svName1+" for testing", INFORMATION);
end;