Hi,
In my installer am creating DB and running create/alter table scripts.
if any script fails, how can i handle the error from wix?

pls find the below code


*Component Id="cmp39152CBE55BD4B39B74F75CAC45B7B87"
Directory="INSTALLLOCATION" Guid="07B7EF72-F434-46DB-A94A-59C35534651E"
KeyPath ="yes" Win64="$(var.Win64)"> **
**          <sql:SqlDatabase Id="DatabaseCreate"
Server="[DATABASE_SERVERNAME]" Database="[DATABASE_NAME]"
CreateOnInstall="yes" DropOnUninstall="no" CreateOnUninstall ="no"
DropOnInstall ="no"                     User="SQLUser"
ContinueOnError="no"> **
**            <sql:SqlFileSpec Id="FortuneDatabaseFile"
Filename="[INSTALLLOCATION]DB\[DATABASE_NAME]_Data.mdf"
Name="[DATABASE_NAME]_Data" />**
**            <sql:SqlLogFileSpec Id="FortuneDatabaseLogFile"
Filename="[INSTALLLOCATION]DB\[DATABASE_NAME]_log.ldf"
Name="[DATABASE_NAME]_log" /> **
**            <sql:SqlString Id="CreateDB1" Sequence="1"
ExecuteOnInstall="yes" ExecuteOnUninstall ="no" ContinueOnError="no"**
**              SQL="USE [\[]MASTER[\]]**
**                    IF EXISTS(SELECT * FROM sys.server_principals
WHERE name = N'PMS') DROP LOGIN [\[]PMS[\]]**
**                    CREATE LOGIN [\[]PMS[\]] WITH
PASSWORD=N'[PMS_DATABASE_PASSWORD]', DEFAULT_DATABASE=[\[]master[\]],
DEFAULT_LANGUAGE=[\[]us_english[\]], CHECK_EXPIRATION=OFF,
CHECK_POLICY=OFF**
**                    EXEC sys.sp_addsrvrolemember @loginame = N'PMS',
@rolename = N'sysadmin' **
**                    IF EXISTS(select * From syslogins  WHERE name =
N'NT AUTHORITY\SYSTEM') DROP LOGIN [\[]NT AUTHORITY\SYSTEM[\]] **
**                    IF EXISTS(select * From syslogins  WHERE name =
N'NT SERVICE\MSSQL$IDSPMS') DROP LOGIN [\[]NT SERVICE\MSSQL$IDSPMS[\]] **
**                    IF EXISTS(select * From syslogins  WHERE name =
N'BUILTIN\Administrator') DROP LOGIN [\[]BUILTIN\Administrator[\]] **
**                    IF EXISTS(select * From syslogins  WHERE name =
N'BUILTIN\USERS') DROP LOGIN [\[]BUILTIN\USERS[\]]"/> **
**            <sql:SqlScript Id="CreateTable" ExecuteOnInstall="yes"
ExecuteOnUninstall ="no" BinaryKey="CreateTable" Sequence ="2"
ContinueOnError="no" />**
**          </sql:SqlDatabase>**
**      </Component>**
*
When the CreateTable sqlscript fails, it displays the entire script
contents as error message, is there any way to catch the error and
display proper message box?

Thanks and Regards
Ravi Shankar


------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to