The beginning of the article starts today, I will study and study the function of InstallShieldx, and use it to complete the Demo installation of our company's educational film, and have used InstallShield Profressional 5.0 installation! However, with the continuous upgrade of Windows, past installations must gradually be adapted to present requirements. Monitoring 2005.1.6 The installation of the educational film has been completed in the 2 weeks of preparation. Now some of the problems that appear in the installation! 1. Technical site http://community.installshield.com Installshield official website website It is the BBS of the INSTALLSHIELD official website direct LINK past INSTALLSHIELD product technology. Most of the problems that appear during installation can be found directly in the answer! 2. In ISX, establish installshield script project. The MAger Modal of BDE 5.1 is required. However, the previous IS10.5 installation does not exist. MSDE2000 Modal. Finally, the Down on the website of IS has an installShield1050legacyInstallScriptObjects (1) Install file, which is the final solution 3. Install the MSDE MODAL process 1). First, the MSDE is used as part of the installation, and in part of the MSDE is part of the Feature, you need to enter a unique information of the installation, such as Instance Name, Password ... 2). Because MSDE2000 installation requires some requests for the check target machine. . The MSDE2000 help file provided by ISX provides the way of using Object.
/// // // Function: CheckMSDEObjectStatus // // Purpose:. This function checks all minimum requirements for the // MSDE2000 being installed Check // 1.if the instance had installed.then do not install it fater // .. 2.if the IE Old not required then show message abort /// function CheckMSDEObjectStatus () object oObject, oStatus; string szStatus; number nStausId; begin try set oObject = GetObject ( "MSDE2000"); catch MessageBox (Err.Description , Severage; Abort; Endcatch; if (! Isobject (OObject)). MessageBoxEx ( "Failed to get MSDE2000 object reference.", "", INFORMATION); abort; endif; try set oStatus = oObject.Status; nStausId = oStatus.Number;! If ((oStatus.Number = OBJ_STATUS_SUCCESS || oStatus.Number = MSI_ERROR_SUCCESS_REBOOT_REQUIRED) THEN SPRINTF (Szstatus, "MSDE 2000 Object / N / NNumber: / T% D / N" "Description: / T% S / NFILE: / T% S / NLINE: / T / T% S / NLINE: / T / T% D / NScript Error: / T% D ", Ostatus.Number, Ostatus.Description, Ostatus.szscriptFile, Ostatus.nscriptline, Ostatus.nscripTerror;
MessageBoxEx (Szstatus, ", SEVERE); Abort; Endif; Catch Sprintf (Szstatus," MSDE2000 Unexpected Exception / N / NNumber: 0x% X / NDescription: " "% S / NSOURCE:% S / NHELP FILE:% s / NHELP CONTEXT:% D ", Err.Number, Err.Description, Err.Source, Err.helpfile, Err.helpContext); MessageBoxEx (Szstatus,", Severe); Abort; endcatch; end; 3). Installation process There is an installed SQL Server before it is judged. The Items of MSDE is included. Determine if the following is existent, to determine if the SQL Server is installed #define reg_issetup_msql "// Software // mssqlserver // currentversion" 4). After installing the MSDE2000, you need to automatically start now SQL Server Subsequent actions. The method of automatic SQL Server is much manually, can be started by MMC. Server Manger ....
However, our installation needs to be automatically started, the method is as follows a. Net Start Mssqlser B. ServicegetService ("SQLServer", service_state); if (ServiceState = service_stopped) THEN ServiceStartService ("SQL Server", "); Endif; c. Pass IS script to start /// // function: startsqlserver // // Start specifying SQL Server. Start // other ways to start SQL Server with SQL-DMO. But there are not too good. test // 1.NET.EXE START MSSQLSERVER // 2.ServiceStartService // 3.scm.exe Command line // function BOOL startSQLServer (strServerName, strUserName, strPassWord) object dmoServer; BOOL bStartMode; begin try set dmoServer = CreateObject ( "SQLDMO.SQLServer"); catch MessageBox (Err.Description, SEVERE); return FALSE; endcatch;! if (IsObject (dmoServer)) then MessageBox ( "Microsoft SQL-DMO is not installed on your computer!", SEVERE);// free object set dmoserver = Nothing; Return False; Endif;