summaryrefslogtreecommitdiff
path: root/VC++Files/InstallShield
diff options
context:
space:
mode:
authorunknown <patg@krsna.patg.net>2004-06-25 00:43:14 -0700
committerunknown <patg@krsna.patg.net>2004-06-25 00:43:14 -0700
commitd1e4305187a2e2c613f7cd289ad2cd2df914ea18 (patch)
treea07642dd85f6ca0b594fb8f2c445a0b41c8370e4 /VC++Files/InstallShield
parentd4f06d1c6ddaddd1f16b676ae8c5f18684cb759f (diff)
downloadmariadb-git-d1e4305187a2e2c613f7cd289ad2cd2df914ea18.tar.gz
Many files:
new file
Diffstat (limited to 'VC++Files/InstallShield')
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/4.1.XX-classic.ipr51
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Component Definitions/Default.cdf192
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Component Definitions/Default.fgl42
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/File Groups/Clients and Tools.fgl34
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/File Groups/Default.fdf82
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/File Groups/Development.fgl241
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/File Groups/Documentation.fgl100
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/File Groups/Grant Tables.fgl52
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/File Groups/Servers.fgl251
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.dbgbin0 -> 28458 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.inobin0 -> 58611 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.insbin0 -> 57122 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.obsbin0 -> 65611 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.rul.old640
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Script Files/setup.rul641
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt25
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmpbin0 -> 15694 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Shell Objects/Default.shl12
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/String Tables/0009-English/value.shl23
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/String Tables/Default.shl74
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Text Substitutions/Build.tsb56
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-classic/Text Substitutions/Setup.tsb76
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/4.1.XX-gpl.ipr51
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Component Definitions/Default.cdf192
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Component Definitions/Default.fgl42
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/File Groups/Clients and Tools.fgl35
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/File Groups/Default.fdf82
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/File Groups/Development.fgl243
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/File Groups/Documentation.fgl100
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/File Groups/Grant Tables.fgl52
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/File Groups/Servers.fgl253
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Registry Entries/Default.rge4
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.dbgbin0 -> 28458 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.inobin0 -> 58611 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.insbin0 -> 57122 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.obsbin0 -> 65611 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.rul.old640
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Script Files/setup.rul641
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt25
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmpbin0 -> 15694 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Shell Objects/Default.shl12
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/String Tables/0009-English/value.shl23
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/String Tables/Default.shl74
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Text Substitutions/Build.tsb56
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-gpl/Text Substitutions/Setup.tsb76
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/4.1.XX-pro.ipr52
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Component Definitions/Default.cdf192
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Component Definitions/Default.fgl42
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/File Groups/Clients and Tools.fgl34
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/File Groups/Default.fdf82
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/File Groups/Development.fgl242
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/File Groups/Documentation.fgl100
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/File Groups/Grant Tables.fgl51
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/File Groups/Servers.fgl251
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Registry Entries/Default.rge4
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.dbgbin0 -> 28458 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.inobin0 -> 58611 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.insbin0 -> 57122 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.obsbin0 -> 65611 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.rul.old640
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Script Files/setup.rul641
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt25
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmpbin0 -> 15694 bytes
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Shell Objects/Default.shl12
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/String Tables/0009-English/value.shl23
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/String Tables/Default.shl74
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Text Substitutions/Build.tsb56
-rwxr-xr-xVC++Files/InstallShield/4.1.XX-pro/Text Substitutions/Setup.tsb76
68 files changed, 7790 insertions, 0 deletions
diff --git a/VC++Files/InstallShield/4.1.XX-classic/4.1.XX-classic.ipr b/VC++Files/InstallShield/4.1.XX-classic/4.1.XX-classic.ipr
new file mode 100755
index 00000000000..f0535fd9f2a
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/4.1.XX-classic.ipr
@@ -0,0 +1,51 @@
+[Language]
+LanguageSupport0=0009
+
+[OperatingSystem]
+OSSupport=0000000000010010
+
+[Data]
+CurrentMedia=
+CurrentComponentDef=Default.cdf
+ProductName=MySQL Servers and Clients
+set_mifserial=
+DevEnvironment=Microsoft Visual C++ 6
+AppExe=
+set_dlldebug=No
+EmailAddresss=
+Instructions=Instructions.txt
+set_testmode=No
+set_mif=No
+SummaryText=
+Department=
+HomeURL=
+Author=
+Type=Database Application
+InstallRoot=D:\MySQL-Install\4.1.xcom-clas
+Version=1.00.000
+InstallationGUID=40744a4d-efed-4cff-84a9-9e6389550f5c
+set_level=Level 3
+CurrentFileGroupDef=Default.fdf
+Notes=Notes.txt
+set_maxerr=50
+set_args=
+set_miffile=Status.mif
+set_dllcmdline=
+Copyright=
+set_warnaserr=No
+CurrentPlatform=
+Category=
+set_preproc=
+CurrentLanguage=English
+CompanyName=MySQL
+Description=Description.txt
+set_maxwarn=50
+set_crc=Yes
+set_compileb4build=No
+
+[MediaInfo]
+
+[General]
+Type=INSTALLMAIN
+Version=1.10.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Component Definitions/Default.cdf b/VC++Files/InstallShield/4.1.XX-classic/Component Definitions/Default.cdf
new file mode 100755
index 00000000000..48d37800cd1
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Component Definitions/Default.cdf
@@ -0,0 +1,192 @@
+[Development]
+required0=Servers
+SELECTED=Yes
+FILENEED=STANDARD
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=Examples, Libraries, Includes and Script files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=Examples, Libraries, Includes and Script files
+DISPLAYTEXT=Examples, Libraries, Includes and Script files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Grant Tables]
+required0=Servers
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The Grant Tables and Core Files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The Grant Tables and Core Files
+DISPLAYTEXT=The Grant Tables and Core Files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Grant Tables
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Clients and Tools
+INSTALLATION=NEVEROVERWRITE
+requiredby2=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Components]
+component0=Development
+component1=Grant Tables
+component2=Servers
+component3=Clients and Tools
+component4=Documentation
+
+[TopComponents]
+component0=Servers
+component1=Clients and Tools
+component2=Documentation
+component3=Development
+component4=Grant Tables
+
+[SetupType]
+setuptype0=Compact
+setuptype1=Typical
+setuptype2=Custom
+
+[Clients and Tools]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL clients and Maintenance Tools
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL clients and Maintenance Tools
+DISPLAYTEXT=The MySQL clients and Maintenance Tools
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Clients and Tools
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=NEWERDATE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Servers]
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The MySQL Servers
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Servers
+DISPLAYTEXT=The MySQL Servers
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Servers
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Grant Tables
+INSTALLATION=ALWAYSOVERWRITE
+requiredby2=Clients and Tools
+requiredby3=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[SetupTypeItem-Compact]
+Comment=
+item0=Grant Tables
+item1=Servers
+item2=Clients and Tools
+item3=Documentation
+Descrip=
+DisplayText=
+
+[SetupTypeItem-Custom]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Servers
+item3=Clients and Tools
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Info]
+Type=CompDef
+Version=1.00.000
+Name=
+
+[SetupTypeItem-Typical]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Servers
+item3=Clients and Tools
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Documentation]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL Documentation with different formats
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Documentation with different formats
+DISPLAYTEXT=The MySQL Documentation with different formats
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Documentation
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Component Definitions/Default.fgl b/VC++Files/InstallShield/4.1.XX-classic/Component Definitions/Default.fgl
new file mode 100755
index 00000000000..4e20dcea4ab
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Component Definitions/Default.fgl
@@ -0,0 +1,42 @@
+[<PROGRAMFILES>\<COMMONFILES>]
+DISPLAYTEXT=Common Files Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>\<WINSYSDIR>]
+DISPLAYTEXT=Windows System Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[USERDEFINED]
+DISPLAYTEXT=Script-defined Folders
+TYPE=USERSTART
+fulldirectory=
+
+[<PROGRAMFILES>]
+DISPLAYTEXT=Program Files Folder
+SubDir0=<PROGRAMFILES>\<COMMONFILES>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<TARGETDIR>]
+DISPLAYTEXT=General Application Destination
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>]
+DISPLAYTEXT=Windows Operating System
+SubDir0=<WINDIR>\<WINSYSDIR>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[TopDir]
+SubDir0=<WINDIR>
+SubDir1=<PROGRAMFILES>
+SubDir2=<TARGETDIR>
+SubDir3=USERDEFINED
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/File Groups/Clients and Tools.fgl b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Clients and Tools.fgl
new file mode 100755
index 00000000000..c081533ca10
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Clients and Tools.fgl
@@ -0,0 +1,34 @@
+[bin]
+file15=C:\mysql\bin\replace.exe
+file16=C:\mysql\bin\winmysqladmin.cnt
+file0=C:\mysql\bin\isamchk.exe
+file17=C:\mysql\bin\WINMYSQLADMIN.HLP
+file1=C:\mysql\bin\myisamchk.exe
+file18=C:\mysql\bin\comp-err.exe
+file2=C:\mysql\bin\myisamlog.exe
+file19=C:\mysql\bin\my_print_defaults.exe
+file3=C:\mysql\bin\myisampack.exe
+file4=C:\mysql\bin\mysql.exe
+file5=C:\mysql\bin\mysqladmin.exe
+file6=C:\mysql\bin\mysqlbinlog.exe
+file7=C:\mysql\bin\mysqlc.exe
+file8=C:\mysql\bin\mysqlcheck.exe
+file9=C:\mysql\bin\mysqldump.exe
+file20=C:\mysql\bin\winmysqladmin.exe
+file21=C:\mysql\bin\myisam_ftdump.exe
+file22=C:\mysql\bin\cygwinb19.dll
+file22=C:\mysql\bin\libmySQL.dll
+file10=C:\mysql\bin\mysqlimport.exe
+fulldirectory=
+file11=C:\mysql\bin\mysqlshow.exe
+file12=C:\mysql\bin\mysqlwatch.exe
+file13=C:\mysql\bin\pack_isam.exe
+file14=C:\mysql\bin\perror.exe
+
+[TopDir]
+SubDir0=bin
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/File Groups/Default.fdf b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Default.fdf
new file mode 100755
index 00000000000..8096a4b74bf
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Default.fdf
@@ -0,0 +1,82 @@
+[FileGroups]
+group0=Development
+group1=Grant Tables
+group2=Servers
+group3=Clients and Tools
+group4=Documentation
+
+[Development]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Grant Tables]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Clients and Tools]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=0000000000000000
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Servers]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Info]
+Type=FileGrp
+Version=1.00.000
+Name=
+
+[Documentation]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/File Groups/Development.fgl b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Development.fgl
new file mode 100755
index 00000000000..e158e597543
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Development.fgl
@@ -0,0 +1,241 @@
+[bench\Data\Wisconsin]
+file0=C:\mysql\bench\Data\Wisconsin\onek.data
+file1=C:\mysql\bench\Data\Wisconsin\tenk.data
+fulldirectory=
+
+[lib\debug]
+file0=C:\mysql\lib\debug\libmySQL.dll
+file1=C:\mysql\lib\debug\libmySQL.lib
+file2=C:\mysql\lib\debug\mysqlclient.lib
+file3=C:\mysql\lib\debug\zlib.lib
+file4=C:\mysql\lib\debug\mysys.lib
+file5=C:\mysql\lib\debug\regex.lib
+file6=C:\mysql\lib\debug\strings.lib
+fulldirectory=
+
+[bench\output]
+fulldirectory=
+
+[examples\libmysqltest]
+file0=C:\mysql\examples\libmysqltest\myTest.c
+file1=C:\mysql\examples\libmysqltest\myTest.dsp
+file2=C:\mysql\examples\libmysqltest\myTest.dsw
+file3=C:\mysql\examples\libmysqltest\myTest.exe
+file4=C:\mysql\examples\libmysqltest\myTest.mak
+file5=C:\mysql\examples\libmysqltest\myTest.ncb
+file6=C:\mysql\examples\libmysqltest\myTest.opt
+file7=C:\mysql\examples\libmysqltest\readme
+fulldirectory=
+
+[include]
+file15=C:\mysql\include\libmysqld.def
+file16=C:\mysql\include\my_alloc.h
+file0=C:\mysql\include\raid.h
+file17=C:\mysql\include\my_getopt.h
+file1=C:\mysql\include\errmsg.h
+file2=C:\mysql\include\Libmysql.def
+file3=C:\mysql\include\m_ctype.h
+file4=C:\mysql\include\m_string.h
+file5=C:\mysql\include\my_list.h
+file6=C:\mysql\include\my_pthread.h
+file7=C:\mysql\include\my_sys.h
+file8=C:\mysql\include\mysql.h
+file9=C:\mysql\include\mysql_com.h
+file10=C:\mysql\include\mysql_version.h
+fulldirectory=
+file11=C:\mysql\include\mysqld_error.h
+file12=C:\mysql\include\dbug.h
+file13=C:\mysql\include\config-win.h
+file14=C:\mysql\include\my_global.h
+file18=C:\mysql\include\typelib.h
+
+[examples]
+SubDir0=examples\libmysqltest
+SubDir1=examples\tests
+fulldirectory=
+
+[lib\opt]
+file0=C:\mysql\lib\opt\libmySQL.dll
+file1=C:\mysql\lib\opt\libmySQL.lib
+file2=C:\mysql\lib\opt\mysqlclient.lib
+file3=C:\mysql\lib\opt\zlib.lib
+file4=C:\mysql\lib\opt\mysys.lib
+file5=C:\mysql\lib\opt\regex.lib
+file6=C:\mysql\lib\opt\strings.lib
+fulldirectory=
+
+[bench\Data]
+SubDir0=bench\Data\ATIS
+SubDir1=bench\Data\Wisconsin
+fulldirectory=
+
+[bench\limits]
+file15=C:\mysql\bench\limits\pg.comment
+file16=C:\mysql\bench\limits\solid.cfg
+file0=C:\mysql\bench\limits\access.cfg
+file17=C:\mysql\bench\limits\solid-nt4.cfg
+file1=C:\mysql\bench\limits\access.comment
+file18=C:\mysql\bench\limits\sybase.cfg
+file2=C:\mysql\bench\limits\Adabas.cfg
+file3=C:\mysql\bench\limits\Adabas.comment
+file4=C:\mysql\bench\limits\Db2.cfg
+file5=C:\mysql\bench\limits\empress.cfg
+file6=C:\mysql\bench\limits\empress.comment
+file7=C:\mysql\bench\limits\Informix.cfg
+file8=C:\mysql\bench\limits\Informix.comment
+file9=C:\mysql\bench\limits\msql.cfg
+file10=C:\mysql\bench\limits\ms-sql.cfg
+fulldirectory=
+file11=C:\mysql\bench\limits\Ms-sql65.cfg
+file12=C:\mysql\bench\limits\mysql.cfg
+file13=C:\mysql\bench\limits\oracle.cfg
+file14=C:\mysql\bench\limits\pg.cfg
+
+[TopDir]
+SubDir0=bench
+SubDir1=examples
+SubDir2=include
+SubDir3=lib
+SubDir4=scripts
+
+[bench]
+file15=C:\mysql\bench\test-create
+file16=C:\mysql\bench\test-insert
+file0=C:\mysql\bench\uname.bat
+file17=C:\mysql\bench\test-select
+file1=C:\mysql\bench\compare-results
+file18=C:\mysql\bench\test-wisconsin
+file2=C:\mysql\bench\copy-db
+file19=C:\mysql\bench\bench-init.pl
+file3=C:\mysql\bench\crash-me
+file4=C:\mysql\bench\example.bat
+file5=C:\mysql\bench\print-limit-table
+file6=C:\mysql\bench\pwd.bat
+file7=C:\mysql\bench\Readme
+SubDir0=bench\Data
+file8=C:\mysql\bench\run.bat
+SubDir1=bench\limits
+file9=C:\mysql\bench\run-all-tests
+SubDir2=bench\output
+file10=C:\mysql\bench\server-cfg
+fulldirectory=
+file11=C:\mysql\bench\test-alter-table
+file12=C:\mysql\bench\test-ATIS
+file13=C:\mysql\bench\test-big-tables
+file14=C:\mysql\bench\test-connect
+
+[examples\tests]
+file15=C:\mysql\examples\tests\lock_test.res
+file16=C:\mysql\examples\tests\mail_to_db.pl
+file0=C:\mysql\examples\tests\unique_users.tst
+file17=C:\mysql\examples\tests\table_types.pl
+file1=C:\mysql\examples\tests\auto_increment.tst
+file18=C:\mysql\examples\tests\test_delayed_insert.pl
+file2=C:\mysql\examples\tests\big_record.pl
+file19=C:\mysql\examples\tests\udf_test
+file3=C:\mysql\examples\tests\big_record.res
+file4=C:\mysql\examples\tests\czech-sorting
+file5=C:\mysql\examples\tests\deadlock-script.pl
+file6=C:\mysql\examples\tests\export.pl
+file7=C:\mysql\examples\tests\fork_test.pl
+file8=C:\mysql\examples\tests\fork2_test.pl
+file9=C:\mysql\examples\tests\fork3_test.pl
+file20=C:\mysql\examples\tests\udf_test.res
+file21=C:\mysql\examples\tests\auto_increment.res
+file10=C:\mysql\examples\tests\function.res
+fulldirectory=
+file11=C:\mysql\examples\tests\function.tst
+file12=C:\mysql\examples\tests\grant.pl
+file13=C:\mysql\examples\tests\grant.res
+file14=C:\mysql\examples\tests\lock_test.pl
+
+[bench\Data\ATIS]
+file26=C:\mysql\bench\Data\ATIS\stop1.txt
+file15=C:\mysql\bench\Data\ATIS\flight_class.txt
+file27=C:\mysql\bench\Data\ATIS\time_interval.txt
+file16=C:\mysql\bench\Data\ATIS\flight_day.txt
+file0=C:\mysql\bench\Data\ATIS\transport.txt
+file28=C:\mysql\bench\Data\ATIS\time_zone.txt
+file17=C:\mysql\bench\Data\ATIS\flight_fare.txt
+file1=C:\mysql\bench\Data\ATIS\airline.txt
+file29=C:\mysql\bench\Data\ATIS\aircraft.txt
+file18=C:\mysql\bench\Data\ATIS\food_service.txt
+file2=C:\mysql\bench\Data\ATIS\airport.txt
+file19=C:\mysql\bench\Data\ATIS\ground_service.txt
+file3=C:\mysql\bench\Data\ATIS\airport_service.txt
+file4=C:\mysql\bench\Data\ATIS\city.txt
+file5=C:\mysql\bench\Data\ATIS\class_of_service.txt
+file6=C:\mysql\bench\Data\ATIS\code_description.txt
+file7=C:\mysql\bench\Data\ATIS\compound_class.txt
+file8=C:\mysql\bench\Data\ATIS\connect_leg.txt
+file9=C:\mysql\bench\Data\ATIS\date_day.txt
+file20=C:\mysql\bench\Data\ATIS\month_name.txt
+file21=C:\mysql\bench\Data\ATIS\restrict_carrier.txt
+file10=C:\mysql\bench\Data\ATIS\day_name.txt
+fulldirectory=
+file22=C:\mysql\bench\Data\ATIS\restrict_class.txt
+file11=C:\mysql\bench\Data\ATIS\dual_carrier.txt
+file23=C:\mysql\bench\Data\ATIS\restriction.txt
+file12=C:\mysql\bench\Data\ATIS\fare.txt
+file24=C:\mysql\bench\Data\ATIS\state.txt
+file13=C:\mysql\bench\Data\ATIS\fconnection.txt
+file25=C:\mysql\bench\Data\ATIS\stop.txt
+file14=C:\mysql\bench\Data\ATIS\flight.txt
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[scripts]
+file37=C:\mysql\scripts\mysqld_safe-watch.sh
+file26=C:\mysql\scripts\mysql_zap
+file15=C:\mysql\scripts\mysql_fix_privilege_tables
+file38=C:\mysql\scripts\mysqldumpslow
+file27=C:\mysql\scripts\mysql_zap.sh
+file16=C:\mysql\scripts\mysql_fix_privilege_tables.sh
+file0=C:\mysql\scripts\Readme
+file39=C:\mysql\scripts\mysqldumpslow.sh
+file28=C:\mysql\scripts\mysqlaccess
+file17=C:\mysql\scripts\mysql_install_db
+file1=C:\mysql\scripts\make_binary_distribution.sh
+file29=C:\mysql\scripts\mysqlaccess.conf
+file18=C:\mysql\scripts\mysql_install_db.sh
+file2=C:\mysql\scripts\msql2mysql
+file19=C:\mysql\scripts\mysql_secure_installation
+file3=C:\mysql\scripts\msql2mysql.sh
+file4=C:\mysql\scripts\mysql_config
+file5=C:\mysql\scripts\mysql_config.sh
+file6=C:\mysql\scripts\mysql_convert_table_format
+file7=C:\mysql\scripts\mysql_convert_table_format.sh
+file40=C:\mysql\scripts\mysqlhotcopy
+file8=C:\mysql\scripts\mysql_explain_log
+file41=C:\mysql\scripts\mysqlhotcopy.pl
+file30=C:\mysql\scripts\mysqlaccess.sh
+file9=C:\mysql\scripts\mysql_explain_log.sh
+file42=C:\mysql\scripts\mysqlhotcopy.sh
+file31=C:\mysql\scripts\mysqlbug
+file20=C:\mysql\scripts\mysql_secure_installation.sh
+file43=C:\mysql\scripts\make_binary_distribution
+file32=C:\mysql\scripts\mysqlbug.sh
+file21=C:\mysql\scripts\mysql_setpermission
+file10=C:\mysql\scripts\mysql_find_rows
+fulldirectory=
+file44=C:\mysql\scripts\mysql_fix_privilege_tables.sql
+file33=C:\mysql\scripts\mysqld_multi
+file22=C:\mysql\scripts\mysql_setpermission.pl
+file11=C:\mysql\scripts\mysql_find_rows.pl
+file34=C:\mysql\scripts\mysqld_multi.sh
+file23=C:\mysql\scripts\mysql_setpermission.sh
+file12=C:\mysql\scripts\mysql_find_rows.sh
+file35=C:\mysql\scripts\mysqld_safe
+file24=C:\mysql\scripts\mysql_tableinfo
+file13=C:\mysql\scripts\mysql_fix_extensions
+file36=C:\mysql\scripts\mysqld_safe.sh
+file25=C:\mysql\scripts\mysql_tableinfo.sh
+file14=C:\mysql\scripts\mysql_fix_extensions.sh
+
+[lib]
+SubDir0=lib\debug
+SubDir1=lib\opt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/File Groups/Documentation.fgl b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Documentation.fgl
new file mode 100755
index 00000000000..2fe90a4a3f8
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Documentation.fgl
@@ -0,0 +1,100 @@
+[Docs\Flags]
+file59=C:\mysql\Docs\Flags\romania.gif
+file48=C:\mysql\Docs\Flags\kroatia.eps
+file37=C:\mysql\Docs\Flags\iceland.gif
+file26=C:\mysql\Docs\Flags\france.eps
+file15=C:\mysql\Docs\Flags\china.gif
+file49=C:\mysql\Docs\Flags\kroatia.gif
+file38=C:\mysql\Docs\Flags\ireland.eps
+file27=C:\mysql\Docs\Flags\france.gif
+file16=C:\mysql\Docs\Flags\croatia.eps
+file0=C:\mysql\Docs\Flags\usa.gif
+file39=C:\mysql\Docs\Flags\ireland.gif
+file28=C:\mysql\Docs\Flags\germany.eps
+file17=C:\mysql\Docs\Flags\croatia.gif
+file1=C:\mysql\Docs\Flags\argentina.gif
+file29=C:\mysql\Docs\Flags\germany.gif
+file18=C:\mysql\Docs\Flags\czech-republic.eps
+file2=C:\mysql\Docs\Flags\australia.eps
+file19=C:\mysql\Docs\Flags\czech-republic.gif
+file3=C:\mysql\Docs\Flags\australia.gif
+file80=C:\mysql\Docs\Flags\usa.eps
+file4=C:\mysql\Docs\Flags\austria.eps
+file81=C:\mysql\Docs\Flags\argentina.eps
+file70=C:\mysql\Docs\Flags\spain.eps
+file5=C:\mysql\Docs\Flags\austria.gif
+file71=C:\mysql\Docs\Flags\spain.gif
+file60=C:\mysql\Docs\Flags\russia.eps
+file6=C:\mysql\Docs\Flags\brazil.eps
+file72=C:\mysql\Docs\Flags\sweden.eps
+file61=C:\mysql\Docs\Flags\russia.gif
+file50=C:\mysql\Docs\Flags\latvia.eps
+file7=C:\mysql\Docs\Flags\brazil.gif
+file73=C:\mysql\Docs\Flags\sweden.gif
+file62=C:\mysql\Docs\Flags\singapore.eps
+file51=C:\mysql\Docs\Flags\latvia.gif
+file40=C:\mysql\Docs\Flags\island.eps
+file8=C:\mysql\Docs\Flags\bulgaria.eps
+file74=C:\mysql\Docs\Flags\switzerland.eps
+file63=C:\mysql\Docs\Flags\singapore.gif
+file52=C:\mysql\Docs\Flags\netherlands.eps
+file41=C:\mysql\Docs\Flags\island.gif
+file30=C:\mysql\Docs\Flags\great-britain.eps
+file9=C:\mysql\Docs\Flags\bulgaria.gif
+file75=C:\mysql\Docs\Flags\switzerland.gif
+file64=C:\mysql\Docs\Flags\south-africa.eps
+file53=C:\mysql\Docs\Flags\netherlands.gif
+file42=C:\mysql\Docs\Flags\israel.eps
+file31=C:\mysql\Docs\Flags\great-britain.gif
+file20=C:\mysql\Docs\Flags\denmark.eps
+file76=C:\mysql\Docs\Flags\taiwan.eps
+file65=C:\mysql\Docs\Flags\south-africa.gif
+file54=C:\mysql\Docs\Flags\poland.eps
+file43=C:\mysql\Docs\Flags\israel.gif
+file32=C:\mysql\Docs\Flags\greece.eps
+file21=C:\mysql\Docs\Flags\denmark.gif
+file10=C:\mysql\Docs\Flags\canada.eps
+fulldirectory=
+file77=C:\mysql\Docs\Flags\taiwan.gif
+file66=C:\mysql\Docs\Flags\south-africa1.eps
+file55=C:\mysql\Docs\Flags\poland.gif
+file44=C:\mysql\Docs\Flags\italy.eps
+file33=C:\mysql\Docs\Flags\greece.gif
+file22=C:\mysql\Docs\Flags\estonia.eps
+file11=C:\mysql\Docs\Flags\canada.gif
+file78=C:\mysql\Docs\Flags\ukraine.eps
+file67=C:\mysql\Docs\Flags\south-africa1.gif
+file56=C:\mysql\Docs\Flags\portugal.eps
+file45=C:\mysql\Docs\Flags\italy.gif
+file34=C:\mysql\Docs\Flags\hungary.eps
+file23=C:\mysql\Docs\Flags\estonia.gif
+file12=C:\mysql\Docs\Flags\chile.eps
+file79=C:\mysql\Docs\Flags\ukraine.gif
+file68=C:\mysql\Docs\Flags\south-korea.eps
+file57=C:\mysql\Docs\Flags\portugal.gif
+file46=C:\mysql\Docs\Flags\japan.eps
+file35=C:\mysql\Docs\Flags\hungary.gif
+file24=C:\mysql\Docs\Flags\finland.eps
+file13=C:\mysql\Docs\Flags\chile.gif
+file69=C:\mysql\Docs\Flags\south-korea.gif
+file58=C:\mysql\Docs\Flags\romania.eps
+file47=C:\mysql\Docs\Flags\japan.gif
+file36=C:\mysql\Docs\Flags\iceland.eps
+file25=C:\mysql\Docs\Flags\finland.gif
+file14=C:\mysql\Docs\Flags\china.eps
+
+[Docs]
+file0=C:\mysql\Docs\manual_toc.html
+file1=C:\mysql\Docs\manual.html
+file2=C:\mysql\Docs\manual.txt
+file3=C:\mysql\Docs\MySQLEULA.txt
+SubDir0=Docs\Flags
+fulldirectory=
+
+[TopDir]
+SubDir0=Docs
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/File Groups/Grant Tables.fgl b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Grant Tables.fgl
new file mode 100755
index 00000000000..e5e6c82c1ea
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Grant Tables.fgl
@@ -0,0 +1,52 @@
+[data\test]
+fulldirectory=
+
+[data\mysql]
+file0=C:\mysql\data\mysql\columns_priv.frm
+file1=C:\mysql\data\mysql\columns_priv.MYD
+file2=C:\mysql\data\mysql\columns_priv.MYI
+file3=C:\mysql\data\mysql\db.frm
+file4=C:\mysql\data\mysql\db.MYD
+file5=C:\mysql\data\mysql\db.MYI
+file6=C:\mysql\data\mysql\host.frm
+file7=C:\mysql\data\mysql\host.MYD
+file8=C:\mysql\data\mysql\host.MYI
+file9=C:\mysql\data\mysql\tables_priv.frm
+file10=C:\mysql\data\mysql\tables_priv.MYD
+fulldirectory=
+file11=C:\mysql\data\mysql\tables_priv.MYI
+file12=C:\mysql\data\mysql\user.frm
+file13=C:\mysql\data\mysql\user.MYD
+file14=C:\mysql\data\mysql\user.MYI
+file15=C:\mysql\data\mysql\func.frm
+file16=C:\mysql\data\mysql\func.MYD
+file17=C:\mysql\data\mysql\func.MYI
+file18=C:\mysql\data\mysql\time_zone.MYD
+file19=C:\mysql\data\mysql\time_zone.MYI
+file20=C:\mysql\data\mysql\time_zone.frm
+file21=C:\mysql\data\mysql\time_zone_leap_second.MYD
+file22=C:\mysql\data\mysql\time_zone_leap_second.MYI
+file23=C:\mysql\data\mysql\time_zone_leap_second.frm
+file24=C:\mysql\data\mysql\time_zone_name.MYD
+file25=C:\mysql\data\mysql\time_zone_name.MYI
+file26=C:\mysql\data\mysql\time_zone_name.frm
+file27=C:\mysql\data\mysql\time_zone_transition.MYD
+file28=C:\mysql\data\mysql\time_zone_transition.MYI
+file29=C:\mysql\data\mysql\time_zone_transition.frm
+file30=C:\mysql\data\mysql\time_zone_transition_type.MYD
+file31=C:\mysql\data\mysql\time_zone_transition_type.MYI
+file32=C:\mysql\data\mysql\time_zone_transition_type.frm
+
+
+[TopDir]
+SubDir0=data
+
+[data]
+SubDir0=data\mysql
+SubDir1=data\test
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/File Groups/Servers.fgl b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Servers.fgl
new file mode 100755
index 00000000000..b51c37f8db2
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/File Groups/Servers.fgl
@@ -0,0 +1,251 @@
+[Embedded\Static\release]
+file0=C:\mysql\embedded\Static\release\test_stc.dsp
+file1=C:\mysql\embedded\Static\release\ReadMe.txt
+file2=C:\mysql\embedded\Static\release\StdAfx.cpp
+file3=C:\mysql\embedded\Static\release\StdAfx.h
+file4=C:\mysql\embedded\Static\release\test_stc.cpp
+file5=C:\mysql\embedded\Static\release\mysqlserver.lib
+fulldirectory=
+
+[share\polish]
+file0=C:\mysql\share\polish\errmsg.sys
+file1=C:\mysql\share\polish\errmsg.txt
+fulldirectory=
+
+[share\dutch]
+file0=C:\mysql\share\dutch\errmsg.sys
+file1=C:\mysql\share\dutch\errmsg.txt
+fulldirectory=
+
+[share\spanish]
+file0=C:\mysql\share\spanish\errmsg.sys
+file1=C:\mysql\share\spanish\errmsg.txt
+fulldirectory=
+
+[share\english]
+file0=C:\mysql\share\english\errmsg.sys
+file1=C:\mysql\share\english\errmsg.txt
+fulldirectory=
+
+[bin]
+file0=C:\mysql\bin\mysqld-opt.exe
+file1=C:\mysql\bin\mysqld-nt.exe
+file2=C:\mysql\bin\mysqld.exe
+file3=C:\mysql\bin\cygwinb19.dll
+file4=C:\mysql\bin\libmySQL.dll
+fulldirectory=
+
+[share\korean]
+file0=C:\mysql\share\korean\errmsg.sys
+file1=C:\mysql\share\korean\errmsg.txt
+fulldirectory=
+
+[share\charsets]
+file0=C:\mysql\share\charsets\cp1250.xml
+file1=C:\mysql\share\charsets\cp1251.conf
+file2=C:\mysql\share\charsets\cp1251.xml
+file3=C:\mysql\share\charsets\cp1256.xml
+file1=C:\mysql\share\charsets\cp1257.conf
+file4=C:\mysql\share\charsets\cp1257.xml
+file5=C:\mysql\share\charsets\cp850.xml
+file6=C:\mysql\share\charsets\cp852.xml
+file7=C:\mysql\share\charsets\cp866.xml
+file8=C:\mysql\share\charsets\croat.conf
+file9=C:\mysql\share\charsets\danish.conf
+file10=C:\mysql\share\charsets\dec8.conf
+file10=C:\mysql\share\charsets\dec8.xml
+file11=C:\mysql\share\charsets\dos.conf
+file12=C:\mysql\share\charsets\estonia.conf
+file13=C:\mysql\share\charsets\geostd8.xml
+file14=C:\mysql\share\charsets\german1.conf
+file15=C:\mysql\share\charsets\greek.xml
+file16=C:\mysql\share\charsets\greek.conf
+file17=C:\mysql\share\charsets\hebrew.xml
+file18=C:\mysql\share\charsets\hebrew.conf
+file19=C:\mysql\share\charsets\hp8.xml
+file20=C:\mysql\share\charsets\hp8.conf
+file21=C:\mysql\share\charsets\hungarian.conf
+file22=C:\mysql\share\charsets\keybcs2.xml
+file23=C:\mysql\share\charsets\koi8_ru.conf
+file24=C:\mysql\share\charsets\koi8_ukr.conf
+file25=C:\mysql\share\charsets\koi8r.xml
+file26=C:\mysql\share\charsets\koi8u.xml
+file27=C:\mysql\share\charsets\latin1.conf
+file28=C:\mysql\share\charsets\latin1.xml
+file29=C:\mysql\share\charsets\latin2.conf
+file30=C:\mysql\share\charsets\latin2.xml
+file31=C:\mysql\share\charsets\latin5.conf
+file32=C:\mysql\share\charsets\latin5.xml
+file33=C:\mysql\share\charsets\latin7.xml
+file34=C:\mysql\share\charsets\macce.xml
+file35=C:\mysql\share\charsets\macroman.xml
+file36=C:\mysql\share\charsets\swe7.conf
+file37=C:\mysql\share\charsets\swe7.xml
+file38=C:\mysql\share\charsets\usa7.conf
+file39=C:\mysql\share\charsets\win1250.conf
+file40=C:\mysql\share\charsets\win1251ukr.conf
+file41=C:\mysql\share\charsets\win1251.conf
+file42=C:\mysql\share\charsets\Index
+file43=C:\mysql\share\charsets\Index.xml
+file44=C:\mysql\share\charsets\Readme
+file45=C:\mysql\share\charsets\languages.html
+fulldirectory=
+
+[Embedded\DLL\debug]
+file0=C:\mysql\embedded\DLL\debug\libmysqld.dll
+file1=C:\mysql\embedded\DLL\debug\libmysqld.exp
+file2=C:\mysql\embedded\DLL\debug\libmysqld.lib
+fulldirectory=
+
+[Embedded]
+file0=C:\mysql\embedded\embedded.dsw
+SubDir0=Embedded\DLL
+SubDir1=Embedded\Static
+fulldirectory=
+
+[share\ukrainian]
+file0=C:\mysql\share\ukrainian\errmsg.sys
+file1=C:\mysql\share\ukrainian\errmsg.txt
+fulldirectory=
+
+[share\hungarian]
+file0=C:\mysql\share\hungarian\errmsg.sys
+file1=C:\mysql\share\hungarian\errmsg.txt
+fulldirectory=
+
+[share\german]
+file0=C:\mysql\share\german\errmsg.sys
+file1=C:\mysql\share\german\errmsg.txt
+fulldirectory=
+
+[share\portuguese]
+file0=C:\mysql\share\portuguese\errmsg.sys
+file1=C:\mysql\share\portuguese\errmsg.txt
+fulldirectory=
+
+[share\estonian]
+file0=C:\mysql\share\estonian\errmsg.sys
+file1=C:\mysql\share\estonian\errmsg.txt
+fulldirectory=
+
+[share\romanian]
+file0=C:\mysql\share\romanian\errmsg.sys
+file1=C:\mysql\share\romanian\errmsg.txt
+fulldirectory=
+
+[share\french]
+file0=C:\mysql\share\french\errmsg.sys
+file1=C:\mysql\share\french\errmsg.txt
+fulldirectory=
+
+[share\swedish]
+file0=C:\mysql\share\swedish\errmsg.sys
+file1=C:\mysql\share\swedish\errmsg.txt
+fulldirectory=
+
+[share\slovak]
+file0=C:\mysql\share\slovak\errmsg.sys
+file1=C:\mysql\share\slovak\errmsg.txt
+fulldirectory=
+
+[share\greek]
+file0=C:\mysql\share\greek\errmsg.sys
+file1=C:\mysql\share\greek\errmsg.txt
+fulldirectory=
+
+[TopDir]
+file0=C:\mysql\my-huge.cnf
+file1=C:\mysql\my-large.cnf
+file2=C:\mysql\my-medium.cnf
+file3=C:\mysql\my-small.cnf
+file4=C:\mysql\MySQLEULA.txt
+file5=C:\mysql\README.txt
+SubDir0=bin
+SubDir1=share
+SubDir2=Embedded
+
+[share]
+SubDir8=share\hungarian
+SubDir9=share\charsets
+SubDir20=share\spanish
+SubDir21=share\swedish
+SubDir10=share\italian
+SubDir22=share\ukrainian
+SubDir11=share\japanese
+SubDir12=share\korean
+SubDir13=share\norwegian
+SubDir14=share\norwegian-ny
+SubDir15=share\polish
+SubDir16=share\portuguese
+SubDir0=share\czech
+SubDir17=share\romanian
+SubDir1=share\danish
+SubDir18=share\russian
+SubDir2=share\dutch
+SubDir19=share\slovak
+SubDir3=share\english
+fulldirectory=
+SubDir4=share\estonian
+SubDir5=share\french
+SubDir6=share\german
+SubDir7=share\greek
+
+[share\norwegian-ny]
+file0=C:\mysql\share\norwegian-ny\errmsg.sys
+file1=C:\mysql\share\norwegian-ny\errmsg.txt
+fulldirectory=
+
+[Embedded\DLL]
+file0=C:\mysql\embedded\DLL\test_dll.dsp
+file1=C:\mysql\embedded\DLL\StdAfx.h
+file2=C:\mysql\embedded\DLL\test_dll.cpp
+file3=C:\mysql\embedded\DLL\StdAfx.cpp
+SubDir0=Embedded\DLL\debug
+SubDir1=Embedded\DLL\release
+fulldirectory=
+
+[Embedded\Static]
+SubDir0=Embedded\Static\release
+fulldirectory=
+
+[Embedded\DLL\release]
+file0=C:\mysql\embedded\DLL\release\libmysqld.dll
+file1=C:\mysql\embedded\DLL\release\libmysqld.exp
+file2=C:\mysql\embedded\DLL\release\libmysqld.lib
+file3=C:\mysql\embedded\DLL\release\mysql-server.exe
+fulldirectory=
+
+[share\danish]
+file0=C:\mysql\share\danish\errmsg.sys
+file1=C:\mysql\share\danish\errmsg.txt
+fulldirectory=
+
+[share\czech]
+file0=C:\mysql\share\czech\errmsg.sys
+file1=C:\mysql\share\czech\errmsg.txt
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[share\russian]
+file0=C:\mysql\share\russian\errmsg.sys
+file1=C:\mysql\share\russian\errmsg.txt
+fulldirectory=
+
+[share\norwegian]
+file0=C:\mysql\share\norwegian\errmsg.sys
+file1=C:\mysql\share\norwegian\errmsg.txt
+fulldirectory=
+
+[share\japanese]
+file0=C:\mysql\share\japanese\errmsg.sys
+file1=C:\mysql\share\japanese\errmsg.txt
+fulldirectory=
+
+[share\italian]
+file0=C:\mysql\share\italian\errmsg.sys
+file1=C:\mysql\share\italian\errmsg.txt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.dbg b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.dbg
new file mode 100755
index 00000000000..0c6d4e6b708
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.dbg
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.ino b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.ino
new file mode 100755
index 00000000000..204d8ea0f36
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.ino
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.ins b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.ins
new file mode 100755
index 00000000000..759009b5c84
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.ins
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.obs b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.obs
new file mode 100755
index 00000000000..5fcfcb62c4e
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.obs
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.rul.old b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.rul.old
new file mode 100755
index 00000000000..df143b493c4
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Script Files/Setup.rul.old
@@ -0,0 +1,640 @@
+
+////////////////////////////////////////////////////////////////////////////////
+//
+// IIIIIII SSSSSS
+// II SS InstallShield (R)
+// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
+// II SS (c) 1990-1996, InstallShield Corporation
+// IIIIIII SSSSSS All Rights Reserved.
+//
+//
+// This code is generated as a starting setup template. You should
+// modify it to provide all necessary steps for your setup.
+//
+//
+// File Name: Setup.rul
+//
+// Description: InstallShield script
+//
+// Comments: This template script performs a basic setup on a
+// Windows 95 or Windows NT 4.0 platform. With minor
+// modifications, this template can be adapted to create
+// new, customized setups.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+
+ // Include header file
+#include "sdlang.h"
+#include "sddialog.h"
+
+////////////////////// string defines ////////////////////////////
+
+#define UNINST_LOGFILE_NAME "Uninst.isu"
+
+//////////////////// installation declarations ///////////////////
+
+ // ----- DLL prototypes -----
+
+
+ // your DLL prototypes
+
+
+ // ---- script prototypes -----
+
+ // generated
+ prototype ShowDialogs();
+ prototype MoveFileData();
+ prototype HandleMoveDataError( NUMBER );
+ prototype ProcessBeforeDataMove();
+ prototype ProcessAfterDataMove();
+ prototype SetupRegistry();
+ prototype SetupFolders();
+ prototype CleanUpInstall();
+ prototype SetupInstall();
+ prototype SetupScreen();
+ prototype CheckRequirements();
+ prototype DialogShowSdWelcome();
+ prototype DialogShowSdShowInfoList();
+ prototype DialogShowSdAskDestPath();
+ prototype DialogShowSdSetupType();
+ prototype DialogShowSdComponentDialog2();
+ prototype DialogShowSdFinishReboot();
+
+ // your prototypes
+
+
+ // ----- global variables ------
+
+ // generated
+ BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
+ STRING svDir;
+ STRING svName, svCompany, svSerial;
+ STRING szAppPath;
+ STRING svSetupType;
+
+
+ // your global variables
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// MAIN PROGRAM
+//
+// The setup begins here by hiding the visible setup
+// window. This is done to allow all the titles, images, etc. to
+// be established before showing the main window. The following
+// logic then performs the setup in a series of steps.
+//
+///////////////////////////////////////////////////////////////////////////////
+program
+ Disable( BACKGROUND );
+
+ CheckRequirements();
+
+ SetupInstall();
+
+ SetupScreen();
+
+ if (ShowDialogs()<0) goto end_install;
+
+ if (ProcessBeforeDataMove()<0) goto end_install;
+
+ if (MoveFileData()<0) goto end_install;
+
+ if (ProcessAfterDataMove()<0) goto end_install;
+
+ if (SetupRegistry()<0) goto end_install;
+
+ if (SetupFolders()<0) goto end_install;
+
+
+ end_install:
+
+ CleanUpInstall();
+
+ // If an unrecoverable error occurred, clean up the partial installation.
+ // Otherwise, exit normally.
+
+ if (bInstallAborted) then
+ abort;
+ endif;
+
+endprogram
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ShowDialogs //
+// //
+// Purpose: This function manages the display and navigation //
+// the standard dialogs that exist in a setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ShowDialogs()
+ NUMBER nResult;
+ begin
+
+ Dlg_Start:
+ // beginning of dialogs label
+
+ Dlg_SdWelcome:
+ nResult = DialogShowSdWelcome();
+ if (nResult = BACK) goto Dlg_Start;
+
+ Dlg_SdShowInfoList:
+ nResult = DialogShowSdShowInfoList();
+ if (nResult = BACK) goto Dlg_SdWelcome;
+
+ Dlg_SdAskDestPath:
+ nResult = DialogShowSdAskDestPath();
+ if (nResult = BACK) goto Dlg_SdShowInfoList;
+
+ Dlg_SdSetupType:
+ nResult = DialogShowSdSetupType();
+ if (nResult = BACK) goto Dlg_SdAskDestPath;
+
+ Dlg_SdComponentDialog2:
+ if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
+ goto Dlg_SdSetupType;
+ endif;
+ nResult = DialogShowSdComponentDialog2();
+ if (nResult = BACK) goto Dlg_SdSetupType;
+
+ return 0;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessBeforeDataMove //
+// //
+// Purpose: This function performs any necessary operations prior to the //
+// actual data move operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessBeforeDataMove()
+ STRING svLogFile;
+ NUMBER nResult;
+ begin
+
+ InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );
+
+ svLogFile = UNINST_LOGFILE_NAME;
+
+ nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
+ if (nResult < 0) then
+ MessageBox( @ERROR_UNINSTSETUP, WARNING );
+ endif;
+
+ szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir
+
+ if ((bIs32BitSetup) && (bIsShellExplorer)) then
+ RegDBSetItem( REGDB_APPPATH, szAppPath );
+ RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
+ RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
+ endif;
+
+ // TODO : update any items you want to process before moving the data
+ //
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: MoveFileData //
+// //
+// Purpose: This function handles the data movement for //
+// the setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function MoveFileData()
+ NUMBER nResult, nDisk;
+ begin
+
+ nDisk = 1;
+ SetStatusWindow( 0, "" );
+ Disable( DIALOGCACHE );
+ Enable( STATUS );
+ StatusUpdate( ON, 100 );
+ nResult = ComponentMoveData( MEDIA, nDisk, 0 );
+
+ HandleMoveDataError( nResult );
+
+ Disable( STATUS );
+
+ return nResult;
+
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: HandleMoveDataError //
+// //
+// Purpose: This function handles the error (if any) during the move data //
+// operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function HandleMoveDataError( nResult )
+ STRING szErrMsg, svComponent , svFileGroup , svFile;
+ begin
+
+ svComponent = "";
+ svFileGroup = "";
+ svFile = "";
+
+ switch (nResult)
+ case 0:
+ return 0;
+ default:
+ ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
+ szErrMsg = @ERROR_MOVEDATA + "\n\n" +
+ @ERROR_COMPONENT + " " + svComponent + "\n" +
+ @ERROR_FILEGROUP + " " + svFileGroup + "\n" +
+ @ERROR_FILE + " " + svFile;
+ SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
+ bInstallAborted = TRUE;
+ return nResult;
+ endswitch;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessAfterDataMove //
+// //
+// Purpose: This function performs any necessary operations needed after //
+// all data has been moved. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessAfterDataMove()
+ begin
+
+ // TODO : update self-registered files and other processes that
+ // should be performed after the data has been moved.
+
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupRegistry //
+// //
+// Purpose: This function makes the registry entries for this setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupRegistry()
+ NUMBER nResult;
+
+ begin
+
+ // TODO : Add all your registry entry keys here
+ //
+ //
+ // RegDBCreateKeyEx, RegDBSetKeyValueEx....
+ //
+
+ nResult = CreateRegistrySet( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// Function: SetupFolders
+//
+// Purpose: This function creates all the folders and shortcuts for the
+// setup. This includes program groups and items for Windows 3.1.
+//
+///////////////////////////////////////////////////////////////////////////////
+function SetupFolders()
+ NUMBER nResult;
+
+ begin
+
+
+ // TODO : Add all your folder (program group) along with shortcuts (program items)
+ //
+ //
+ // CreateProgramFolder, AddFolderIcon....
+ //
+
+ nResult = CreateShellObjects( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CleanUpInstall //
+// //
+// Purpose: This cleans up the setup. Anything that should //
+// be released or deleted at the end of the setup should //
+// be done here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CleanUpInstall()
+ begin
+
+
+ if (bInstallAborted) then
+ return 0;
+ endif;
+
+ DialogShowSdFinishReboot();
+
+ if (BATCH_INSTALL) then // ensure locked files are properly written
+ CommitSharedFiles(0);
+ endif;
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupInstall //
+// //
+// Purpose: This will setup the installation. Any general initialization //
+// needed for the installation should be performed here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupInstall()
+ begin
+
+ Enable( CORECOMPONENTHANDLING );
+
+ bInstallAborted = FALSE;
+
+ if (bIs32BitSetup) then
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
+ else
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
+ endif;
+
+ TARGETDIR = svDir;
+
+ SdProductName( @PRODUCT_NAME );
+
+ Enable( DIALOGCACHE );
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupScreen //
+// //
+// Purpose: This function establishes the screen look. This includes //
+// colors, fonts, and text to be displayed. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupScreen()
+ begin
+
+ Enable( FULLWINDOWMODE );
+ Enable( INDVFILESTATUS );
+ SetTitle( @TITLE_MAIN, 24, WHITE );
+
+ SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.
+
+ Enable( BACKGROUND );
+
+ Delay( 1 );
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CheckRequirements //
+// //
+// Purpose: This function checks all minimum requirements for the //
+// application being installed. If any fail, then the user //
+// is informed and the setup is terminated. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CheckRequirements()
+ NUMBER nvDx, nvDy, nvResult;
+ STRING svResult;
+
+ begin
+
+ bWinNT = FALSE;
+ bIsShellExplorer = FALSE;
+
+ // Check screen resolution.
+ GetExtents( nvDx, nvDy );
+
+ if (nvDy < 480) then
+ MessageBox( @ERROR_VGARESOLUTION, WARNING );
+ abort;
+ endif;
+
+ // set 'setup' operation mode
+ bIs32BitSetup = TRUE;
+ GetSystemInfo( ISTYPE, nvResult, svResult );
+ if (nvResult = 16) then
+ bIs32BitSetup = FALSE; // running 16-bit setup
+ return 0; // no additional information required
+ endif;
+
+ // --- 32-bit testing after this point ---
+
+ // Determine the target system's operating system.
+ GetSystemInfo( OS, nvResult, svResult );
+
+ if (nvResult = IS_WINDOWSNT) then
+ // Running Windows NT.
+ bWinNT = TRUE;
+
+ // Check to see if the shell being used is EXPLORER shell.
+ if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
+ if (nvResult >= 4) then
+ bIsShellExplorer = TRUE;
+ endif;
+ endif;
+
+ elseif (nvResult = IS_WINDOWS95 ) then
+ bIsShellExplorer = TRUE;
+
+ endif;
+
+end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdWelcome //
+// //
+// Purpose: This function handles the standard welcome dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdWelcome()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdWelcome( szTitle, szMsg );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdShowInfoList //
+// //
+// Purpose: This function displays the general information list dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdShowInfoList()
+ NUMBER nResult;
+ LIST list;
+ STRING szTitle, szMsg, szFile;
+ begin
+
+ szFile = SUPPORTDIR ^ "infolist.txt";
+
+ list = ListCreate( STRINGLIST );
+ ListReadFromFile( list, szFile );
+ szTitle = "";
+ szMsg = " ";
+ nResult = SdShowInfoList( szTitle, szMsg, list );
+
+ ListDestroy( list );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdAskDestPath //
+// //
+// Purpose: This function asks the user for the destination directory. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdAskDestPath()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );
+
+ TARGETDIR = svDir;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdSetupType //
+// //
+// Purpose: This function displays the standard setup type dialog. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdSetupType()
+ NUMBER nResult, nType;
+ STRING szTitle, szMsg;
+ begin
+
+ switch (svSetupType)
+ case "Typical":
+ nType = TYPICAL;
+ case "Custom":
+ nType = CUSTOM;
+ case "Compact":
+ nType = COMPACT;
+ case "":
+ svSetupType = "Typical";
+ nType = TYPICAL;
+ endswitch;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SetupType( szTitle, szMsg, "", nType, 0 );
+
+ switch (nResult)
+ case COMPACT:
+ svSetupType = "Compact";
+ case TYPICAL:
+ svSetupType = "Typical";
+ case CUSTOM:
+ svSetupType = "Custom";
+ endswitch;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdComponentDialog2 //
+// //
+// Purpose: This function displays the custom component dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdComponentDialog2()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ if ((svSetupType != "Custom") && (svSetupType != "")) then
+ return 0;
+ endif;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdFinishReboot //
+// //
+// Purpose: This function will show the last dialog of the product. //
+// It will allow the user to reboot and/or show some readme text. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdFinishReboot()
+ NUMBER nResult, nDefOptions;
+ STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
+ NUMBER bOpt1, bOpt2;
+ begin
+
+ if (!BATCH_INSTALL) then
+ bOpt1 = FALSE;
+ bOpt2 = FALSE;
+ szMsg1 = "";
+ szMsg2 = "";
+ szOption1 = "";
+ szOption2 = "";
+ nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
+ return 0;
+ endif;
+
+ nDefOptions = SYS_BOOTMACHINE;
+ szTitle = "";
+ szMsg1 = "";
+ szMsg2 = "";
+ nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );
+
+ return nResult;
+ end;
+
+ // --- include script file section ---
+
+#include "sddialog.rul"
+
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Script Files/setup.rul b/VC++Files/InstallShield/4.1.XX-classic/Script Files/setup.rul
new file mode 100755
index 00000000000..73d61114075
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Script Files/setup.rul
@@ -0,0 +1,641 @@
+
+////////////////////////////////////////////////////////////////////////////////
+//
+// IIIIIII SSSSSS
+// II SS InstallShield (R)
+// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
+// II SS (c) 1990-1996, InstallShield Corporation
+// IIIIIII SSSSSS All Rights Reserved.
+//
+//
+// This code is generated as a starting setup template. You should
+// modify it to provide all necessary steps for your setup.
+//
+//
+// File Name: Setup.rul
+//
+// Description: InstallShield script
+//
+// Comments: This template script performs a basic setup on a
+// Windows 95 or Windows NT 4.0 platform. With minor
+// modifications, this template can be adapted to create
+// new, customized setups.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+
+ // Include header file
+#include "sdlang.h"
+#include "sddialog.h"
+
+////////////////////// string defines ////////////////////////////
+
+#define UNINST_LOGFILE_NAME "Uninst.isu"
+
+//////////////////// installation declarations ///////////////////
+
+ // ----- DLL prototypes -----
+
+
+ // your DLL prototypes
+
+
+ // ---- script prototypes -----
+
+ // generated
+ prototype ShowDialogs();
+ prototype MoveFileData();
+ prototype HandleMoveDataError( NUMBER );
+ prototype ProcessBeforeDataMove();
+ prototype ProcessAfterDataMove();
+ prototype SetupRegistry();
+ prototype SetupFolders();
+ prototype CleanUpInstall();
+ prototype SetupInstall();
+ prototype SetupScreen();
+ prototype CheckRequirements();
+ prototype DialogShowSdWelcome();
+ prototype DialogShowSdShowInfoList();
+ prototype DialogShowSdAskDestPath();
+ prototype DialogShowSdSetupType();
+ prototype DialogShowSdComponentDialog2();
+ prototype DialogShowSdFinishReboot();
+
+ // your prototypes
+
+
+ // ----- global variables ------
+
+ // generated
+ BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
+ STRING svDir;
+ STRING svName, svCompany, svSerial;
+ STRING szAppPath;
+ STRING svSetupType;
+
+
+ // your global variables
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// MAIN PROGRAM
+//
+// The setup begins here by hiding the visible setup
+// window. This is done to allow all the titles, images, etc. to
+// be established before showing the main window. The following
+// logic then performs the setup in a series of steps.
+//
+///////////////////////////////////////////////////////////////////////////////
+program
+ Disable( BACKGROUND );
+
+ CheckRequirements();
+
+ SetupInstall();
+
+ SetupScreen();
+
+ if (ShowDialogs()<0) goto end_install;
+
+ if (ProcessBeforeDataMove()<0) goto end_install;
+
+ if (MoveFileData()<0) goto end_install;
+
+ if (ProcessAfterDataMove()<0) goto end_install;
+
+ if (SetupRegistry()<0) goto end_install;
+
+ if (SetupFolders()<0) goto end_install;
+
+
+ end_install:
+
+ CleanUpInstall();
+
+ // If an unrecoverable error occurred, clean up the partial installation.
+ // Otherwise, exit normally.
+
+ if (bInstallAborted) then
+ abort;
+ endif;
+
+endprogram
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ShowDialogs //
+// //
+// Purpose: This function manages the display and navigation //
+// the standard dialogs that exist in a setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ShowDialogs()
+ NUMBER nResult;
+ begin
+
+ Dlg_Start:
+ // beginning of dialogs label
+
+ Dlg_SdWelcome:
+ nResult = DialogShowSdWelcome();
+ if (nResult = BACK) goto Dlg_Start;
+
+ Dlg_SdShowInfoList:
+ nResult = DialogShowSdShowInfoList();
+ if (nResult = BACK) goto Dlg_SdWelcome;
+
+ Dlg_SdAskDestPath:
+ nResult = DialogShowSdAskDestPath();
+ if (nResult = BACK) goto Dlg_SdShowInfoList;
+
+ Dlg_SdSetupType:
+ nResult = DialogShowSdSetupType();
+ if (nResult = BACK) goto Dlg_SdAskDestPath;
+
+ Dlg_SdComponentDialog2:
+ if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
+ goto Dlg_SdSetupType;
+ endif;
+ nResult = DialogShowSdComponentDialog2();
+ if (nResult = BACK) goto Dlg_SdSetupType;
+
+ return 0;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessBeforeDataMove //
+// //
+// Purpose: This function performs any necessary operations prior to the //
+// actual data move operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessBeforeDataMove()
+ STRING svLogFile;
+ NUMBER nResult;
+ begin
+
+ InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );
+
+ svLogFile = UNINST_LOGFILE_NAME;
+
+ nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
+ if (nResult < 0) then
+ MessageBox( @ERROR_UNINSTSETUP, WARNING );
+ endif;
+
+ szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir
+
+ if ((bIs32BitSetup) && (bIsShellExplorer)) then
+// RegDBSetItem( REGDB_APPPATH, szAppPath );
+// RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
+ RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
+ endif;
+
+ // TODO : update any items you want to process before moving the data
+ //
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: MoveFileData //
+// //
+// Purpose: This function handles the data movement for //
+// the setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function MoveFileData()
+ NUMBER nResult, nDisk;
+ begin
+
+ nDisk = 1;
+ SetStatusWindow( 0, "" );
+ Disable( DIALOGCACHE );
+ Enable( STATUS );
+ StatusUpdate( ON, 100 );
+ nResult = ComponentMoveData( MEDIA, nDisk, 0 );
+
+ HandleMoveDataError( nResult );
+
+ Disable( STATUS );
+
+ return nResult;
+
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: HandleMoveDataError //
+// //
+// Purpose: This function handles the error (if any) during the move data //
+// operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function HandleMoveDataError( nResult )
+ STRING szErrMsg, svComponent , svFileGroup , svFile;
+ begin
+
+ svComponent = "";
+ svFileGroup = "";
+ svFile = "";
+
+ switch (nResult)
+ case 0:
+ return 0;
+ default:
+ ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
+ szErrMsg = @ERROR_MOVEDATA + "\n\n" +
+ @ERROR_COMPONENT + " " + svComponent + "\n" +
+ @ERROR_FILEGROUP + " " + svFileGroup + "\n" +
+ @ERROR_FILE + " " + svFile;
+ SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
+ bInstallAborted = TRUE;
+ return nResult;
+ endswitch;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessAfterDataMove //
+// //
+// Purpose: This function performs any necessary operations needed after //
+// all data has been moved. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessAfterDataMove()
+ begin
+
+ // TODO : update self-registered files and other processes that
+ // should be performed after the data has been moved.
+
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupRegistry //
+// //
+// Purpose: This function makes the registry entries for this setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupRegistry()
+ NUMBER nResult;
+
+ begin
+
+ // TODO : Add all your registry entry keys here
+ //
+ //
+ // RegDBCreateKeyEx, RegDBSetKeyValueEx....
+ //
+
+ nResult = CreateRegistrySet( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// Function: SetupFolders
+//
+// Purpose: This function creates all the folders and shortcuts for the
+// setup. This includes program groups and items for Windows 3.1.
+//
+///////////////////////////////////////////////////////////////////////////////
+function SetupFolders()
+ NUMBER nResult;
+
+ begin
+
+
+ // TODO : Add all your folder (program group) along with shortcuts (program items)
+ //
+ //
+ // CreateProgramFolder, AddFolderIcon....
+ //
+
+ nResult = CreateShellObjects( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CleanUpInstall //
+// //
+// Purpose: This cleans up the setup. Anything that should //
+// be released or deleted at the end of the setup should //
+// be done here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CleanUpInstall()
+ begin
+
+
+ if (bInstallAborted) then
+ return 0;
+ endif;
+
+ DialogShowSdFinishReboot();
+
+ if (BATCH_INSTALL) then // ensure locked files are properly written
+ CommitSharedFiles(0);
+ endif;
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupInstall //
+// //
+// Purpose: This will setup the installation. Any general initialization //
+// needed for the installation should be performed here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupInstall()
+ begin
+
+ Enable( CORECOMPONENTHANDLING );
+
+ bInstallAborted = FALSE;
+
+ if (bIs32BitSetup) then
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
+ else
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
+ endif;
+
+ TARGETDIR = svDir;
+
+ SdProductName( @PRODUCT_NAME );
+
+ Enable( DIALOGCACHE );
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupScreen //
+// //
+// Purpose: This function establishes the screen look. This includes //
+// colors, fonts, and text to be displayed. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupScreen()
+ begin
+
+ Enable( FULLWINDOWMODE );
+ Enable( INDVFILESTATUS );
+ SetTitle( @TITLE_MAIN, 24, WHITE );
+
+ SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.
+
+ Enable( BACKGROUND );
+
+ Delay( 1 );
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CheckRequirements //
+// //
+// Purpose: This function checks all minimum requirements for the //
+// application being installed. If any fail, then the user //
+// is informed and the setup is terminated. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CheckRequirements()
+ NUMBER nvDx, nvDy, nvResult;
+ STRING svResult;
+
+ begin
+
+ bWinNT = FALSE;
+ bIsShellExplorer = FALSE;
+
+ // Check screen resolution.
+ GetExtents( nvDx, nvDy );
+
+ if (nvDy < 480) then
+ MessageBox( @ERROR_VGARESOLUTION, WARNING );
+ abort;
+ endif;
+
+ // set 'setup' operation mode
+ bIs32BitSetup = TRUE;
+ GetSystemInfo( ISTYPE, nvResult, svResult );
+ if (nvResult = 16) then
+ bIs32BitSetup = FALSE; // running 16-bit setup
+ return 0; // no additional information required
+ endif;
+
+ // --- 32-bit testing after this point ---
+
+ // Determine the target system's operating system.
+ GetSystemInfo( OS, nvResult, svResult );
+
+ if (nvResult = IS_WINDOWSNT) then
+ // Running Windows NT.
+ bWinNT = TRUE;
+
+ // Check to see if the shell being used is EXPLORER shell.
+ if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
+ if (nvResult >= 4) then
+ bIsShellExplorer = TRUE;
+ endif;
+ endif;
+
+ elseif (nvResult = IS_WINDOWS95 ) then
+ bIsShellExplorer = TRUE;
+
+ endif;
+
+end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdWelcome //
+// //
+// Purpose: This function handles the standard welcome dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdWelcome()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdWelcome( szTitle, szMsg );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdShowInfoList //
+// //
+// Purpose: This function displays the general information list dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdShowInfoList()
+ NUMBER nResult;
+ LIST list;
+ STRING szTitle, szMsg, szFile;
+ begin
+
+ szFile = SUPPORTDIR ^ "infolist.txt";
+
+ list = ListCreate( STRINGLIST );
+ ListReadFromFile( list, szFile );
+ szTitle = "";
+ szMsg = " ";
+ nResult = SdShowInfoList( szTitle, szMsg, list );
+
+ ListDestroy( list );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdAskDestPath //
+// //
+// Purpose: This function asks the user for the destination directory. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdAskDestPath()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );
+
+ TARGETDIR = svDir;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdSetupType //
+// //
+// Purpose: This function displays the standard setup type dialog. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdSetupType()
+ NUMBER nResult, nType;
+ STRING szTitle, szMsg;
+ begin
+
+ switch (svSetupType)
+ case "Typical":
+ nType = TYPICAL;
+ case "Custom":
+ nType = CUSTOM;
+ case "Compact":
+ nType = COMPACT;
+ case "":
+ svSetupType = "Typical";
+ nType = TYPICAL;
+ endswitch;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SetupType( szTitle, szMsg, "", nType, 0 );
+
+ switch (nResult)
+ case COMPACT:
+ svSetupType = "Compact";
+ case TYPICAL:
+ svSetupType = "Typical";
+ case CUSTOM:
+ svSetupType = "Custom";
+ endswitch;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdComponentDialog2 //
+// //
+// Purpose: This function displays the custom component dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdComponentDialog2()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ if ((svSetupType != "Custom") && (svSetupType != "")) then
+ return 0;
+ endif;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdFinishReboot //
+// //
+// Purpose: This function will show the last dialog of the product. //
+// It will allow the user to reboot and/or show some readme text. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdFinishReboot()
+ NUMBER nResult, nDefOptions;
+ STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
+ NUMBER bOpt1, bOpt2;
+ begin
+
+ if (!BATCH_INSTALL) then
+ bOpt1 = FALSE;
+ bOpt2 = FALSE;
+ szMsg1 = "";
+ szMsg2 = "";
+ szOption1 = "";
+ szOption2 = "";
+ nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
+ return 0;
+ endif;
+
+ nDefOptions = SYS_BOOTMACHINE;
+ szTitle = "";
+ szMsg1 = "";
+ szMsg2 = "";
+ nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );
+
+ return nResult;
+ end;
+
+ // --- include script file section ---
+
+#include "sddialog.rul"
+
+
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt b/VC++Files/InstallShield/4.1.XX-classic/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
new file mode 100755
index 00000000000..e5a6f6ac433
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
@@ -0,0 +1,25 @@
+This is a release of MySQL Classic @VERSION@ for Win32.
+
+NOTE: If you install MySQL in a folder other than
+C:\MYSQL or you intend to start MySQL on NT/Win2000
+as a service, you must create a file named C:\MY.CNF
+or \Windows\my.ini or \winnt\my.ini with the following
+information::
+
+[mysqld]
+basedir=E:/installation-path/
+datadir=E:/data-path/
+
+After your have installed MySQL, the installation
+directory will contain 4 files named 'my-small.cnf,
+my-medium.cnf, my-large.cnf, my-huge.cnf'.
+You can use this as a starting point for your own
+C:\my.cnf file.
+
+If you have any problems, you can mail them to
+win32@lists.mysql.com after you have consulted the
+MySQL manual and the MySQL mailing list archive
+(http://www.mysql.com/documentation/index.html)
+
+On behalf of the MySQL AB gang,
+Michael Widenius
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp b/VC++Files/InstallShield/4.1.XX-classic/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp
new file mode 100755
index 00000000000..3229d50c9bf
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Shell Objects/Default.shl b/VC++Files/InstallShield/4.1.XX-classic/Shell Objects/Default.shl
new file mode 100755
index 00000000000..187cb651307
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Shell Objects/Default.shl
@@ -0,0 +1,12 @@
+[Data]
+Folder3=<FOLDER_STARTUP>
+Group0=Main
+Group1=Startup
+Folder0=<FOLDER_DESKTOP>
+Folder1=<FOLDER_STARTMENU>
+Folder2=<FOLDER_PROGRAMS>
+
+[Info]
+Type=ShellObject
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/String Tables/0009-English/value.shl b/VC++Files/InstallShield/4.1.XX-classic/String Tables/0009-English/value.shl
new file mode 100755
index 00000000000..868c801c68c
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/String Tables/0009-English/value.shl
@@ -0,0 +1,23 @@
+[Data]
+TITLE_MAIN=MySQL Classic Servers and Clients @VERSION@
+COMPANY_NAME=MySQL AB
+ERROR_COMPONENT=Component:
+COMPANY_NAME16=Company
+PRODUCT_VERSION=MySQL Classic Servers and Clients @VERSION@
+ERROR_MOVEDATA=An error occurred during the move data process: %d
+ERROR_FILEGROUP=File Group:
+UNINST_KEY=MySQL Classic Servers and Clients @VERSION@
+TITLE_CAPTIONBAR=MySQL Classic Servers and Clients @VERSION@
+PRODUCT_NAME16=Product
+ERROR_VGARESOLUTION=This program requires VGA or better resolution.
+ERROR_FILE=File:
+UNINST_DISPLAY_NAME=MySQL Classic Servers and Clients @VERSION@
+PRODUCT_KEY=yourapp.Exe
+PRODUCT_NAME=MySQL Classic Servers and Clients @VERSION@
+ERROR_UNINSTSETUP=unInstaller setup failed to initialize. You may not be able to uninstall this product.
+
+[General]
+Language=0009
+Type=STRINGTABLESPECIFIC
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/String Tables/Default.shl b/VC++Files/InstallShield/4.1.XX-classic/String Tables/Default.shl
new file mode 100755
index 00000000000..d4dc4925ab1
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/String Tables/Default.shl
@@ -0,0 +1,74 @@
+[TITLE_MAIN]
+Comment=
+
+[COMPANY_NAME]
+Comment=
+
+[ERROR_COMPONENT]
+Comment=
+
+[COMPANY_NAME16]
+Comment=
+
+[PRODUCT_VERSION]
+Comment=
+
+[ERROR_MOVEDATA]
+Comment=
+
+[ERROR_FILEGROUP]
+Comment=
+
+[Language]
+Lang0=0009
+CurrentLang=0
+
+[UNINST_KEY]
+Comment=
+
+[TITLE_CAPTIONBAR]
+Comment=
+
+[Data]
+Entry0=ERROR_VGARESOLUTION
+Entry1=TITLE_MAIN
+Entry2=TITLE_CAPTIONBAR
+Entry3=UNINST_KEY
+Entry4=UNINST_DISPLAY_NAME
+Entry5=COMPANY_NAME
+Entry6=PRODUCT_NAME
+Entry7=PRODUCT_VERSION
+Entry8=PRODUCT_KEY
+Entry9=ERROR_MOVEDATA
+Entry10=ERROR_UNINSTSETUP
+Entry11=COMPANY_NAME16
+Entry12=PRODUCT_NAME16
+Entry13=ERROR_COMPONENT
+Entry14=ERROR_FILEGROUP
+Entry15=ERROR_FILE
+
+[PRODUCT_NAME16]
+Comment=
+
+[ERROR_VGARESOLUTION]
+Comment=
+
+[ERROR_FILE]
+Comment=
+
+[General]
+Type=STRINGTABLE
+Version=1.00.000
+
+[UNINST_DISPLAY_NAME]
+Comment=
+
+[PRODUCT_KEY]
+Comment=
+
+[PRODUCT_NAME]
+Comment=
+
+[ERROR_UNINSTSETUP]
+Comment=
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Text Substitutions/Build.tsb b/VC++Files/InstallShield/4.1.XX-classic/Text Substitutions/Build.tsb
new file mode 100755
index 00000000000..3949bd4c066
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Text Substitutions/Build.tsb
@@ -0,0 +1,56 @@
+[<HKUS>]
+Value=
+KeyType=4
+
+[<HKCR>]
+Value=
+KeyType=4
+
+[<PROGRAMFILES>]
+Value=
+KeyType=4
+
+[<WINSYSDIR>]
+Value=
+KeyType=4
+
+[<COMMONFILES>]
+Value=
+KeyType=4
+
+[<WINDIR>]
+Value=
+KeyType=4
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<HKLM>
+Key5=<HKCU>
+Key6=<HKCC>
+Key7=<HKDD>
+Key8=<HKUS>
+Key9=<HKCR>
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKLM>]
+Value=
+KeyType=4
+
+[<HKCU>]
+Value=
+KeyType=4
+
+[<HKCC>]
+Value=
+KeyType=4
+
+[<HKDD>]
+Value=
+KeyType=4
+
diff --git a/VC++Files/InstallShield/4.1.XX-classic/Text Substitutions/Setup.tsb b/VC++Files/InstallShield/4.1.XX-classic/Text Substitutions/Setup.tsb
new file mode 100755
index 00000000000..b0c5a509f0b
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-classic/Text Substitutions/Setup.tsb
@@ -0,0 +1,76 @@
+[<SRCDIR>]
+Value=
+KeyType=4
+
+[<HKUS>]
+Value=
+KeyType=4
+
+[<HKCR>]
+Value=
+KeyType=4
+
+[<PROGRAMFILES>]
+Value=
+KeyType=4
+
+[<TARGETDIR>]
+Value=
+KeyType=4
+
+[<WINSYSDIR>]
+Value=
+KeyType=4
+
+[<COMMONFILES>]
+Value=
+KeyType=4
+
+[<WINDIR>]
+Value=
+KeyType=4
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<TARGETDIR>
+Key5=<SUPPORTDIR>
+Key10=<HKDD>
+Key6=<SRCDIR>
+Key11=<HKUS>
+Key7=<HKLM>
+Key12=<HKCR>
+Key8=<HKCU>
+Key13=<SHELL_OBJECT_FOLDER>
+Key9=<HKCC>
+
+[<SUPPORTDIR>]
+Value=
+KeyType=4
+
+[<SHELL_OBJECT_FOLDER>]
+Value=
+KeyType=4
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKLM>]
+Value=
+KeyType=4
+
+[<HKCU>]
+Value=
+KeyType=4
+
+[<HKCC>]
+Value=
+KeyType=4
+
+[<HKDD>]
+Value=
+KeyType=4
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/4.1.XX-gpl.ipr b/VC++Files/InstallShield/4.1.XX-gpl/4.1.XX-gpl.ipr
new file mode 100755
index 00000000000..c415a03a315
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/4.1.XX-gpl.ipr
@@ -0,0 +1,51 @@
+[Language]
+LanguageSupport0=0009
+
+[OperatingSystem]
+OSSupport=0000000000010010
+
+[Data]
+CurrentMedia=
+CurrentComponentDef=Default.cdf
+ProductName=MySQL Servers and Clients
+set_mifserial=
+DevEnvironment=Microsoft Visual C++ 6
+AppExe=
+set_dlldebug=No
+EmailAddresss=
+Instructions=Instructions.txt
+set_testmode=No
+set_mif=No
+SummaryText=
+Department=
+HomeURL=
+Author=
+Type=Database Application
+InstallRoot=D:\MySQL-Install\mysql-4\MySQL Servers and Clients
+Version=1.00.000
+InstallationGUID=40744a4d-efed-4cff-84a9-9e6389550f5c
+set_level=Level 3
+CurrentFileGroupDef=Default.fdf
+Notes=Notes.txt
+set_maxerr=50
+set_args=
+set_miffile=Status.mif
+set_dllcmdline=
+Copyright=
+set_warnaserr=No
+CurrentPlatform=
+Category=
+set_preproc=
+CurrentLanguage=English
+CompanyName=MySQL
+Description=Description.txt
+set_maxwarn=50
+set_crc=Yes
+set_compileb4build=No
+
+[MediaInfo]
+
+[General]
+Type=INSTALLMAIN
+Version=1.10.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Component Definitions/Default.cdf b/VC++Files/InstallShield/4.1.XX-gpl/Component Definitions/Default.cdf
new file mode 100755
index 00000000000..48d37800cd1
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Component Definitions/Default.cdf
@@ -0,0 +1,192 @@
+[Development]
+required0=Servers
+SELECTED=Yes
+FILENEED=STANDARD
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=Examples, Libraries, Includes and Script files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=Examples, Libraries, Includes and Script files
+DISPLAYTEXT=Examples, Libraries, Includes and Script files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Grant Tables]
+required0=Servers
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The Grant Tables and Core Files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The Grant Tables and Core Files
+DISPLAYTEXT=The Grant Tables and Core Files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Grant Tables
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Clients and Tools
+INSTALLATION=NEVEROVERWRITE
+requiredby2=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Components]
+component0=Development
+component1=Grant Tables
+component2=Servers
+component3=Clients and Tools
+component4=Documentation
+
+[TopComponents]
+component0=Servers
+component1=Clients and Tools
+component2=Documentation
+component3=Development
+component4=Grant Tables
+
+[SetupType]
+setuptype0=Compact
+setuptype1=Typical
+setuptype2=Custom
+
+[Clients and Tools]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL clients and Maintenance Tools
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL clients and Maintenance Tools
+DISPLAYTEXT=The MySQL clients and Maintenance Tools
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Clients and Tools
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=NEWERDATE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Servers]
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The MySQL Servers
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Servers
+DISPLAYTEXT=The MySQL Servers
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Servers
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Grant Tables
+INSTALLATION=ALWAYSOVERWRITE
+requiredby2=Clients and Tools
+requiredby3=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[SetupTypeItem-Compact]
+Comment=
+item0=Grant Tables
+item1=Servers
+item2=Clients and Tools
+item3=Documentation
+Descrip=
+DisplayText=
+
+[SetupTypeItem-Custom]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Servers
+item3=Clients and Tools
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Info]
+Type=CompDef
+Version=1.00.000
+Name=
+
+[SetupTypeItem-Typical]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Servers
+item3=Clients and Tools
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Documentation]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL Documentation with different formats
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Documentation with different formats
+DISPLAYTEXT=The MySQL Documentation with different formats
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Documentation
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Component Definitions/Default.fgl b/VC++Files/InstallShield/4.1.XX-gpl/Component Definitions/Default.fgl
new file mode 100755
index 00000000000..4e20dcea4ab
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Component Definitions/Default.fgl
@@ -0,0 +1,42 @@
+[<PROGRAMFILES>\<COMMONFILES>]
+DISPLAYTEXT=Common Files Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>\<WINSYSDIR>]
+DISPLAYTEXT=Windows System Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[USERDEFINED]
+DISPLAYTEXT=Script-defined Folders
+TYPE=USERSTART
+fulldirectory=
+
+[<PROGRAMFILES>]
+DISPLAYTEXT=Program Files Folder
+SubDir0=<PROGRAMFILES>\<COMMONFILES>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<TARGETDIR>]
+DISPLAYTEXT=General Application Destination
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>]
+DISPLAYTEXT=Windows Operating System
+SubDir0=<WINDIR>\<WINSYSDIR>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[TopDir]
+SubDir0=<WINDIR>
+SubDir1=<PROGRAMFILES>
+SubDir2=<TARGETDIR>
+SubDir3=USERDEFINED
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Clients and Tools.fgl b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Clients and Tools.fgl
new file mode 100755
index 00000000000..b2c71df9c97
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Clients and Tools.fgl
@@ -0,0 +1,35 @@
+[bin]
+file0=C:\mysql\bin\isamchk.exe
+file1=C:\mysql\bin\myisamchk.exe
+file2=C:\mysql\bin\myisamlog.exe
+file3=C:\mysql\bin\myisampack.exe
+file4=C:\mysql\bin\mysql.exe
+file5=C:\mysql\bin\mysqladmin.exe
+file6=C:\mysql\bin\mysqlbinlog.exe
+file7=C:\mysql\bin\mysqlc.exe
+file8=C:\mysql\bin\mysqlcheck.exe
+file9=C:\mysql\bin\mysqldump.exe
+file10=C:\mysql\bin\mysqlimport.exe
+fulldirectory=
+file11=C:\mysql\bin\mysqlshow.exe
+file12=C:\mysql\bin\mysqlwatch.exe
+file13=C:\mysql\bin\pack_isam.exe
+file14=C:\mysql\bin\perror.exe
+file15=C:\mysql\bin\replace.exe
+file16=C:\mysql\bin\winmysqladmin.cnt
+file17=C:\mysql\bin\WINMYSQLADMIN.HLP
+file18=C:\mysql\bin\comp-err.exe
+file19=C:\mysql\bin\my_print_defaults.exe
+file20=C:\mysql\bin\winmysqladmin.exe
+file21=C:\mysql\bin\myisam_ftdump.exe
+file22=C:\mysql\bin\libmySQL.dll
+file23=C:\mysql\bin\cygwinb19.dll
+
+
+[TopDir]
+SubDir0=bin
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Default.fdf b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Default.fdf
new file mode 100755
index 00000000000..8096a4b74bf
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Default.fdf
@@ -0,0 +1,82 @@
+[FileGroups]
+group0=Development
+group1=Grant Tables
+group2=Servers
+group3=Clients and Tools
+group4=Documentation
+
+[Development]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Grant Tables]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Clients and Tools]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=0000000000000000
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Servers]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Info]
+Type=FileGrp
+Version=1.00.000
+Name=
+
+[Documentation]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Development.fgl b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Development.fgl
new file mode 100755
index 00000000000..2da35c8b2ea
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Development.fgl
@@ -0,0 +1,243 @@
+[bench\Data\Wisconsin]
+file0=C:\mysql\bench\Data\Wisconsin\onek.data
+file1=C:\mysql\bench\Data\Wisconsin\tenk.data
+fulldirectory=
+
+[lib\debug]
+file0=C:\mysql\lib\debug\libmySQL.dll
+file1=C:\mysql\lib\debug\libmySQL.lib
+file2=C:\mysql\lib\debug\mysqlclient.lib
+file3=C:\mysql\lib\debug\zlib.lib
+file4=C:\mysql\lib\debug\regex.lib
+file5=C:\mysql\lib\debug\mysys.lib
+file6=C:\mysql\lib\debug\strings.lib
+fulldirectory=
+
+[bench\output]
+fulldirectory=
+
+[examples\libmysqltest]
+file0=C:\mysql\examples\libmysqltest\myTest.c
+file1=C:\mysql\examples\libmysqltest\myTest.dsp
+file2=C:\mysql\examples\libmysqltest\myTest.dsw
+file3=C:\mysql\examples\libmysqltest\myTest.exe
+file4=C:\mysql\examples\libmysqltest\myTest.mak
+file5=C:\mysql\examples\libmysqltest\myTest.ncb
+file6=C:\mysql\examples\libmysqltest\myTest.opt
+file7=C:\mysql\examples\libmysqltest\readme
+fulldirectory=
+
+[include]
+file0=C:\mysql\include\raid.h
+file1=C:\mysql\include\errmsg.h
+file2=C:\mysql\include\Libmysql.def
+file3=C:\mysql\include\m_ctype.h
+file4=C:\mysql\include\m_string.h
+file5=C:\mysql\include\my_list.h
+file6=C:\mysql\include\my_pthread.h
+file7=C:\mysql\include\my_sys.h
+file8=C:\mysql\include\mysql.h
+file9=C:\mysql\include\mysql_com.h
+file10=C:\mysql\include\mysql_version.h
+fulldirectory=
+file11=C:\mysql\include\mysqld_error.h
+file12=C:\mysql\include\dbug.h
+file13=C:\mysql\include\config-win.h
+file14=C:\mysql\include\my_global.h
+file15=C:\mysql\include\libmysqld.def
+file16=C:\mysql\include\my_alloc.h
+file17=C:\mysql\include\my_getopt.h
+file18=C:\mysql\include\typelib.h
+
+[examples]
+SubDir0=examples\libmysqltest
+SubDir1=examples\tests
+fulldirectory=
+
+[lib\opt]
+file0=C:\mysql\lib\opt\libmySQL.dll
+file1=C:\mysql\lib\opt\libmySQL.lib
+file2=C:\mysql\lib\opt\mysqlclient.lib
+file3=C:\mysql\lib\opt\zlib.lib
+file4=C:\mysql\lib\opt\strings.lib
+file5=C:\mysql\lib\opt\mysys-max.lib
+file6=C:\mysql\lib\opt\regex.lib
+file7=C:\mysql\lib\opt\mysys.lib
+fulldirectory=
+
+[bench\Data]
+SubDir0=bench\Data\ATIS
+SubDir1=bench\Data\Wisconsin
+fulldirectory=
+
+[bench\limits]
+file15=C:\mysql\bench\limits\pg.comment
+file16=C:\mysql\bench\limits\solid.cfg
+file0=C:\mysql\bench\limits\access.cfg
+file17=C:\mysql\bench\limits\solid-nt4.cfg
+file1=C:\mysql\bench\limits\access.comment
+file18=C:\mysql\bench\limits\sybase.cfg
+file2=C:\mysql\bench\limits\Adabas.cfg
+file3=C:\mysql\bench\limits\Adabas.comment
+file4=C:\mysql\bench\limits\Db2.cfg
+file5=C:\mysql\bench\limits\empress.cfg
+file6=C:\mysql\bench\limits\empress.comment
+file7=C:\mysql\bench\limits\Informix.cfg
+file8=C:\mysql\bench\limits\Informix.comment
+file9=C:\mysql\bench\limits\msql.cfg
+file10=C:\mysql\bench\limits\ms-sql.cfg
+fulldirectory=
+file11=C:\mysql\bench\limits\Ms-sql65.cfg
+file12=C:\mysql\bench\limits\mysql.cfg
+file13=C:\mysql\bench\limits\oracle.cfg
+file14=C:\mysql\bench\limits\pg.cfg
+
+[TopDir]
+SubDir0=bench
+SubDir1=examples
+SubDir2=include
+SubDir3=lib
+SubDir4=scripts
+
+[bench]
+file15=C:\mysql\bench\test-create
+file16=C:\mysql\bench\test-insert
+file0=C:\mysql\bench\uname.bat
+file17=C:\mysql\bench\test-select
+file1=C:\mysql\bench\compare-results
+file18=C:\mysql\bench\test-wisconsin
+file2=C:\mysql\bench\copy-db
+file19=C:\mysql\bench\bench-init.pl
+file3=C:\mysql\bench\crash-me
+file4=C:\mysql\bench\example.bat
+file5=C:\mysql\bench\print-limit-table
+file6=C:\mysql\bench\pwd.bat
+file7=C:\mysql\bench\Readme
+SubDir0=bench\Data
+file8=C:\mysql\bench\run.bat
+SubDir1=bench\limits
+file9=C:\mysql\bench\run-all-tests
+SubDir2=bench\output
+file10=C:\mysql\bench\server-cfg
+fulldirectory=
+file11=C:\mysql\bench\test-alter-table
+file12=C:\mysql\bench\test-ATIS
+file13=C:\mysql\bench\test-big-tables
+file14=C:\mysql\bench\test-connect
+
+[examples\tests]
+file15=C:\mysql\examples\tests\lock_test.res
+file16=C:\mysql\examples\tests\mail_to_db.pl
+file0=C:\mysql\examples\tests\unique_users.tst
+file17=C:\mysql\examples\tests\table_types.pl
+file1=C:\mysql\examples\tests\auto_increment.tst
+file18=C:\mysql\examples\tests\test_delayed_insert.pl
+file2=C:\mysql\examples\tests\big_record.pl
+file19=C:\mysql\examples\tests\udf_test
+file3=C:\mysql\examples\tests\big_record.res
+file4=C:\mysql\examples\tests\czech-sorting
+file5=C:\mysql\examples\tests\deadlock-script.pl
+file6=C:\mysql\examples\tests\export.pl
+file7=C:\mysql\examples\tests\fork_test.pl
+file8=C:\mysql\examples\tests\fork2_test.pl
+file9=C:\mysql\examples\tests\fork3_test.pl
+file20=C:\mysql\examples\tests\udf_test.res
+file21=C:\mysql\examples\tests\auto_increment.res
+file10=C:\mysql\examples\tests\function.res
+fulldirectory=
+file11=C:\mysql\examples\tests\function.tst
+file12=C:\mysql\examples\tests\grant.pl
+file13=C:\mysql\examples\tests\grant.res
+file14=C:\mysql\examples\tests\lock_test.pl
+
+[bench\Data\ATIS]
+file26=C:\mysql\bench\Data\ATIS\stop1.txt
+file15=C:\mysql\bench\Data\ATIS\flight_class.txt
+file27=C:\mysql\bench\Data\ATIS\time_interval.txt
+file16=C:\mysql\bench\Data\ATIS\flight_day.txt
+file0=C:\mysql\bench\Data\ATIS\transport.txt
+file28=C:\mysql\bench\Data\ATIS\time_zone.txt
+file17=C:\mysql\bench\Data\ATIS\flight_fare.txt
+file1=C:\mysql\bench\Data\ATIS\airline.txt
+file29=C:\mysql\bench\Data\ATIS\aircraft.txt
+file18=C:\mysql\bench\Data\ATIS\food_service.txt
+file2=C:\mysql\bench\Data\ATIS\airport.txt
+file19=C:\mysql\bench\Data\ATIS\ground_service.txt
+file3=C:\mysql\bench\Data\ATIS\airport_service.txt
+file4=C:\mysql\bench\Data\ATIS\city.txt
+file5=C:\mysql\bench\Data\ATIS\class_of_service.txt
+file6=C:\mysql\bench\Data\ATIS\code_description.txt
+file7=C:\mysql\bench\Data\ATIS\compound_class.txt
+file8=C:\mysql\bench\Data\ATIS\connect_leg.txt
+file9=C:\mysql\bench\Data\ATIS\date_day.txt
+file20=C:\mysql\bench\Data\ATIS\month_name.txt
+file21=C:\mysql\bench\Data\ATIS\restrict_carrier.txt
+file10=C:\mysql\bench\Data\ATIS\day_name.txt
+fulldirectory=
+file22=C:\mysql\bench\Data\ATIS\restrict_class.txt
+file11=C:\mysql\bench\Data\ATIS\dual_carrier.txt
+file23=C:\mysql\bench\Data\ATIS\restriction.txt
+file12=C:\mysql\bench\Data\ATIS\fare.txt
+file24=C:\mysql\bench\Data\ATIS\state.txt
+file13=C:\mysql\bench\Data\ATIS\fconnection.txt
+file25=C:\mysql\bench\Data\ATIS\stop.txt
+file14=C:\mysql\bench\Data\ATIS\flight.txt
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[scripts]
+file37=C:\mysql\scripts\mysqld_safe-watch.sh
+file26=C:\mysql\scripts\mysql_zap
+file15=C:\mysql\scripts\mysql_fix_privilege_tables
+file38=C:\mysql\scripts\mysqldumpslow
+file27=C:\mysql\scripts\mysql_zap.sh
+file16=C:\mysql\scripts\mysql_fix_privilege_tables.sh
+file0=C:\mysql\scripts\Readme
+file39=C:\mysql\scripts\mysqldumpslow.sh
+file28=C:\mysql\scripts\mysqlaccess
+file17=C:\mysql\scripts\mysql_install_db
+file1=C:\mysql\scripts\make_binary_distribution.sh
+file29=C:\mysql\scripts\mysqlaccess.conf
+file18=C:\mysql\scripts\mysql_install_db.sh
+file2=C:\mysql\scripts\msql2mysql
+file19=C:\mysql\scripts\mysql_secure_installation
+file3=C:\mysql\scripts\msql2mysql.sh
+file4=C:\mysql\scripts\mysql_config
+file5=C:\mysql\scripts\mysql_config.sh
+file6=C:\mysql\scripts\mysql_convert_table_format
+file7=C:\mysql\scripts\mysql_convert_table_format.sh
+file40=C:\mysql\scripts\mysqlhotcopy
+file8=C:\mysql\scripts\mysql_explain_log
+file41=C:\mysql\scripts\mysqlhotcopy.pl
+file30=C:\mysql\scripts\mysqlaccess.sh
+file9=C:\mysql\scripts\mysql_explain_log.sh
+file42=C:\mysql\scripts\mysqlhotcopy.sh
+file31=C:\mysql\scripts\mysqlbug
+file20=C:\mysql\scripts\mysql_secure_installation.sh
+file43=C:\mysql\scripts\make_binary_distribution
+file32=C:\mysql\scripts\mysqlbug.sh
+file21=C:\mysql\scripts\mysql_setpermission
+file10=C:\mysql\scripts\mysql_find_rows
+fulldirectory=
+file44=C:\mysql\scripts\mysql_fix_privilege_tables.sql
+file33=C:\mysql\scripts\mysqld_multi
+file22=C:\mysql\scripts\mysql_setpermission.pl
+file11=C:\mysql\scripts\mysql_find_rows.pl
+file34=C:\mysql\scripts\mysqld_multi.sh
+file23=C:\mysql\scripts\mysql_setpermission.sh
+file12=C:\mysql\scripts\mysql_find_rows.sh
+file35=C:\mysql\scripts\mysqld_safe
+file24=C:\mysql\scripts\mysql_tableinfo
+file13=C:\mysql\scripts\mysql_fix_extensions
+file36=C:\mysql\scripts\mysqld_safe.sh
+file25=C:\mysql\scripts\mysql_tableinfo.sh
+file14=C:\mysql\scripts\mysql_fix_extensions.sh
+
+[lib]
+file0=C:\mysql\lib\Readme
+SubDir0=lib\debug
+SubDir1=lib\opt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Documentation.fgl b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Documentation.fgl
new file mode 100755
index 00000000000..210c7c27be1
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Documentation.fgl
@@ -0,0 +1,100 @@
+[Docs\Flags]
+file59=C:\mysql\Docs\Flags\romania.gif
+file48=C:\mysql\Docs\Flags\kroatia.eps
+file37=C:\mysql\Docs\Flags\iceland.gif
+file26=C:\mysql\Docs\Flags\france.eps
+file15=C:\mysql\Docs\Flags\china.gif
+file49=C:\mysql\Docs\Flags\kroatia.gif
+file38=C:\mysql\Docs\Flags\ireland.eps
+file27=C:\mysql\Docs\Flags\france.gif
+file16=C:\mysql\Docs\Flags\croatia.eps
+file0=C:\mysql\Docs\Flags\usa.gif
+file39=C:\mysql\Docs\Flags\ireland.gif
+file28=C:\mysql\Docs\Flags\germany.eps
+file17=C:\mysql\Docs\Flags\croatia.gif
+file1=C:\mysql\Docs\Flags\argentina.gif
+file29=C:\mysql\Docs\Flags\germany.gif
+file18=C:\mysql\Docs\Flags\czech-republic.eps
+file2=C:\mysql\Docs\Flags\australia.eps
+file19=C:\mysql\Docs\Flags\czech-republic.gif
+file3=C:\mysql\Docs\Flags\australia.gif
+file80=C:\mysql\Docs\Flags\usa.eps
+file4=C:\mysql\Docs\Flags\austria.eps
+file81=C:\mysql\Docs\Flags\argentina.eps
+file70=C:\mysql\Docs\Flags\spain.eps
+file5=C:\mysql\Docs\Flags\austria.gif
+file71=C:\mysql\Docs\Flags\spain.gif
+file60=C:\mysql\Docs\Flags\russia.eps
+file6=C:\mysql\Docs\Flags\brazil.eps
+file72=C:\mysql\Docs\Flags\sweden.eps
+file61=C:\mysql\Docs\Flags\russia.gif
+file50=C:\mysql\Docs\Flags\latvia.eps
+file7=C:\mysql\Docs\Flags\brazil.gif
+file73=C:\mysql\Docs\Flags\sweden.gif
+file62=C:\mysql\Docs\Flags\singapore.eps
+file51=C:\mysql\Docs\Flags\latvia.gif
+file40=C:\mysql\Docs\Flags\island.eps
+file8=C:\mysql\Docs\Flags\bulgaria.eps
+file74=C:\mysql\Docs\Flags\switzerland.eps
+file63=C:\mysql\Docs\Flags\singapore.gif
+file52=C:\mysql\Docs\Flags\netherlands.eps
+file41=C:\mysql\Docs\Flags\island.gif
+file30=C:\mysql\Docs\Flags\great-britain.eps
+file9=C:\mysql\Docs\Flags\bulgaria.gif
+file75=C:\mysql\Docs\Flags\switzerland.gif
+file64=C:\mysql\Docs\Flags\south-africa.eps
+file53=C:\mysql\Docs\Flags\netherlands.gif
+file42=C:\mysql\Docs\Flags\israel.eps
+file31=C:\mysql\Docs\Flags\great-britain.gif
+file20=C:\mysql\Docs\Flags\denmark.eps
+file76=C:\mysql\Docs\Flags\taiwan.eps
+file65=C:\mysql\Docs\Flags\south-africa.gif
+file54=C:\mysql\Docs\Flags\poland.eps
+file43=C:\mysql\Docs\Flags\israel.gif
+file32=C:\mysql\Docs\Flags\greece.eps
+file21=C:\mysql\Docs\Flags\denmark.gif
+file10=C:\mysql\Docs\Flags\canada.eps
+fulldirectory=
+file77=C:\mysql\Docs\Flags\taiwan.gif
+file66=C:\mysql\Docs\Flags\south-africa1.eps
+file55=C:\mysql\Docs\Flags\poland.gif
+file44=C:\mysql\Docs\Flags\italy.eps
+file33=C:\mysql\Docs\Flags\greece.gif
+file22=C:\mysql\Docs\Flags\estonia.eps
+file11=C:\mysql\Docs\Flags\canada.gif
+file78=C:\mysql\Docs\Flags\ukraine.eps
+file67=C:\mysql\Docs\Flags\south-africa1.gif
+file56=C:\mysql\Docs\Flags\portugal.eps
+file45=C:\mysql\Docs\Flags\italy.gif
+file34=C:\mysql\Docs\Flags\hungary.eps
+file23=C:\mysql\Docs\Flags\estonia.gif
+file12=C:\mysql\Docs\Flags\chile.eps
+file79=C:\mysql\Docs\Flags\ukraine.gif
+file68=C:\mysql\Docs\Flags\south-korea.eps
+file57=C:\mysql\Docs\Flags\portugal.gif
+file46=C:\mysql\Docs\Flags\japan.eps
+file35=C:\mysql\Docs\Flags\hungary.gif
+file24=C:\mysql\Docs\Flags\finland.eps
+file13=C:\mysql\Docs\Flags\chile.gif
+file69=C:\mysql\Docs\Flags\south-korea.gif
+file58=C:\mysql\Docs\Flags\romania.eps
+file47=C:\mysql\Docs\Flags\japan.gif
+file36=C:\mysql\Docs\Flags\iceland.eps
+file25=C:\mysql\Docs\Flags\finland.gif
+file14=C:\mysql\Docs\Flags\china.eps
+
+[Docs]
+file0=C:\mysql\Docs\manual_toc.html
+file1=C:\mysql\Docs\COPYING
+file2=C:\mysql\Docs\manual.html
+file3=C:\mysql\Docs\manual.txt
+SubDir0=Docs\Flags
+fulldirectory=
+
+[TopDir]
+SubDir0=Docs
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Grant Tables.fgl b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Grant Tables.fgl
new file mode 100755
index 00000000000..e5e6c82c1ea
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Grant Tables.fgl
@@ -0,0 +1,52 @@
+[data\test]
+fulldirectory=
+
+[data\mysql]
+file0=C:\mysql\data\mysql\columns_priv.frm
+file1=C:\mysql\data\mysql\columns_priv.MYD
+file2=C:\mysql\data\mysql\columns_priv.MYI
+file3=C:\mysql\data\mysql\db.frm
+file4=C:\mysql\data\mysql\db.MYD
+file5=C:\mysql\data\mysql\db.MYI
+file6=C:\mysql\data\mysql\host.frm
+file7=C:\mysql\data\mysql\host.MYD
+file8=C:\mysql\data\mysql\host.MYI
+file9=C:\mysql\data\mysql\tables_priv.frm
+file10=C:\mysql\data\mysql\tables_priv.MYD
+fulldirectory=
+file11=C:\mysql\data\mysql\tables_priv.MYI
+file12=C:\mysql\data\mysql\user.frm
+file13=C:\mysql\data\mysql\user.MYD
+file14=C:\mysql\data\mysql\user.MYI
+file15=C:\mysql\data\mysql\func.frm
+file16=C:\mysql\data\mysql\func.MYD
+file17=C:\mysql\data\mysql\func.MYI
+file18=C:\mysql\data\mysql\time_zone.MYD
+file19=C:\mysql\data\mysql\time_zone.MYI
+file20=C:\mysql\data\mysql\time_zone.frm
+file21=C:\mysql\data\mysql\time_zone_leap_second.MYD
+file22=C:\mysql\data\mysql\time_zone_leap_second.MYI
+file23=C:\mysql\data\mysql\time_zone_leap_second.frm
+file24=C:\mysql\data\mysql\time_zone_name.MYD
+file25=C:\mysql\data\mysql\time_zone_name.MYI
+file26=C:\mysql\data\mysql\time_zone_name.frm
+file27=C:\mysql\data\mysql\time_zone_transition.MYD
+file28=C:\mysql\data\mysql\time_zone_transition.MYI
+file29=C:\mysql\data\mysql\time_zone_transition.frm
+file30=C:\mysql\data\mysql\time_zone_transition_type.MYD
+file31=C:\mysql\data\mysql\time_zone_transition_type.MYI
+file32=C:\mysql\data\mysql\time_zone_transition_type.frm
+
+
+[TopDir]
+SubDir0=data
+
+[data]
+SubDir0=data\mysql
+SubDir1=data\test
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Servers.fgl b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Servers.fgl
new file mode 100755
index 00000000000..6564512de2c
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/File Groups/Servers.fgl
@@ -0,0 +1,253 @@
+[Embedded\Static\release]
+file0=C:\mysql\embedded\Static\release\test_stc.dsp
+file1=C:\mysql\embedded\Static\release\ReadMe.txt
+file2=C:\mysql\embedded\Static\release\StdAfx.cpp
+file3=C:\mysql\embedded\Static\release\StdAfx.h
+file4=C:\mysql\embedded\Static\release\test_stc.cpp
+file5=C:\mysql\embedded\Static\release\mysqlserver.lib
+fulldirectory=
+
+[share\polish]
+file0=C:\mysql\share\polish\errmsg.sys
+file1=C:\mysql\share\polish\errmsg.txt
+fulldirectory=
+
+[share\dutch]
+file0=C:\mysql\share\dutch\errmsg.sys
+file1=C:\mysql\share\dutch\errmsg.txt
+fulldirectory=
+
+[share\spanish]
+file0=C:\mysql\share\spanish\errmsg.sys
+file1=C:\mysql\share\spanish\errmsg.txt
+fulldirectory=
+
+[share\english]
+file0=C:\mysql\share\english\errmsg.sys
+file1=C:\mysql\share\english\errmsg.txt
+fulldirectory=
+
+[bin]
+file0=C:\mysql\bin\mysqld-opt.exe
+file1=C:\mysql\bin\mysqld-max.exe
+file2=C:\mysql\bin\mysqld-max-nt.exe
+file3=C:\mysql\bin\mysqld-nt.exe
+file4=C:\mysql\bin\mysqld.exe
+file5=C:\mysql\bin\cygwinb19.dll
+file6=C:\mysql\bin\libmySQL.dll
+fulldirectory=
+
+[share\korean]
+file0=C:\mysql\share\korean\errmsg.sys
+file1=C:\mysql\share\korean\errmsg.txt
+fulldirectory=
+
+[share\charsets]
+file0=C:\mysql\share\charsets\cp1250.xml
+file1=C:\mysql\share\charsets\cp1251.conf
+file2=C:\mysql\share\charsets\cp1251.xml
+file3=C:\mysql\share\charsets\cp1256.xml
+file1=C:\mysql\share\charsets\cp1257.conf
+file4=C:\mysql\share\charsets\cp1257.xml
+file5=C:\mysql\share\charsets\cp850.xml
+file6=C:\mysql\share\charsets\cp852.xml
+file7=C:\mysql\share\charsets\cp866.xml
+file8=C:\mysql\share\charsets\croat.conf
+file9=C:\mysql\share\charsets\danish.conf
+file10=C:\mysql\share\charsets\dec8.conf
+file10=C:\mysql\share\charsets\dec8.xml
+file11=C:\mysql\share\charsets\dos.conf
+file12=C:\mysql\share\charsets\estonia.conf
+file13=C:\mysql\share\charsets\geostd8.xml
+file14=C:\mysql\share\charsets\german1.conf
+file15=C:\mysql\share\charsets\greek.xml
+file16=C:\mysql\share\charsets\greek.conf
+file17=C:\mysql\share\charsets\hebrew.xml
+file18=C:\mysql\share\charsets\hebrew.conf
+file19=C:\mysql\share\charsets\hp8.xml
+file20=C:\mysql\share\charsets\hp8.conf
+file21=C:\mysql\share\charsets\hungarian.conf
+file22=C:\mysql\share\charsets\keybcs2.xml
+file23=C:\mysql\share\charsets\koi8_ru.conf
+file24=C:\mysql\share\charsets\koi8_ukr.conf
+file25=C:\mysql\share\charsets\koi8r.xml
+file26=C:\mysql\share\charsets\koi8u.xml
+file27=C:\mysql\share\charsets\latin1.conf
+file28=C:\mysql\share\charsets\latin1.xml
+file29=C:\mysql\share\charsets\latin2.conf
+file30=C:\mysql\share\charsets\latin2.xml
+file31=C:\mysql\share\charsets\latin5.conf
+file32=C:\mysql\share\charsets\latin5.xml
+file33=C:\mysql\share\charsets\latin7.xml
+file34=C:\mysql\share\charsets\macce.xml
+file35=C:\mysql\share\charsets\macroman.xml
+file36=C:\mysql\share\charsets\swe7.conf
+file37=C:\mysql\share\charsets\swe7.xml
+file38=C:\mysql\share\charsets\usa7.conf
+file39=C:\mysql\share\charsets\win1250.conf
+file40=C:\mysql\share\charsets\win1251ukr.conf
+file41=C:\mysql\share\charsets\win1251.conf
+file42=C:\mysql\share\charsets\Index
+file43=C:\mysql\share\charsets\Index.xml
+file44=C:\mysql\share\charsets\Readme
+file45=C:\mysql\share\charsets\languages.html
+fulldirectory=
+
+[Embedded\DLL\debug]
+file0=C:\mysql\embedded\DLL\debug\libmysqld.dll
+file1=C:\mysql\embedded\DLL\debug\libmysqld.exp
+file2=C:\mysql\embedded\DLL\debug\libmysqld.lib
+fulldirectory=
+
+[Embedded]
+file0=C:\mysql\embedded\embedded.dsw
+SubDir0=Embedded\DLL
+SubDir1=Embedded\Static
+fulldirectory=
+
+[share\ukrainian]
+file0=C:\mysql\share\ukrainian\errmsg.sys
+file1=C:\mysql\share\ukrainian\errmsg.txt
+fulldirectory=
+
+[share\hungarian]
+file0=C:\mysql\share\hungarian\errmsg.sys
+file1=C:\mysql\share\hungarian\errmsg.txt
+fulldirectory=
+
+[share\german]
+file0=C:\mysql\share\german\errmsg.sys
+file1=C:\mysql\share\german\errmsg.txt
+fulldirectory=
+
+[share\portuguese]
+file0=C:\mysql\share\portuguese\errmsg.sys
+file1=C:\mysql\share\portuguese\errmsg.txt
+fulldirectory=
+
+[share\estonian]
+file0=C:\mysql\share\estonian\errmsg.sys
+file1=C:\mysql\share\estonian\errmsg.txt
+fulldirectory=
+
+[share\romanian]
+file0=C:\mysql\share\romanian\errmsg.sys
+file1=C:\mysql\share\romanian\errmsg.txt
+fulldirectory=
+
+[share\french]
+file0=C:\mysql\share\french\errmsg.sys
+file1=C:\mysql\share\french\errmsg.txt
+fulldirectory=
+
+[share\swedish]
+file0=C:\mysql\share\swedish\errmsg.sys
+file1=C:\mysql\share\swedish\errmsg.txt
+fulldirectory=
+
+[share\slovak]
+file0=C:\mysql\share\slovak\errmsg.sys
+file1=C:\mysql\share\slovak\errmsg.txt
+fulldirectory=
+
+[share\greek]
+file0=C:\mysql\share\greek\errmsg.sys
+file1=C:\mysql\share\greek\errmsg.txt
+fulldirectory=
+
+[TopDir]
+file0=C:\mysql\mysqlbug.txt
+file1=C:\mysql\my-huge.cnf
+file2=C:\mysql\my-large.cnf
+file3=C:\mysql\my-medium.cnf
+file4=C:\mysql\my-small.cnf
+file5=C:\mysql\README.txt
+SubDir0=bin
+SubDir1=share
+SubDir2=Embedded
+
+[share]
+SubDir8=share\hungarian
+SubDir9=share\charsets
+SubDir20=share\spanish
+SubDir21=share\swedish
+SubDir10=share\italian
+SubDir22=share\ukrainian
+SubDir11=share\japanese
+SubDir12=share\korean
+SubDir13=share\norwegian
+SubDir14=share\norwegian-ny
+SubDir15=share\polish
+SubDir16=share\portuguese
+SubDir0=share\czech
+SubDir17=share\romanian
+SubDir1=share\danish
+SubDir18=share\russian
+SubDir2=share\dutch
+SubDir19=share\slovak
+SubDir3=share\english
+fulldirectory=
+SubDir4=share\estonian
+SubDir5=share\french
+SubDir6=share\german
+SubDir7=share\greek
+
+[share\norwegian-ny]
+file0=C:\mysql\share\norwegian-ny\errmsg.sys
+file1=C:\mysql\share\norwegian-ny\errmsg.txt
+fulldirectory=
+
+[Embedded\DLL]
+file0=C:\mysql\embedded\DLL\test_dll.dsp
+file1=C:\mysql\embedded\DLL\StdAfx.h
+file2=C:\mysql\embedded\DLL\test_dll.cpp
+file3=C:\mysql\embedded\DLL\StdAfx.cpp
+SubDir0=Embedded\DLL\debug
+SubDir1=Embedded\DLL\release
+fulldirectory=
+
+[Embedded\Static]
+SubDir0=Embedded\Static\release
+fulldirectory=
+
+[Embedded\DLL\release]
+file0=C:\mysql\embedded\DLL\release\libmysqld.dll
+file1=C:\mysql\embedded\DLL\release\libmysqld.exp
+file2=C:\mysql\embedded\DLL\release\libmysqld.lib
+file3=C:\mysql\embedded\DLL\release\mysql-server.exe
+fulldirectory=
+
+[share\danish]
+file0=C:\mysql\share\danish\errmsg.sys
+file1=C:\mysql\share\danish\errmsg.txt
+fulldirectory=
+
+[share\czech]
+file0=C:\mysql\share\czech\errmsg.sys
+file1=C:\mysql\share\czech\errmsg.txt
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[share\russian]
+file0=C:\mysql\share\russian\errmsg.sys
+file1=C:\mysql\share\russian\errmsg.txt
+fulldirectory=
+
+[share\norwegian]
+file0=C:\mysql\share\norwegian\errmsg.sys
+file1=C:\mysql\share\norwegian\errmsg.txt
+fulldirectory=
+
+[share\japanese]
+file0=C:\mysql\share\japanese\errmsg.sys
+file1=C:\mysql\share\japanese\errmsg.txt
+fulldirectory=
+
+[share\italian]
+file0=C:\mysql\share\italian\errmsg.sys
+file1=C:\mysql\share\italian\errmsg.txt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Registry Entries/Default.rge b/VC++Files/InstallShield/4.1.XX-gpl/Registry Entries/Default.rge
new file mode 100755
index 00000000000..537dfd82e48
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Registry Entries/Default.rge
@@ -0,0 +1,4 @@
+[General]
+Type=REGISTRYDATA
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.dbg b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.dbg
new file mode 100755
index 00000000000..0c6d4e6b708
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.dbg
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.ino b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.ino
new file mode 100755
index 00000000000..204d8ea0f36
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.ino
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.ins b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.ins
new file mode 100755
index 00000000000..759009b5c84
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.ins
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.obs b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.obs
new file mode 100755
index 00000000000..5fcfcb62c4e
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.obs
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.rul.old b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.rul.old
new file mode 100755
index 00000000000..df143b493c4
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/Setup.rul.old
@@ -0,0 +1,640 @@
+
+////////////////////////////////////////////////////////////////////////////////
+//
+// IIIIIII SSSSSS
+// II SS InstallShield (R)
+// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
+// II SS (c) 1990-1996, InstallShield Corporation
+// IIIIIII SSSSSS All Rights Reserved.
+//
+//
+// This code is generated as a starting setup template. You should
+// modify it to provide all necessary steps for your setup.
+//
+//
+// File Name: Setup.rul
+//
+// Description: InstallShield script
+//
+// Comments: This template script performs a basic setup on a
+// Windows 95 or Windows NT 4.0 platform. With minor
+// modifications, this template can be adapted to create
+// new, customized setups.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+
+ // Include header file
+#include "sdlang.h"
+#include "sddialog.h"
+
+////////////////////// string defines ////////////////////////////
+
+#define UNINST_LOGFILE_NAME "Uninst.isu"
+
+//////////////////// installation declarations ///////////////////
+
+ // ----- DLL prototypes -----
+
+
+ // your DLL prototypes
+
+
+ // ---- script prototypes -----
+
+ // generated
+ prototype ShowDialogs();
+ prototype MoveFileData();
+ prototype HandleMoveDataError( NUMBER );
+ prototype ProcessBeforeDataMove();
+ prototype ProcessAfterDataMove();
+ prototype SetupRegistry();
+ prototype SetupFolders();
+ prototype CleanUpInstall();
+ prototype SetupInstall();
+ prototype SetupScreen();
+ prototype CheckRequirements();
+ prototype DialogShowSdWelcome();
+ prototype DialogShowSdShowInfoList();
+ prototype DialogShowSdAskDestPath();
+ prototype DialogShowSdSetupType();
+ prototype DialogShowSdComponentDialog2();
+ prototype DialogShowSdFinishReboot();
+
+ // your prototypes
+
+
+ // ----- global variables ------
+
+ // generated
+ BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
+ STRING svDir;
+ STRING svName, svCompany, svSerial;
+ STRING szAppPath;
+ STRING svSetupType;
+
+
+ // your global variables
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// MAIN PROGRAM
+//
+// The setup begins here by hiding the visible setup
+// window. This is done to allow all the titles, images, etc. to
+// be established before showing the main window. The following
+// logic then performs the setup in a series of steps.
+//
+///////////////////////////////////////////////////////////////////////////////
+program
+ Disable( BACKGROUND );
+
+ CheckRequirements();
+
+ SetupInstall();
+
+ SetupScreen();
+
+ if (ShowDialogs()<0) goto end_install;
+
+ if (ProcessBeforeDataMove()<0) goto end_install;
+
+ if (MoveFileData()<0) goto end_install;
+
+ if (ProcessAfterDataMove()<0) goto end_install;
+
+ if (SetupRegistry()<0) goto end_install;
+
+ if (SetupFolders()<0) goto end_install;
+
+
+ end_install:
+
+ CleanUpInstall();
+
+ // If an unrecoverable error occurred, clean up the partial installation.
+ // Otherwise, exit normally.
+
+ if (bInstallAborted) then
+ abort;
+ endif;
+
+endprogram
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ShowDialogs //
+// //
+// Purpose: This function manages the display and navigation //
+// the standard dialogs that exist in a setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ShowDialogs()
+ NUMBER nResult;
+ begin
+
+ Dlg_Start:
+ // beginning of dialogs label
+
+ Dlg_SdWelcome:
+ nResult = DialogShowSdWelcome();
+ if (nResult = BACK) goto Dlg_Start;
+
+ Dlg_SdShowInfoList:
+ nResult = DialogShowSdShowInfoList();
+ if (nResult = BACK) goto Dlg_SdWelcome;
+
+ Dlg_SdAskDestPath:
+ nResult = DialogShowSdAskDestPath();
+ if (nResult = BACK) goto Dlg_SdShowInfoList;
+
+ Dlg_SdSetupType:
+ nResult = DialogShowSdSetupType();
+ if (nResult = BACK) goto Dlg_SdAskDestPath;
+
+ Dlg_SdComponentDialog2:
+ if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
+ goto Dlg_SdSetupType;
+ endif;
+ nResult = DialogShowSdComponentDialog2();
+ if (nResult = BACK) goto Dlg_SdSetupType;
+
+ return 0;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessBeforeDataMove //
+// //
+// Purpose: This function performs any necessary operations prior to the //
+// actual data move operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessBeforeDataMove()
+ STRING svLogFile;
+ NUMBER nResult;
+ begin
+
+ InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );
+
+ svLogFile = UNINST_LOGFILE_NAME;
+
+ nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
+ if (nResult < 0) then
+ MessageBox( @ERROR_UNINSTSETUP, WARNING );
+ endif;
+
+ szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir
+
+ if ((bIs32BitSetup) && (bIsShellExplorer)) then
+ RegDBSetItem( REGDB_APPPATH, szAppPath );
+ RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
+ RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
+ endif;
+
+ // TODO : update any items you want to process before moving the data
+ //
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: MoveFileData //
+// //
+// Purpose: This function handles the data movement for //
+// the setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function MoveFileData()
+ NUMBER nResult, nDisk;
+ begin
+
+ nDisk = 1;
+ SetStatusWindow( 0, "" );
+ Disable( DIALOGCACHE );
+ Enable( STATUS );
+ StatusUpdate( ON, 100 );
+ nResult = ComponentMoveData( MEDIA, nDisk, 0 );
+
+ HandleMoveDataError( nResult );
+
+ Disable( STATUS );
+
+ return nResult;
+
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: HandleMoveDataError //
+// //
+// Purpose: This function handles the error (if any) during the move data //
+// operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function HandleMoveDataError( nResult )
+ STRING szErrMsg, svComponent , svFileGroup , svFile;
+ begin
+
+ svComponent = "";
+ svFileGroup = "";
+ svFile = "";
+
+ switch (nResult)
+ case 0:
+ return 0;
+ default:
+ ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
+ szErrMsg = @ERROR_MOVEDATA + "\n\n" +
+ @ERROR_COMPONENT + " " + svComponent + "\n" +
+ @ERROR_FILEGROUP + " " + svFileGroup + "\n" +
+ @ERROR_FILE + " " + svFile;
+ SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
+ bInstallAborted = TRUE;
+ return nResult;
+ endswitch;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessAfterDataMove //
+// //
+// Purpose: This function performs any necessary operations needed after //
+// all data has been moved. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessAfterDataMove()
+ begin
+
+ // TODO : update self-registered files and other processes that
+ // should be performed after the data has been moved.
+
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupRegistry //
+// //
+// Purpose: This function makes the registry entries for this setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupRegistry()
+ NUMBER nResult;
+
+ begin
+
+ // TODO : Add all your registry entry keys here
+ //
+ //
+ // RegDBCreateKeyEx, RegDBSetKeyValueEx....
+ //
+
+ nResult = CreateRegistrySet( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// Function: SetupFolders
+//
+// Purpose: This function creates all the folders and shortcuts for the
+// setup. This includes program groups and items for Windows 3.1.
+//
+///////////////////////////////////////////////////////////////////////////////
+function SetupFolders()
+ NUMBER nResult;
+
+ begin
+
+
+ // TODO : Add all your folder (program group) along with shortcuts (program items)
+ //
+ //
+ // CreateProgramFolder, AddFolderIcon....
+ //
+
+ nResult = CreateShellObjects( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CleanUpInstall //
+// //
+// Purpose: This cleans up the setup. Anything that should //
+// be released or deleted at the end of the setup should //
+// be done here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CleanUpInstall()
+ begin
+
+
+ if (bInstallAborted) then
+ return 0;
+ endif;
+
+ DialogShowSdFinishReboot();
+
+ if (BATCH_INSTALL) then // ensure locked files are properly written
+ CommitSharedFiles(0);
+ endif;
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupInstall //
+// //
+// Purpose: This will setup the installation. Any general initialization //
+// needed for the installation should be performed here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupInstall()
+ begin
+
+ Enable( CORECOMPONENTHANDLING );
+
+ bInstallAborted = FALSE;
+
+ if (bIs32BitSetup) then
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
+ else
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
+ endif;
+
+ TARGETDIR = svDir;
+
+ SdProductName( @PRODUCT_NAME );
+
+ Enable( DIALOGCACHE );
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupScreen //
+// //
+// Purpose: This function establishes the screen look. This includes //
+// colors, fonts, and text to be displayed. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupScreen()
+ begin
+
+ Enable( FULLWINDOWMODE );
+ Enable( INDVFILESTATUS );
+ SetTitle( @TITLE_MAIN, 24, WHITE );
+
+ SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.
+
+ Enable( BACKGROUND );
+
+ Delay( 1 );
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CheckRequirements //
+// //
+// Purpose: This function checks all minimum requirements for the //
+// application being installed. If any fail, then the user //
+// is informed and the setup is terminated. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CheckRequirements()
+ NUMBER nvDx, nvDy, nvResult;
+ STRING svResult;
+
+ begin
+
+ bWinNT = FALSE;
+ bIsShellExplorer = FALSE;
+
+ // Check screen resolution.
+ GetExtents( nvDx, nvDy );
+
+ if (nvDy < 480) then
+ MessageBox( @ERROR_VGARESOLUTION, WARNING );
+ abort;
+ endif;
+
+ // set 'setup' operation mode
+ bIs32BitSetup = TRUE;
+ GetSystemInfo( ISTYPE, nvResult, svResult );
+ if (nvResult = 16) then
+ bIs32BitSetup = FALSE; // running 16-bit setup
+ return 0; // no additional information required
+ endif;
+
+ // --- 32-bit testing after this point ---
+
+ // Determine the target system's operating system.
+ GetSystemInfo( OS, nvResult, svResult );
+
+ if (nvResult = IS_WINDOWSNT) then
+ // Running Windows NT.
+ bWinNT = TRUE;
+
+ // Check to see if the shell being used is EXPLORER shell.
+ if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
+ if (nvResult >= 4) then
+ bIsShellExplorer = TRUE;
+ endif;
+ endif;
+
+ elseif (nvResult = IS_WINDOWS95 ) then
+ bIsShellExplorer = TRUE;
+
+ endif;
+
+end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdWelcome //
+// //
+// Purpose: This function handles the standard welcome dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdWelcome()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdWelcome( szTitle, szMsg );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdShowInfoList //
+// //
+// Purpose: This function displays the general information list dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdShowInfoList()
+ NUMBER nResult;
+ LIST list;
+ STRING szTitle, szMsg, szFile;
+ begin
+
+ szFile = SUPPORTDIR ^ "infolist.txt";
+
+ list = ListCreate( STRINGLIST );
+ ListReadFromFile( list, szFile );
+ szTitle = "";
+ szMsg = " ";
+ nResult = SdShowInfoList( szTitle, szMsg, list );
+
+ ListDestroy( list );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdAskDestPath //
+// //
+// Purpose: This function asks the user for the destination directory. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdAskDestPath()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );
+
+ TARGETDIR = svDir;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdSetupType //
+// //
+// Purpose: This function displays the standard setup type dialog. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdSetupType()
+ NUMBER nResult, nType;
+ STRING szTitle, szMsg;
+ begin
+
+ switch (svSetupType)
+ case "Typical":
+ nType = TYPICAL;
+ case "Custom":
+ nType = CUSTOM;
+ case "Compact":
+ nType = COMPACT;
+ case "":
+ svSetupType = "Typical";
+ nType = TYPICAL;
+ endswitch;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SetupType( szTitle, szMsg, "", nType, 0 );
+
+ switch (nResult)
+ case COMPACT:
+ svSetupType = "Compact";
+ case TYPICAL:
+ svSetupType = "Typical";
+ case CUSTOM:
+ svSetupType = "Custom";
+ endswitch;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdComponentDialog2 //
+// //
+// Purpose: This function displays the custom component dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdComponentDialog2()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ if ((svSetupType != "Custom") && (svSetupType != "")) then
+ return 0;
+ endif;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdFinishReboot //
+// //
+// Purpose: This function will show the last dialog of the product. //
+// It will allow the user to reboot and/or show some readme text. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdFinishReboot()
+ NUMBER nResult, nDefOptions;
+ STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
+ NUMBER bOpt1, bOpt2;
+ begin
+
+ if (!BATCH_INSTALL) then
+ bOpt1 = FALSE;
+ bOpt2 = FALSE;
+ szMsg1 = "";
+ szMsg2 = "";
+ szOption1 = "";
+ szOption2 = "";
+ nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
+ return 0;
+ endif;
+
+ nDefOptions = SYS_BOOTMACHINE;
+ szTitle = "";
+ szMsg1 = "";
+ szMsg2 = "";
+ nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );
+
+ return nResult;
+ end;
+
+ // --- include script file section ---
+
+#include "sddialog.rul"
+
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Script Files/setup.rul b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/setup.rul
new file mode 100755
index 00000000000..73d61114075
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Script Files/setup.rul
@@ -0,0 +1,641 @@
+
+////////////////////////////////////////////////////////////////////////////////
+//
+// IIIIIII SSSSSS
+// II SS InstallShield (R)
+// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
+// II SS (c) 1990-1996, InstallShield Corporation
+// IIIIIII SSSSSS All Rights Reserved.
+//
+//
+// This code is generated as a starting setup template. You should
+// modify it to provide all necessary steps for your setup.
+//
+//
+// File Name: Setup.rul
+//
+// Description: InstallShield script
+//
+// Comments: This template script performs a basic setup on a
+// Windows 95 or Windows NT 4.0 platform. With minor
+// modifications, this template can be adapted to create
+// new, customized setups.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+
+ // Include header file
+#include "sdlang.h"
+#include "sddialog.h"
+
+////////////////////// string defines ////////////////////////////
+
+#define UNINST_LOGFILE_NAME "Uninst.isu"
+
+//////////////////// installation declarations ///////////////////
+
+ // ----- DLL prototypes -----
+
+
+ // your DLL prototypes
+
+
+ // ---- script prototypes -----
+
+ // generated
+ prototype ShowDialogs();
+ prototype MoveFileData();
+ prototype HandleMoveDataError( NUMBER );
+ prototype ProcessBeforeDataMove();
+ prototype ProcessAfterDataMove();
+ prototype SetupRegistry();
+ prototype SetupFolders();
+ prototype CleanUpInstall();
+ prototype SetupInstall();
+ prototype SetupScreen();
+ prototype CheckRequirements();
+ prototype DialogShowSdWelcome();
+ prototype DialogShowSdShowInfoList();
+ prototype DialogShowSdAskDestPath();
+ prototype DialogShowSdSetupType();
+ prototype DialogShowSdComponentDialog2();
+ prototype DialogShowSdFinishReboot();
+
+ // your prototypes
+
+
+ // ----- global variables ------
+
+ // generated
+ BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
+ STRING svDir;
+ STRING svName, svCompany, svSerial;
+ STRING szAppPath;
+ STRING svSetupType;
+
+
+ // your global variables
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// MAIN PROGRAM
+//
+// The setup begins here by hiding the visible setup
+// window. This is done to allow all the titles, images, etc. to
+// be established before showing the main window. The following
+// logic then performs the setup in a series of steps.
+//
+///////////////////////////////////////////////////////////////////////////////
+program
+ Disable( BACKGROUND );
+
+ CheckRequirements();
+
+ SetupInstall();
+
+ SetupScreen();
+
+ if (ShowDialogs()<0) goto end_install;
+
+ if (ProcessBeforeDataMove()<0) goto end_install;
+
+ if (MoveFileData()<0) goto end_install;
+
+ if (ProcessAfterDataMove()<0) goto end_install;
+
+ if (SetupRegistry()<0) goto end_install;
+
+ if (SetupFolders()<0) goto end_install;
+
+
+ end_install:
+
+ CleanUpInstall();
+
+ // If an unrecoverable error occurred, clean up the partial installation.
+ // Otherwise, exit normally.
+
+ if (bInstallAborted) then
+ abort;
+ endif;
+
+endprogram
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ShowDialogs //
+// //
+// Purpose: This function manages the display and navigation //
+// the standard dialogs that exist in a setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ShowDialogs()
+ NUMBER nResult;
+ begin
+
+ Dlg_Start:
+ // beginning of dialogs label
+
+ Dlg_SdWelcome:
+ nResult = DialogShowSdWelcome();
+ if (nResult = BACK) goto Dlg_Start;
+
+ Dlg_SdShowInfoList:
+ nResult = DialogShowSdShowInfoList();
+ if (nResult = BACK) goto Dlg_SdWelcome;
+
+ Dlg_SdAskDestPath:
+ nResult = DialogShowSdAskDestPath();
+ if (nResult = BACK) goto Dlg_SdShowInfoList;
+
+ Dlg_SdSetupType:
+ nResult = DialogShowSdSetupType();
+ if (nResult = BACK) goto Dlg_SdAskDestPath;
+
+ Dlg_SdComponentDialog2:
+ if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
+ goto Dlg_SdSetupType;
+ endif;
+ nResult = DialogShowSdComponentDialog2();
+ if (nResult = BACK) goto Dlg_SdSetupType;
+
+ return 0;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessBeforeDataMove //
+// //
+// Purpose: This function performs any necessary operations prior to the //
+// actual data move operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessBeforeDataMove()
+ STRING svLogFile;
+ NUMBER nResult;
+ begin
+
+ InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );
+
+ svLogFile = UNINST_LOGFILE_NAME;
+
+ nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
+ if (nResult < 0) then
+ MessageBox( @ERROR_UNINSTSETUP, WARNING );
+ endif;
+
+ szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir
+
+ if ((bIs32BitSetup) && (bIsShellExplorer)) then
+// RegDBSetItem( REGDB_APPPATH, szAppPath );
+// RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
+ RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
+ endif;
+
+ // TODO : update any items you want to process before moving the data
+ //
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: MoveFileData //
+// //
+// Purpose: This function handles the data movement for //
+// the setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function MoveFileData()
+ NUMBER nResult, nDisk;
+ begin
+
+ nDisk = 1;
+ SetStatusWindow( 0, "" );
+ Disable( DIALOGCACHE );
+ Enable( STATUS );
+ StatusUpdate( ON, 100 );
+ nResult = ComponentMoveData( MEDIA, nDisk, 0 );
+
+ HandleMoveDataError( nResult );
+
+ Disable( STATUS );
+
+ return nResult;
+
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: HandleMoveDataError //
+// //
+// Purpose: This function handles the error (if any) during the move data //
+// operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function HandleMoveDataError( nResult )
+ STRING szErrMsg, svComponent , svFileGroup , svFile;
+ begin
+
+ svComponent = "";
+ svFileGroup = "";
+ svFile = "";
+
+ switch (nResult)
+ case 0:
+ return 0;
+ default:
+ ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
+ szErrMsg = @ERROR_MOVEDATA + "\n\n" +
+ @ERROR_COMPONENT + " " + svComponent + "\n" +
+ @ERROR_FILEGROUP + " " + svFileGroup + "\n" +
+ @ERROR_FILE + " " + svFile;
+ SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
+ bInstallAborted = TRUE;
+ return nResult;
+ endswitch;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessAfterDataMove //
+// //
+// Purpose: This function performs any necessary operations needed after //
+// all data has been moved. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessAfterDataMove()
+ begin
+
+ // TODO : update self-registered files and other processes that
+ // should be performed after the data has been moved.
+
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupRegistry //
+// //
+// Purpose: This function makes the registry entries for this setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupRegistry()
+ NUMBER nResult;
+
+ begin
+
+ // TODO : Add all your registry entry keys here
+ //
+ //
+ // RegDBCreateKeyEx, RegDBSetKeyValueEx....
+ //
+
+ nResult = CreateRegistrySet( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// Function: SetupFolders
+//
+// Purpose: This function creates all the folders and shortcuts for the
+// setup. This includes program groups and items for Windows 3.1.
+//
+///////////////////////////////////////////////////////////////////////////////
+function SetupFolders()
+ NUMBER nResult;
+
+ begin
+
+
+ // TODO : Add all your folder (program group) along with shortcuts (program items)
+ //
+ //
+ // CreateProgramFolder, AddFolderIcon....
+ //
+
+ nResult = CreateShellObjects( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CleanUpInstall //
+// //
+// Purpose: This cleans up the setup. Anything that should //
+// be released or deleted at the end of the setup should //
+// be done here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CleanUpInstall()
+ begin
+
+
+ if (bInstallAborted) then
+ return 0;
+ endif;
+
+ DialogShowSdFinishReboot();
+
+ if (BATCH_INSTALL) then // ensure locked files are properly written
+ CommitSharedFiles(0);
+ endif;
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupInstall //
+// //
+// Purpose: This will setup the installation. Any general initialization //
+// needed for the installation should be performed here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupInstall()
+ begin
+
+ Enable( CORECOMPONENTHANDLING );
+
+ bInstallAborted = FALSE;
+
+ if (bIs32BitSetup) then
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
+ else
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
+ endif;
+
+ TARGETDIR = svDir;
+
+ SdProductName( @PRODUCT_NAME );
+
+ Enable( DIALOGCACHE );
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupScreen //
+// //
+// Purpose: This function establishes the screen look. This includes //
+// colors, fonts, and text to be displayed. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupScreen()
+ begin
+
+ Enable( FULLWINDOWMODE );
+ Enable( INDVFILESTATUS );
+ SetTitle( @TITLE_MAIN, 24, WHITE );
+
+ SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.
+
+ Enable( BACKGROUND );
+
+ Delay( 1 );
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CheckRequirements //
+// //
+// Purpose: This function checks all minimum requirements for the //
+// application being installed. If any fail, then the user //
+// is informed and the setup is terminated. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CheckRequirements()
+ NUMBER nvDx, nvDy, nvResult;
+ STRING svResult;
+
+ begin
+
+ bWinNT = FALSE;
+ bIsShellExplorer = FALSE;
+
+ // Check screen resolution.
+ GetExtents( nvDx, nvDy );
+
+ if (nvDy < 480) then
+ MessageBox( @ERROR_VGARESOLUTION, WARNING );
+ abort;
+ endif;
+
+ // set 'setup' operation mode
+ bIs32BitSetup = TRUE;
+ GetSystemInfo( ISTYPE, nvResult, svResult );
+ if (nvResult = 16) then
+ bIs32BitSetup = FALSE; // running 16-bit setup
+ return 0; // no additional information required
+ endif;
+
+ // --- 32-bit testing after this point ---
+
+ // Determine the target system's operating system.
+ GetSystemInfo( OS, nvResult, svResult );
+
+ if (nvResult = IS_WINDOWSNT) then
+ // Running Windows NT.
+ bWinNT = TRUE;
+
+ // Check to see if the shell being used is EXPLORER shell.
+ if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
+ if (nvResult >= 4) then
+ bIsShellExplorer = TRUE;
+ endif;
+ endif;
+
+ elseif (nvResult = IS_WINDOWS95 ) then
+ bIsShellExplorer = TRUE;
+
+ endif;
+
+end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdWelcome //
+// //
+// Purpose: This function handles the standard welcome dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdWelcome()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdWelcome( szTitle, szMsg );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdShowInfoList //
+// //
+// Purpose: This function displays the general information list dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdShowInfoList()
+ NUMBER nResult;
+ LIST list;
+ STRING szTitle, szMsg, szFile;
+ begin
+
+ szFile = SUPPORTDIR ^ "infolist.txt";
+
+ list = ListCreate( STRINGLIST );
+ ListReadFromFile( list, szFile );
+ szTitle = "";
+ szMsg = " ";
+ nResult = SdShowInfoList( szTitle, szMsg, list );
+
+ ListDestroy( list );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdAskDestPath //
+// //
+// Purpose: This function asks the user for the destination directory. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdAskDestPath()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );
+
+ TARGETDIR = svDir;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdSetupType //
+// //
+// Purpose: This function displays the standard setup type dialog. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdSetupType()
+ NUMBER nResult, nType;
+ STRING szTitle, szMsg;
+ begin
+
+ switch (svSetupType)
+ case "Typical":
+ nType = TYPICAL;
+ case "Custom":
+ nType = CUSTOM;
+ case "Compact":
+ nType = COMPACT;
+ case "":
+ svSetupType = "Typical";
+ nType = TYPICAL;
+ endswitch;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SetupType( szTitle, szMsg, "", nType, 0 );
+
+ switch (nResult)
+ case COMPACT:
+ svSetupType = "Compact";
+ case TYPICAL:
+ svSetupType = "Typical";
+ case CUSTOM:
+ svSetupType = "Custom";
+ endswitch;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdComponentDialog2 //
+// //
+// Purpose: This function displays the custom component dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdComponentDialog2()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ if ((svSetupType != "Custom") && (svSetupType != "")) then
+ return 0;
+ endif;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdFinishReboot //
+// //
+// Purpose: This function will show the last dialog of the product. //
+// It will allow the user to reboot and/or show some readme text. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdFinishReboot()
+ NUMBER nResult, nDefOptions;
+ STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
+ NUMBER bOpt1, bOpt2;
+ begin
+
+ if (!BATCH_INSTALL) then
+ bOpt1 = FALSE;
+ bOpt2 = FALSE;
+ szMsg1 = "";
+ szMsg2 = "";
+ szOption1 = "";
+ szOption2 = "";
+ nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
+ return 0;
+ endif;
+
+ nDefOptions = SYS_BOOTMACHINE;
+ szTitle = "";
+ szMsg1 = "";
+ szMsg2 = "";
+ nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );
+
+ return nResult;
+ end;
+
+ // --- include script file section ---
+
+#include "sddialog.rul"
+
+
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt b/VC++Files/InstallShield/4.1.XX-gpl/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
new file mode 100755
index 00000000000..acdf4f48618
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
@@ -0,0 +1,25 @@
+This is a release of MySQL @VERSION@ for Win32.
+
+NOTE: If you install MySQL in a folder other than
+C:\MYSQL or you intend to start MySQL on NT/Win2000
+as a service, you must create a file named C:\MY.CNF
+or \Windows\my.ini or \winnt\my.ini with the following
+information::
+
+[mysqld]
+basedir=E:/installation-path/
+datadir=E:/data-path/
+
+After your have installed MySQL, the installation
+directory will contain 4 files named 'my-small.cnf,
+my-medium.cnf, my-large.cnf, my-huge.cnf'.
+You can use this as a starting point for your own
+C:\my.cnf file.
+
+If you have any problems, you can mail them to
+win32@lists.mysql.com after you have consulted the
+MySQL manual and the MySQL mailing list archive
+(http://www.mysql.com/documentation/index.html)
+
+On behalf of the MySQL AB gang,
+Michael Widenius
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp b/VC++Files/InstallShield/4.1.XX-gpl/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp
new file mode 100755
index 00000000000..3229d50c9bf
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Shell Objects/Default.shl b/VC++Files/InstallShield/4.1.XX-gpl/Shell Objects/Default.shl
new file mode 100755
index 00000000000..187cb651307
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Shell Objects/Default.shl
@@ -0,0 +1,12 @@
+[Data]
+Folder3=<FOLDER_STARTUP>
+Group0=Main
+Group1=Startup
+Folder0=<FOLDER_DESKTOP>
+Folder1=<FOLDER_STARTMENU>
+Folder2=<FOLDER_PROGRAMS>
+
+[Info]
+Type=ShellObject
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/String Tables/0009-English/value.shl b/VC++Files/InstallShield/4.1.XX-gpl/String Tables/0009-English/value.shl
new file mode 100755
index 00000000000..35e7c278cc9
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/String Tables/0009-English/value.shl
@@ -0,0 +1,23 @@
+[Data]
+TITLE_MAIN=MySQL Servers and Clients @VERSION@
+COMPANY_NAME=MySQL AB
+ERROR_COMPONENT=Component:
+COMPANY_NAME16=Company
+PRODUCT_VERSION=MySQL Servers and Clients @VERSION@
+ERROR_MOVEDATA=An error occurred during the move data process: %d
+ERROR_FILEGROUP=File Group:
+UNINST_KEY=MySQL Servers and Clients @VERSION@
+TITLE_CAPTIONBAR=MySQL Servers and Clients @VERSION@
+PRODUCT_NAME16=Product
+ERROR_VGARESOLUTION=This program requires VGA or better resolution.
+ERROR_FILE=File:
+UNINST_DISPLAY_NAME=MySQL Servers and Clients @VERSION@
+PRODUCT_KEY=yourapp.Exe
+PRODUCT_NAME=MySQL Servers and Clients @VERSION@
+ERROR_UNINSTSETUP=unInstaller setup failed to initialize. You may not be able to uninstall this product.
+
+[General]
+Language=0009
+Type=STRINGTABLESPECIFIC
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/String Tables/Default.shl b/VC++Files/InstallShield/4.1.XX-gpl/String Tables/Default.shl
new file mode 100755
index 00000000000..d4dc4925ab1
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/String Tables/Default.shl
@@ -0,0 +1,74 @@
+[TITLE_MAIN]
+Comment=
+
+[COMPANY_NAME]
+Comment=
+
+[ERROR_COMPONENT]
+Comment=
+
+[COMPANY_NAME16]
+Comment=
+
+[PRODUCT_VERSION]
+Comment=
+
+[ERROR_MOVEDATA]
+Comment=
+
+[ERROR_FILEGROUP]
+Comment=
+
+[Language]
+Lang0=0009
+CurrentLang=0
+
+[UNINST_KEY]
+Comment=
+
+[TITLE_CAPTIONBAR]
+Comment=
+
+[Data]
+Entry0=ERROR_VGARESOLUTION
+Entry1=TITLE_MAIN
+Entry2=TITLE_CAPTIONBAR
+Entry3=UNINST_KEY
+Entry4=UNINST_DISPLAY_NAME
+Entry5=COMPANY_NAME
+Entry6=PRODUCT_NAME
+Entry7=PRODUCT_VERSION
+Entry8=PRODUCT_KEY
+Entry9=ERROR_MOVEDATA
+Entry10=ERROR_UNINSTSETUP
+Entry11=COMPANY_NAME16
+Entry12=PRODUCT_NAME16
+Entry13=ERROR_COMPONENT
+Entry14=ERROR_FILEGROUP
+Entry15=ERROR_FILE
+
+[PRODUCT_NAME16]
+Comment=
+
+[ERROR_VGARESOLUTION]
+Comment=
+
+[ERROR_FILE]
+Comment=
+
+[General]
+Type=STRINGTABLE
+Version=1.00.000
+
+[UNINST_DISPLAY_NAME]
+Comment=
+
+[PRODUCT_KEY]
+Comment=
+
+[PRODUCT_NAME]
+Comment=
+
+[ERROR_UNINSTSETUP]
+Comment=
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Text Substitutions/Build.tsb b/VC++Files/InstallShield/4.1.XX-gpl/Text Substitutions/Build.tsb
new file mode 100755
index 00000000000..3949bd4c066
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Text Substitutions/Build.tsb
@@ -0,0 +1,56 @@
+[<HKUS>]
+Value=
+KeyType=4
+
+[<HKCR>]
+Value=
+KeyType=4
+
+[<PROGRAMFILES>]
+Value=
+KeyType=4
+
+[<WINSYSDIR>]
+Value=
+KeyType=4
+
+[<COMMONFILES>]
+Value=
+KeyType=4
+
+[<WINDIR>]
+Value=
+KeyType=4
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<HKLM>
+Key5=<HKCU>
+Key6=<HKCC>
+Key7=<HKDD>
+Key8=<HKUS>
+Key9=<HKCR>
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKLM>]
+Value=
+KeyType=4
+
+[<HKCU>]
+Value=
+KeyType=4
+
+[<HKCC>]
+Value=
+KeyType=4
+
+[<HKDD>]
+Value=
+KeyType=4
+
diff --git a/VC++Files/InstallShield/4.1.XX-gpl/Text Substitutions/Setup.tsb b/VC++Files/InstallShield/4.1.XX-gpl/Text Substitutions/Setup.tsb
new file mode 100755
index 00000000000..b0c5a509f0b
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-gpl/Text Substitutions/Setup.tsb
@@ -0,0 +1,76 @@
+[<SRCDIR>]
+Value=
+KeyType=4
+
+[<HKUS>]
+Value=
+KeyType=4
+
+[<HKCR>]
+Value=
+KeyType=4
+
+[<PROGRAMFILES>]
+Value=
+KeyType=4
+
+[<TARGETDIR>]
+Value=
+KeyType=4
+
+[<WINSYSDIR>]
+Value=
+KeyType=4
+
+[<COMMONFILES>]
+Value=
+KeyType=4
+
+[<WINDIR>]
+Value=
+KeyType=4
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<TARGETDIR>
+Key5=<SUPPORTDIR>
+Key10=<HKDD>
+Key6=<SRCDIR>
+Key11=<HKUS>
+Key7=<HKLM>
+Key12=<HKCR>
+Key8=<HKCU>
+Key13=<SHELL_OBJECT_FOLDER>
+Key9=<HKCC>
+
+[<SUPPORTDIR>]
+Value=
+KeyType=4
+
+[<SHELL_OBJECT_FOLDER>]
+Value=
+KeyType=4
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKLM>]
+Value=
+KeyType=4
+
+[<HKCU>]
+Value=
+KeyType=4
+
+[<HKCC>]
+Value=
+KeyType=4
+
+[<HKDD>]
+Value=
+KeyType=4
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/4.1.XX-pro.ipr b/VC++Files/InstallShield/4.1.XX-pro/4.1.XX-pro.ipr
new file mode 100755
index 00000000000..b482bad05fd
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/4.1.XX-pro.ipr
@@ -0,0 +1,52 @@
+[Language]
+LanguageSupport0=0009
+
+[OperatingSystem]
+OSSupport=0000000000010010
+
+[Data]
+CurrentMedia=New Media
+CurrentComponentDef=Default.cdf
+ProductName=MySQL Servers and Clients
+set_mifserial=
+DevEnvironment=Microsoft Visual C++ 6
+AppExe=
+set_dlldebug=No
+EmailAddresss=
+Instructions=Instructions.txt
+set_testmode=No
+set_mif=No
+SummaryText=
+Department=
+HomeURL=
+Author=
+Type=Database Application
+InstallRoot=D:\MySQL-Install\4.1.xpro
+Version=1.00.000
+InstallationGUID=40744a4d-efed-4cff-84a9-9e6389550f5c
+set_level=Level 3
+CurrentFileGroupDef=Default.fdf
+Notes=Notes.txt
+set_maxerr=50
+set_args=
+set_miffile=Status.mif
+set_dllcmdline=
+Copyright=
+set_warnaserr=No
+CurrentPlatform=
+Category=
+set_preproc=
+CurrentLanguage=English
+CompanyName=MySQL
+Description=Description.txt
+set_maxwarn=50
+set_crc=Yes
+set_compileb4build=No
+
+[MediaInfo]
+mediadata0=New Media/
+
+[General]
+Type=INSTALLMAIN
+Version=1.10.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Component Definitions/Default.cdf b/VC++Files/InstallShield/4.1.XX-pro/Component Definitions/Default.cdf
new file mode 100755
index 00000000000..48d37800cd1
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Component Definitions/Default.cdf
@@ -0,0 +1,192 @@
+[Development]
+required0=Servers
+SELECTED=Yes
+FILENEED=STANDARD
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=Examples, Libraries, Includes and Script files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=Examples, Libraries, Includes and Script files
+DISPLAYTEXT=Examples, Libraries, Includes and Script files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Grant Tables]
+required0=Servers
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The Grant Tables and Core Files
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The Grant Tables and Core Files
+DISPLAYTEXT=The Grant Tables and Core Files
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Grant Tables
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Clients and Tools
+INSTALLATION=NEVEROVERWRITE
+requiredby2=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Components]
+component0=Development
+component1=Grant Tables
+component2=Servers
+component3=Clients and Tools
+component4=Documentation
+
+[TopComponents]
+component0=Servers
+component1=Clients and Tools
+component2=Documentation
+component3=Development
+component4=Grant Tables
+
+[SetupType]
+setuptype0=Compact
+setuptype1=Typical
+setuptype2=Custom
+
+[Clients and Tools]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL clients and Maintenance Tools
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL clients and Maintenance Tools
+DISPLAYTEXT=The MySQL clients and Maintenance Tools
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Clients and Tools
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=NEWERDATE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[Servers]
+SELECTED=Yes
+FILENEED=CRITICAL
+HTTPLOCATION=
+STATUS=The MySQL Servers
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Servers
+DISPLAYTEXT=The MySQL Servers
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Servers
+requiredby0=Development
+COMMENT=
+INCLUDEINBUILD=Yes
+requiredby1=Grant Tables
+INSTALLATION=ALWAYSOVERWRITE
+requiredby2=Clients and Tools
+requiredby3=Documentation
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
+[SetupTypeItem-Compact]
+Comment=
+item0=Grant Tables
+item1=Servers
+item2=Clients and Tools
+item3=Documentation
+Descrip=
+DisplayText=
+
+[SetupTypeItem-Custom]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Servers
+item3=Clients and Tools
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Info]
+Type=CompDef
+Version=1.00.000
+Name=
+
+[SetupTypeItem-Typical]
+Comment=
+item0=Development
+item1=Grant Tables
+item2=Servers
+item3=Clients and Tools
+Descrip=
+item4=Documentation
+DisplayText=
+
+[Documentation]
+required0=Servers
+SELECTED=Yes
+FILENEED=HIGHLYRECOMMENDED
+required1=Grant Tables
+HTTPLOCATION=
+STATUS=The MySQL Documentation with different formats
+UNINSTALLABLE=Yes
+TARGET=<TARGETDIR>
+FTPLOCATION=
+VISIBLE=Yes
+DESCRIPTION=The MySQL Documentation with different formats
+DISPLAYTEXT=The MySQL Documentation with different formats
+IMAGE=
+DEFSELECTION=Yes
+filegroup0=Documentation
+COMMENT=
+INCLUDEINBUILD=Yes
+INSTALLATION=ALWAYSOVERWRITE
+COMPRESSIFSEPARATE=No
+MISC=
+ENCRYPT=No
+DISK=ANYDISK
+TARGETDIRCDROM=
+PASSWORD=
+TARGETHIDDEN=General Application Destination
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Component Definitions/Default.fgl b/VC++Files/InstallShield/4.1.XX-pro/Component Definitions/Default.fgl
new file mode 100755
index 00000000000..4e20dcea4ab
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Component Definitions/Default.fgl
@@ -0,0 +1,42 @@
+[<PROGRAMFILES>\<COMMONFILES>]
+DISPLAYTEXT=Common Files Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>\<WINSYSDIR>]
+DISPLAYTEXT=Windows System Folder
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[USERDEFINED]
+DISPLAYTEXT=Script-defined Folders
+TYPE=USERSTART
+fulldirectory=
+
+[<PROGRAMFILES>]
+DISPLAYTEXT=Program Files Folder
+SubDir0=<PROGRAMFILES>\<COMMONFILES>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<TARGETDIR>]
+DISPLAYTEXT=General Application Destination
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[<WINDIR>]
+DISPLAYTEXT=Windows Operating System
+SubDir0=<WINDIR>\<WINSYSDIR>
+TYPE=TEXTSUBFIXED
+fulldirectory=
+
+[TopDir]
+SubDir0=<WINDIR>
+SubDir1=<PROGRAMFILES>
+SubDir2=<TARGETDIR>
+SubDir3=USERDEFINED
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/File Groups/Clients and Tools.fgl b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Clients and Tools.fgl
new file mode 100755
index 00000000000..8ca421a1fe8
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Clients and Tools.fgl
@@ -0,0 +1,34 @@
+[bin]
+file0=C:\mysql\bin\isamchk.exe
+file1=C:\mysql\bin\myisamchk.exe
+file2=C:\mysql\bin\myisamlog.exe
+file3=C:\mysql\bin\myisampack.exe
+file4=C:\mysql\bin\mysql.exe
+file5=C:\mysql\bin\mysqladmin.exe
+file6=C:\mysql\bin\mysqlbinlog.exe
+file7=C:\mysql\bin\mysqlc.exe
+file8=C:\mysql\bin\mysqlcheck.exe
+file9=C:\mysql\bin\mysqldump.exe
+file10=C:\mysql\bin\mysqlimport.exe
+fulldirectory=
+file11=C:\mysql\bin\mysqlshow.exe
+file12=C:\mysql\bin\mysqlwatch.exe
+file13=C:\mysql\bin\pack_isam.exe
+file14=C:\mysql\bin\perror.exe
+file15=C:\mysql\bin\replace.exe
+file16=C:\mysql\bin\winmysqladmin.cnt
+file17=C:\mysql\bin\WINMYSQLADMIN.HLP
+file18=C:\mysql\bin\comp-err.exe
+file19=C:\mysql\bin\my_print_defaults.exe
+file20=C:\mysql\bin\winmysqladmin.exe
+file21=C:\mysql\bin\myisam_ftdump.exe
+file22=C:\mysql\bin\cygwinb19.dll
+file22=C:\mysql\bin\libmySQL.dll
+
+[TopDir]
+SubDir0=bin
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/File Groups/Default.fdf b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Default.fdf
new file mode 100755
index 00000000000..8096a4b74bf
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Default.fdf
@@ -0,0 +1,82 @@
+[FileGroups]
+group0=Development
+group1=Grant Tables
+group2=Servers
+group3=Clients and Tools
+group4=Documentation
+
+[Development]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Grant Tables]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Clients and Tools]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=0000000000000000
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Servers]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
+[Info]
+Type=FileGrp
+Version=1.00.000
+Name=
+
+[Documentation]
+SELFREGISTERING=No
+HTTPLOCATION=
+LANGUAGE=
+OPERATINGSYSTEM=
+FTPLOCATION=
+FILETYPE=No
+INFOTYPE=Standard
+COMMENT=
+COMPRESS=Yes
+COMPRESSDLL=
+POTENTIALLY=No
+MISC=
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/File Groups/Development.fgl b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Development.fgl
new file mode 100755
index 00000000000..1ec2d0fd35e
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Development.fgl
@@ -0,0 +1,242 @@
+[bench\Data\Wisconsin]
+file0=C:\mysql\bench\Data\Wisconsin\onek.data
+file1=C:\mysql\bench\Data\Wisconsin\tenk.data
+fulldirectory=
+
+[lib\debug]
+file0=C:\mysql\lib\debug\libmySQL.dll
+file1=C:\mysql\lib\debug\libmySQL.lib
+file2=C:\mysql\lib\debug\mysqlclient.lib
+file3=C:\mysql\lib\debug\zlib.lib
+file4=C:\mysql\lib\debug\mysys.lib
+file5=C:\mysql\lib\debug\regex.lib
+file6=C:\mysql\lib\debug\strings.lib
+fulldirectory=
+
+[bench\output]
+fulldirectory=
+
+[examples\libmysqltest]
+file0=C:\mysql\examples\libmysqltest\myTest.c
+file1=C:\mysql\examples\libmysqltest\myTest.dsp
+file2=C:\mysql\examples\libmysqltest\myTest.dsw
+file3=C:\mysql\examples\libmysqltest\myTest.exe
+file4=C:\mysql\examples\libmysqltest\myTest.mak
+file5=C:\mysql\examples\libmysqltest\myTest.ncb
+file6=C:\mysql\examples\libmysqltest\myTest.opt
+file7=C:\mysql\examples\libmysqltest\readme
+fulldirectory=
+
+[include]
+file0=C:\mysql\include\raid.h
+file1=C:\mysql\include\errmsg.h
+file2=C:\mysql\include\Libmysql.def
+file3=C:\mysql\include\m_ctype.h
+file4=C:\mysql\include\m_string.h
+file5=C:\mysql\include\my_list.h
+file6=C:\mysql\include\my_pthread.h
+file7=C:\mysql\include\my_sys.h
+file8=C:\mysql\include\mysql.h
+file9=C:\mysql\include\mysql_com.h
+file10=C:\mysql\include\mysql_version.h
+fulldirectory=
+file11=C:\mysql\include\mysqld_error.h
+file12=C:\mysql\include\dbug.h
+file13=C:\mysql\include\config-win.h
+file14=C:\mysql\include\my_global.h
+file15=C:\mysql\include\libmysqld.def
+file16=C:\mysql\include\my_alloc.h
+file17=C:\mysql\include\my_getopt.h
+file18=C:\mysql\include\my_global.h
+file19=C:\mysql\include\typelib.h
+
+[examples]
+SubDir0=examples\libmysqltest
+SubDir1=examples\tests
+fulldirectory=
+
+[lib\opt]
+file0=C:\mysql\lib\opt\libmySQL.dll
+file1=C:\mysql\lib\opt\libmySQL.lib
+file2=C:\mysql\lib\opt\mysqlclient.lib
+file3=C:\mysql\lib\opt\zlib.lib
+file4=C:\mysql\lib\opt\strings.lib
+file5=C:\mysql\lib\opt\regex.lib
+file6=C:\mysql\lib\opt\mysys.lib
+fulldirectory=
+
+[bench\Data]
+SubDir0=bench\Data\ATIS
+SubDir1=bench\Data\Wisconsin
+fulldirectory=
+
+[bench\limits]
+file15=C:\mysql\bench\limits\pg.comment
+file16=C:\mysql\bench\limits\solid.cfg
+file0=C:\mysql\bench\limits\access.cfg
+file17=C:\mysql\bench\limits\solid-nt4.cfg
+file1=C:\mysql\bench\limits\access.comment
+file18=C:\mysql\bench\limits\sybase.cfg
+file2=C:\mysql\bench\limits\Adabas.cfg
+file3=C:\mysql\bench\limits\Adabas.comment
+file4=C:\mysql\bench\limits\Db2.cfg
+file5=C:\mysql\bench\limits\empress.cfg
+file6=C:\mysql\bench\limits\empress.comment
+file7=C:\mysql\bench\limits\Informix.cfg
+file8=C:\mysql\bench\limits\Informix.comment
+file9=C:\mysql\bench\limits\msql.cfg
+file10=C:\mysql\bench\limits\ms-sql.cfg
+fulldirectory=
+file11=C:\mysql\bench\limits\Ms-sql65.cfg
+file12=C:\mysql\bench\limits\mysql.cfg
+file13=C:\mysql\bench\limits\oracle.cfg
+file14=C:\mysql\bench\limits\pg.cfg
+
+[TopDir]
+SubDir0=bench
+SubDir1=examples
+SubDir2=include
+SubDir3=lib
+SubDir4=scripts
+
+[bench]
+file15=C:\mysql\bench\test-create
+file16=C:\mysql\bench\test-insert
+file0=C:\mysql\bench\uname.bat
+file17=C:\mysql\bench\test-select
+file1=C:\mysql\bench\compare-results
+file18=C:\mysql\bench\test-wisconsin
+file2=C:\mysql\bench\copy-db
+file19=C:\mysql\bench\bench-init.pl
+file3=C:\mysql\bench\crash-me
+file4=C:\mysql\bench\example.bat
+file5=C:\mysql\bench\print-limit-table
+file6=C:\mysql\bench\pwd.bat
+file7=C:\mysql\bench\Readme
+SubDir0=bench\Data
+file8=C:\mysql\bench\run.bat
+SubDir1=bench\limits
+file9=C:\mysql\bench\run-all-tests
+SubDir2=bench\output
+file10=C:\mysql\bench\server-cfg
+fulldirectory=
+file11=C:\mysql\bench\test-alter-table
+file12=C:\mysql\bench\test-ATIS
+file13=C:\mysql\bench\test-big-tables
+file14=C:\mysql\bench\test-connect
+
+[examples\tests]
+file15=C:\mysql\examples\tests\lock_test.res
+file16=C:\mysql\examples\tests\mail_to_db.pl
+file0=C:\mysql\examples\tests\unique_users.tst
+file17=C:\mysql\examples\tests\table_types.pl
+file1=C:\mysql\examples\tests\auto_increment.tst
+file18=C:\mysql\examples\tests\test_delayed_insert.pl
+file2=C:\mysql\examples\tests\big_record.pl
+file19=C:\mysql\examples\tests\udf_test
+file3=C:\mysql\examples\tests\big_record.res
+file4=C:\mysql\examples\tests\czech-sorting
+file5=C:\mysql\examples\tests\deadlock-script.pl
+file6=C:\mysql\examples\tests\export.pl
+file7=C:\mysql\examples\tests\fork_test.pl
+file8=C:\mysql\examples\tests\fork2_test.pl
+file9=C:\mysql\examples\tests\fork3_test.pl
+file20=C:\mysql\examples\tests\udf_test.res
+file21=C:\mysql\examples\tests\auto_increment.res
+file10=C:\mysql\examples\tests\function.res
+fulldirectory=
+file11=C:\mysql\examples\tests\function.tst
+file12=C:\mysql\examples\tests\grant.pl
+file13=C:\mysql\examples\tests\grant.res
+file14=C:\mysql\examples\tests\lock_test.pl
+
+[bench\Data\ATIS]
+file26=C:\mysql\bench\Data\ATIS\stop1.txt
+file15=C:\mysql\bench\Data\ATIS\flight_class.txt
+file27=C:\mysql\bench\Data\ATIS\time_interval.txt
+file16=C:\mysql\bench\Data\ATIS\flight_day.txt
+file0=C:\mysql\bench\Data\ATIS\transport.txt
+file28=C:\mysql\bench\Data\ATIS\time_zone.txt
+file17=C:\mysql\bench\Data\ATIS\flight_fare.txt
+file1=C:\mysql\bench\Data\ATIS\airline.txt
+file29=C:\mysql\bench\Data\ATIS\aircraft.txt
+file18=C:\mysql\bench\Data\ATIS\food_service.txt
+file2=C:\mysql\bench\Data\ATIS\airport.txt
+file19=C:\mysql\bench\Data\ATIS\ground_service.txt
+file3=C:\mysql\bench\Data\ATIS\airport_service.txt
+file4=C:\mysql\bench\Data\ATIS\city.txt
+file5=C:\mysql\bench\Data\ATIS\class_of_service.txt
+file6=C:\mysql\bench\Data\ATIS\code_description.txt
+file7=C:\mysql\bench\Data\ATIS\compound_class.txt
+file8=C:\mysql\bench\Data\ATIS\connect_leg.txt
+file9=C:\mysql\bench\Data\ATIS\date_day.txt
+file20=C:\mysql\bench\Data\ATIS\month_name.txt
+file21=C:\mysql\bench\Data\ATIS\restrict_carrier.txt
+file10=C:\mysql\bench\Data\ATIS\day_name.txt
+fulldirectory=
+file22=C:\mysql\bench\Data\ATIS\restrict_class.txt
+file11=C:\mysql\bench\Data\ATIS\dual_carrier.txt
+file23=C:\mysql\bench\Data\ATIS\restriction.txt
+file12=C:\mysql\bench\Data\ATIS\fare.txt
+file24=C:\mysql\bench\Data\ATIS\state.txt
+file13=C:\mysql\bench\Data\ATIS\fconnection.txt
+file25=C:\mysql\bench\Data\ATIS\stop.txt
+file14=C:\mysql\bench\Data\ATIS\flight.txt
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[scripts]
+file37=C:\mysql\scripts\mysqld_safe-watch.sh
+file26=C:\mysql\scripts\mysql_zap
+file15=C:\mysql\scripts\mysql_fix_privilege_tables
+file38=C:\mysql\scripts\mysqldumpslow
+file27=C:\mysql\scripts\mysql_zap.sh
+file16=C:\mysql\scripts\mysql_fix_privilege_tables.sh
+file0=C:\mysql\scripts\Readme
+file39=C:\mysql\scripts\mysqldumpslow.sh
+file28=C:\mysql\scripts\mysqlaccess
+file17=C:\mysql\scripts\mysql_install_db
+file1=C:\mysql\scripts\make_binary_distribution.sh
+file29=C:\mysql\scripts\mysqlaccess.conf
+file18=C:\mysql\scripts\mysql_install_db.sh
+file2=C:\mysql\scripts\msql2mysql
+file19=C:\mysql\scripts\mysql_secure_installation
+file3=C:\mysql\scripts\msql2mysql.sh
+file4=C:\mysql\scripts\mysql_config
+file5=C:\mysql\scripts\mysql_config.sh
+file6=C:\mysql\scripts\mysql_convert_table_format
+file7=C:\mysql\scripts\mysql_convert_table_format.sh
+file40=C:\mysql\scripts\mysqlhotcopy
+file8=C:\mysql\scripts\mysql_explain_log
+file41=C:\mysql\scripts\mysqlhotcopy.pl
+file30=C:\mysql\scripts\mysqlaccess.sh
+file9=C:\mysql\scripts\mysql_explain_log.sh
+file42=C:\mysql\scripts\mysqlhotcopy.sh
+file31=C:\mysql\scripts\mysqlbug
+file20=C:\mysql\scripts\mysql_secure_installation.sh
+file43=C:\mysql\scripts\make_binary_distribution
+file32=C:\mysql\scripts\mysqlbug.sh
+file21=C:\mysql\scripts\mysql_setpermission
+file10=C:\mysql\scripts\mysql_find_rows
+fulldirectory=
+file44=C:\mysql\scripts\mysql_fix_privilege_tables.sql
+file33=C:\mysql\scripts\mysqld_multi
+file22=C:\mysql\scripts\mysql_setpermission.pl
+file11=C:\mysql\scripts\mysql_find_rows.pl
+file34=C:\mysql\scripts\mysqld_multi.sh
+file23=C:\mysql\scripts\mysql_setpermission.sh
+file12=C:\mysql\scripts\mysql_find_rows.sh
+file35=C:\mysql\scripts\mysqld_safe
+file24=C:\mysql\scripts\mysql_tableinfo
+file13=C:\mysql\scripts\mysql_fix_extensions
+file36=C:\mysql\scripts\mysqld_safe.sh
+file25=C:\mysql\scripts\mysql_tableinfo.sh
+file14=C:\mysql\scripts\mysql_fix_extensions.sh
+
+[lib]
+SubDir0=lib\debug
+SubDir1=lib\opt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/File Groups/Documentation.fgl b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Documentation.fgl
new file mode 100755
index 00000000000..2fe90a4a3f8
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Documentation.fgl
@@ -0,0 +1,100 @@
+[Docs\Flags]
+file59=C:\mysql\Docs\Flags\romania.gif
+file48=C:\mysql\Docs\Flags\kroatia.eps
+file37=C:\mysql\Docs\Flags\iceland.gif
+file26=C:\mysql\Docs\Flags\france.eps
+file15=C:\mysql\Docs\Flags\china.gif
+file49=C:\mysql\Docs\Flags\kroatia.gif
+file38=C:\mysql\Docs\Flags\ireland.eps
+file27=C:\mysql\Docs\Flags\france.gif
+file16=C:\mysql\Docs\Flags\croatia.eps
+file0=C:\mysql\Docs\Flags\usa.gif
+file39=C:\mysql\Docs\Flags\ireland.gif
+file28=C:\mysql\Docs\Flags\germany.eps
+file17=C:\mysql\Docs\Flags\croatia.gif
+file1=C:\mysql\Docs\Flags\argentina.gif
+file29=C:\mysql\Docs\Flags\germany.gif
+file18=C:\mysql\Docs\Flags\czech-republic.eps
+file2=C:\mysql\Docs\Flags\australia.eps
+file19=C:\mysql\Docs\Flags\czech-republic.gif
+file3=C:\mysql\Docs\Flags\australia.gif
+file80=C:\mysql\Docs\Flags\usa.eps
+file4=C:\mysql\Docs\Flags\austria.eps
+file81=C:\mysql\Docs\Flags\argentina.eps
+file70=C:\mysql\Docs\Flags\spain.eps
+file5=C:\mysql\Docs\Flags\austria.gif
+file71=C:\mysql\Docs\Flags\spain.gif
+file60=C:\mysql\Docs\Flags\russia.eps
+file6=C:\mysql\Docs\Flags\brazil.eps
+file72=C:\mysql\Docs\Flags\sweden.eps
+file61=C:\mysql\Docs\Flags\russia.gif
+file50=C:\mysql\Docs\Flags\latvia.eps
+file7=C:\mysql\Docs\Flags\brazil.gif
+file73=C:\mysql\Docs\Flags\sweden.gif
+file62=C:\mysql\Docs\Flags\singapore.eps
+file51=C:\mysql\Docs\Flags\latvia.gif
+file40=C:\mysql\Docs\Flags\island.eps
+file8=C:\mysql\Docs\Flags\bulgaria.eps
+file74=C:\mysql\Docs\Flags\switzerland.eps
+file63=C:\mysql\Docs\Flags\singapore.gif
+file52=C:\mysql\Docs\Flags\netherlands.eps
+file41=C:\mysql\Docs\Flags\island.gif
+file30=C:\mysql\Docs\Flags\great-britain.eps
+file9=C:\mysql\Docs\Flags\bulgaria.gif
+file75=C:\mysql\Docs\Flags\switzerland.gif
+file64=C:\mysql\Docs\Flags\south-africa.eps
+file53=C:\mysql\Docs\Flags\netherlands.gif
+file42=C:\mysql\Docs\Flags\israel.eps
+file31=C:\mysql\Docs\Flags\great-britain.gif
+file20=C:\mysql\Docs\Flags\denmark.eps
+file76=C:\mysql\Docs\Flags\taiwan.eps
+file65=C:\mysql\Docs\Flags\south-africa.gif
+file54=C:\mysql\Docs\Flags\poland.eps
+file43=C:\mysql\Docs\Flags\israel.gif
+file32=C:\mysql\Docs\Flags\greece.eps
+file21=C:\mysql\Docs\Flags\denmark.gif
+file10=C:\mysql\Docs\Flags\canada.eps
+fulldirectory=
+file77=C:\mysql\Docs\Flags\taiwan.gif
+file66=C:\mysql\Docs\Flags\south-africa1.eps
+file55=C:\mysql\Docs\Flags\poland.gif
+file44=C:\mysql\Docs\Flags\italy.eps
+file33=C:\mysql\Docs\Flags\greece.gif
+file22=C:\mysql\Docs\Flags\estonia.eps
+file11=C:\mysql\Docs\Flags\canada.gif
+file78=C:\mysql\Docs\Flags\ukraine.eps
+file67=C:\mysql\Docs\Flags\south-africa1.gif
+file56=C:\mysql\Docs\Flags\portugal.eps
+file45=C:\mysql\Docs\Flags\italy.gif
+file34=C:\mysql\Docs\Flags\hungary.eps
+file23=C:\mysql\Docs\Flags\estonia.gif
+file12=C:\mysql\Docs\Flags\chile.eps
+file79=C:\mysql\Docs\Flags\ukraine.gif
+file68=C:\mysql\Docs\Flags\south-korea.eps
+file57=C:\mysql\Docs\Flags\portugal.gif
+file46=C:\mysql\Docs\Flags\japan.eps
+file35=C:\mysql\Docs\Flags\hungary.gif
+file24=C:\mysql\Docs\Flags\finland.eps
+file13=C:\mysql\Docs\Flags\chile.gif
+file69=C:\mysql\Docs\Flags\south-korea.gif
+file58=C:\mysql\Docs\Flags\romania.eps
+file47=C:\mysql\Docs\Flags\japan.gif
+file36=C:\mysql\Docs\Flags\iceland.eps
+file25=C:\mysql\Docs\Flags\finland.gif
+file14=C:\mysql\Docs\Flags\china.eps
+
+[Docs]
+file0=C:\mysql\Docs\manual_toc.html
+file1=C:\mysql\Docs\manual.html
+file2=C:\mysql\Docs\manual.txt
+file3=C:\mysql\Docs\MySQLEULA.txt
+SubDir0=Docs\Flags
+fulldirectory=
+
+[TopDir]
+SubDir0=Docs
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/File Groups/Grant Tables.fgl b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Grant Tables.fgl
new file mode 100755
index 00000000000..d88bec3ec33
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Grant Tables.fgl
@@ -0,0 +1,51 @@
+[data\test]
+fulldirectory=
+
+[data\mysql]
+file0=C:\mysql\data\mysql\columns_priv.frm
+file1=C:\mysql\data\mysql\columns_priv.MYD
+file2=C:\mysql\data\mysql\columns_priv.MYI
+file3=C:\mysql\data\mysql\db.frm
+file4=C:\mysql\data\mysql\db.MYD
+file5=C:\mysql\data\mysql\db.MYI
+file6=C:\mysql\data\mysql\host.frm
+file7=C:\mysql\data\mysql\host.MYD
+file8=C:\mysql\data\mysql\host.MYI
+file9=C:\mysql\data\mysql\tables_priv.frm
+file10=C:\mysql\data\mysql\tables_priv.MYD
+fulldirectory=
+file11=C:\mysql\data\mysql\tables_priv.MYI
+file12=C:\mysql\data\mysql\user.frm
+file13=C:\mysql\data\mysql\user.MYD
+file14=C:\mysql\data\mysql\user.MYI
+file15=C:\mysql\data\mysql\func.frm
+file16=C:\mysql\data\mysql\func.MYD
+file17=C:\mysql\data\mysql\func.MYI
+file18=C:\mysql\data\mysql\time_zone.MYD
+file19=C:\mysql\data\mysql\time_zone.MYI
+file20=C:\mysql\data\mysql\time_zone.frm
+file21=C:\mysql\data\mysql\time_zone_leap_second.MYD
+file22=C:\mysql\data\mysql\time_zone_leap_second.MYI
+file23=C:\mysql\data\mysql\time_zone_leap_second.frm
+file24=C:\mysql\data\mysql\time_zone_name.MYD
+file25=C:\mysql\data\mysql\time_zone_name.MYI
+file26=C:\mysql\data\mysql\time_zone_name.frm
+file27=C:\mysql\data\mysql\time_zone_transition.MYD
+file28=C:\mysql\data\mysql\time_zone_transition.MYI
+file29=C:\mysql\data\mysql\time_zone_transition.frm
+file30=C:\mysql\data\mysql\time_zone_transition_type.MYD
+file31=C:\mysql\data\mysql\time_zone_transition_type.MYI
+file32=C:\mysql\data\mysql\time_zone_transition_type.frm
+
+[TopDir]
+SubDir0=data
+
+[data]
+SubDir0=data\mysql
+SubDir1=data\test
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/File Groups/Servers.fgl b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Servers.fgl
new file mode 100755
index 00000000000..b51c37f8db2
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/File Groups/Servers.fgl
@@ -0,0 +1,251 @@
+[Embedded\Static\release]
+file0=C:\mysql\embedded\Static\release\test_stc.dsp
+file1=C:\mysql\embedded\Static\release\ReadMe.txt
+file2=C:\mysql\embedded\Static\release\StdAfx.cpp
+file3=C:\mysql\embedded\Static\release\StdAfx.h
+file4=C:\mysql\embedded\Static\release\test_stc.cpp
+file5=C:\mysql\embedded\Static\release\mysqlserver.lib
+fulldirectory=
+
+[share\polish]
+file0=C:\mysql\share\polish\errmsg.sys
+file1=C:\mysql\share\polish\errmsg.txt
+fulldirectory=
+
+[share\dutch]
+file0=C:\mysql\share\dutch\errmsg.sys
+file1=C:\mysql\share\dutch\errmsg.txt
+fulldirectory=
+
+[share\spanish]
+file0=C:\mysql\share\spanish\errmsg.sys
+file1=C:\mysql\share\spanish\errmsg.txt
+fulldirectory=
+
+[share\english]
+file0=C:\mysql\share\english\errmsg.sys
+file1=C:\mysql\share\english\errmsg.txt
+fulldirectory=
+
+[bin]
+file0=C:\mysql\bin\mysqld-opt.exe
+file1=C:\mysql\bin\mysqld-nt.exe
+file2=C:\mysql\bin\mysqld.exe
+file3=C:\mysql\bin\cygwinb19.dll
+file4=C:\mysql\bin\libmySQL.dll
+fulldirectory=
+
+[share\korean]
+file0=C:\mysql\share\korean\errmsg.sys
+file1=C:\mysql\share\korean\errmsg.txt
+fulldirectory=
+
+[share\charsets]
+file0=C:\mysql\share\charsets\cp1250.xml
+file1=C:\mysql\share\charsets\cp1251.conf
+file2=C:\mysql\share\charsets\cp1251.xml
+file3=C:\mysql\share\charsets\cp1256.xml
+file1=C:\mysql\share\charsets\cp1257.conf
+file4=C:\mysql\share\charsets\cp1257.xml
+file5=C:\mysql\share\charsets\cp850.xml
+file6=C:\mysql\share\charsets\cp852.xml
+file7=C:\mysql\share\charsets\cp866.xml
+file8=C:\mysql\share\charsets\croat.conf
+file9=C:\mysql\share\charsets\danish.conf
+file10=C:\mysql\share\charsets\dec8.conf
+file10=C:\mysql\share\charsets\dec8.xml
+file11=C:\mysql\share\charsets\dos.conf
+file12=C:\mysql\share\charsets\estonia.conf
+file13=C:\mysql\share\charsets\geostd8.xml
+file14=C:\mysql\share\charsets\german1.conf
+file15=C:\mysql\share\charsets\greek.xml
+file16=C:\mysql\share\charsets\greek.conf
+file17=C:\mysql\share\charsets\hebrew.xml
+file18=C:\mysql\share\charsets\hebrew.conf
+file19=C:\mysql\share\charsets\hp8.xml
+file20=C:\mysql\share\charsets\hp8.conf
+file21=C:\mysql\share\charsets\hungarian.conf
+file22=C:\mysql\share\charsets\keybcs2.xml
+file23=C:\mysql\share\charsets\koi8_ru.conf
+file24=C:\mysql\share\charsets\koi8_ukr.conf
+file25=C:\mysql\share\charsets\koi8r.xml
+file26=C:\mysql\share\charsets\koi8u.xml
+file27=C:\mysql\share\charsets\latin1.conf
+file28=C:\mysql\share\charsets\latin1.xml
+file29=C:\mysql\share\charsets\latin2.conf
+file30=C:\mysql\share\charsets\latin2.xml
+file31=C:\mysql\share\charsets\latin5.conf
+file32=C:\mysql\share\charsets\latin5.xml
+file33=C:\mysql\share\charsets\latin7.xml
+file34=C:\mysql\share\charsets\macce.xml
+file35=C:\mysql\share\charsets\macroman.xml
+file36=C:\mysql\share\charsets\swe7.conf
+file37=C:\mysql\share\charsets\swe7.xml
+file38=C:\mysql\share\charsets\usa7.conf
+file39=C:\mysql\share\charsets\win1250.conf
+file40=C:\mysql\share\charsets\win1251ukr.conf
+file41=C:\mysql\share\charsets\win1251.conf
+file42=C:\mysql\share\charsets\Index
+file43=C:\mysql\share\charsets\Index.xml
+file44=C:\mysql\share\charsets\Readme
+file45=C:\mysql\share\charsets\languages.html
+fulldirectory=
+
+[Embedded\DLL\debug]
+file0=C:\mysql\embedded\DLL\debug\libmysqld.dll
+file1=C:\mysql\embedded\DLL\debug\libmysqld.exp
+file2=C:\mysql\embedded\DLL\debug\libmysqld.lib
+fulldirectory=
+
+[Embedded]
+file0=C:\mysql\embedded\embedded.dsw
+SubDir0=Embedded\DLL
+SubDir1=Embedded\Static
+fulldirectory=
+
+[share\ukrainian]
+file0=C:\mysql\share\ukrainian\errmsg.sys
+file1=C:\mysql\share\ukrainian\errmsg.txt
+fulldirectory=
+
+[share\hungarian]
+file0=C:\mysql\share\hungarian\errmsg.sys
+file1=C:\mysql\share\hungarian\errmsg.txt
+fulldirectory=
+
+[share\german]
+file0=C:\mysql\share\german\errmsg.sys
+file1=C:\mysql\share\german\errmsg.txt
+fulldirectory=
+
+[share\portuguese]
+file0=C:\mysql\share\portuguese\errmsg.sys
+file1=C:\mysql\share\portuguese\errmsg.txt
+fulldirectory=
+
+[share\estonian]
+file0=C:\mysql\share\estonian\errmsg.sys
+file1=C:\mysql\share\estonian\errmsg.txt
+fulldirectory=
+
+[share\romanian]
+file0=C:\mysql\share\romanian\errmsg.sys
+file1=C:\mysql\share\romanian\errmsg.txt
+fulldirectory=
+
+[share\french]
+file0=C:\mysql\share\french\errmsg.sys
+file1=C:\mysql\share\french\errmsg.txt
+fulldirectory=
+
+[share\swedish]
+file0=C:\mysql\share\swedish\errmsg.sys
+file1=C:\mysql\share\swedish\errmsg.txt
+fulldirectory=
+
+[share\slovak]
+file0=C:\mysql\share\slovak\errmsg.sys
+file1=C:\mysql\share\slovak\errmsg.txt
+fulldirectory=
+
+[share\greek]
+file0=C:\mysql\share\greek\errmsg.sys
+file1=C:\mysql\share\greek\errmsg.txt
+fulldirectory=
+
+[TopDir]
+file0=C:\mysql\my-huge.cnf
+file1=C:\mysql\my-large.cnf
+file2=C:\mysql\my-medium.cnf
+file3=C:\mysql\my-small.cnf
+file4=C:\mysql\MySQLEULA.txt
+file5=C:\mysql\README.txt
+SubDir0=bin
+SubDir1=share
+SubDir2=Embedded
+
+[share]
+SubDir8=share\hungarian
+SubDir9=share\charsets
+SubDir20=share\spanish
+SubDir21=share\swedish
+SubDir10=share\italian
+SubDir22=share\ukrainian
+SubDir11=share\japanese
+SubDir12=share\korean
+SubDir13=share\norwegian
+SubDir14=share\norwegian-ny
+SubDir15=share\polish
+SubDir16=share\portuguese
+SubDir0=share\czech
+SubDir17=share\romanian
+SubDir1=share\danish
+SubDir18=share\russian
+SubDir2=share\dutch
+SubDir19=share\slovak
+SubDir3=share\english
+fulldirectory=
+SubDir4=share\estonian
+SubDir5=share\french
+SubDir6=share\german
+SubDir7=share\greek
+
+[share\norwegian-ny]
+file0=C:\mysql\share\norwegian-ny\errmsg.sys
+file1=C:\mysql\share\norwegian-ny\errmsg.txt
+fulldirectory=
+
+[Embedded\DLL]
+file0=C:\mysql\embedded\DLL\test_dll.dsp
+file1=C:\mysql\embedded\DLL\StdAfx.h
+file2=C:\mysql\embedded\DLL\test_dll.cpp
+file3=C:\mysql\embedded\DLL\StdAfx.cpp
+SubDir0=Embedded\DLL\debug
+SubDir1=Embedded\DLL\release
+fulldirectory=
+
+[Embedded\Static]
+SubDir0=Embedded\Static\release
+fulldirectory=
+
+[Embedded\DLL\release]
+file0=C:\mysql\embedded\DLL\release\libmysqld.dll
+file1=C:\mysql\embedded\DLL\release\libmysqld.exp
+file2=C:\mysql\embedded\DLL\release\libmysqld.lib
+file3=C:\mysql\embedded\DLL\release\mysql-server.exe
+fulldirectory=
+
+[share\danish]
+file0=C:\mysql\share\danish\errmsg.sys
+file1=C:\mysql\share\danish\errmsg.txt
+fulldirectory=
+
+[share\czech]
+file0=C:\mysql\share\czech\errmsg.sys
+file1=C:\mysql\share\czech\errmsg.txt
+fulldirectory=
+
+[General]
+Type=FILELIST
+Version=1.00.000
+
+[share\russian]
+file0=C:\mysql\share\russian\errmsg.sys
+file1=C:\mysql\share\russian\errmsg.txt
+fulldirectory=
+
+[share\norwegian]
+file0=C:\mysql\share\norwegian\errmsg.sys
+file1=C:\mysql\share\norwegian\errmsg.txt
+fulldirectory=
+
+[share\japanese]
+file0=C:\mysql\share\japanese\errmsg.sys
+file1=C:\mysql\share\japanese\errmsg.txt
+fulldirectory=
+
+[share\italian]
+file0=C:\mysql\share\italian\errmsg.sys
+file1=C:\mysql\share\italian\errmsg.txt
+fulldirectory=
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Registry Entries/Default.rge b/VC++Files/InstallShield/4.1.XX-pro/Registry Entries/Default.rge
new file mode 100755
index 00000000000..537dfd82e48
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Registry Entries/Default.rge
@@ -0,0 +1,4 @@
+[General]
+Type=REGISTRYDATA
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.dbg b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.dbg
new file mode 100755
index 00000000000..0c6d4e6b708
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.dbg
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.ino b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.ino
new file mode 100755
index 00000000000..204d8ea0f36
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.ino
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.ins b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.ins
new file mode 100755
index 00000000000..759009b5c84
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.ins
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.obs b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.obs
new file mode 100755
index 00000000000..5fcfcb62c4e
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.obs
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.rul.old b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.rul.old
new file mode 100755
index 00000000000..df143b493c4
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Script Files/Setup.rul.old
@@ -0,0 +1,640 @@
+
+////////////////////////////////////////////////////////////////////////////////
+//
+// IIIIIII SSSSSS
+// II SS InstallShield (R)
+// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
+// II SS (c) 1990-1996, InstallShield Corporation
+// IIIIIII SSSSSS All Rights Reserved.
+//
+//
+// This code is generated as a starting setup template. You should
+// modify it to provide all necessary steps for your setup.
+//
+//
+// File Name: Setup.rul
+//
+// Description: InstallShield script
+//
+// Comments: This template script performs a basic setup on a
+// Windows 95 or Windows NT 4.0 platform. With minor
+// modifications, this template can be adapted to create
+// new, customized setups.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+
+ // Include header file
+#include "sdlang.h"
+#include "sddialog.h"
+
+////////////////////// string defines ////////////////////////////
+
+#define UNINST_LOGFILE_NAME "Uninst.isu"
+
+//////////////////// installation declarations ///////////////////
+
+ // ----- DLL prototypes -----
+
+
+ // your DLL prototypes
+
+
+ // ---- script prototypes -----
+
+ // generated
+ prototype ShowDialogs();
+ prototype MoveFileData();
+ prototype HandleMoveDataError( NUMBER );
+ prototype ProcessBeforeDataMove();
+ prototype ProcessAfterDataMove();
+ prototype SetupRegistry();
+ prototype SetupFolders();
+ prototype CleanUpInstall();
+ prototype SetupInstall();
+ prototype SetupScreen();
+ prototype CheckRequirements();
+ prototype DialogShowSdWelcome();
+ prototype DialogShowSdShowInfoList();
+ prototype DialogShowSdAskDestPath();
+ prototype DialogShowSdSetupType();
+ prototype DialogShowSdComponentDialog2();
+ prototype DialogShowSdFinishReboot();
+
+ // your prototypes
+
+
+ // ----- global variables ------
+
+ // generated
+ BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
+ STRING svDir;
+ STRING svName, svCompany, svSerial;
+ STRING szAppPath;
+ STRING svSetupType;
+
+
+ // your global variables
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// MAIN PROGRAM
+//
+// The setup begins here by hiding the visible setup
+// window. This is done to allow all the titles, images, etc. to
+// be established before showing the main window. The following
+// logic then performs the setup in a series of steps.
+//
+///////////////////////////////////////////////////////////////////////////////
+program
+ Disable( BACKGROUND );
+
+ CheckRequirements();
+
+ SetupInstall();
+
+ SetupScreen();
+
+ if (ShowDialogs()<0) goto end_install;
+
+ if (ProcessBeforeDataMove()<0) goto end_install;
+
+ if (MoveFileData()<0) goto end_install;
+
+ if (ProcessAfterDataMove()<0) goto end_install;
+
+ if (SetupRegistry()<0) goto end_install;
+
+ if (SetupFolders()<0) goto end_install;
+
+
+ end_install:
+
+ CleanUpInstall();
+
+ // If an unrecoverable error occurred, clean up the partial installation.
+ // Otherwise, exit normally.
+
+ if (bInstallAborted) then
+ abort;
+ endif;
+
+endprogram
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ShowDialogs //
+// //
+// Purpose: This function manages the display and navigation //
+// the standard dialogs that exist in a setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ShowDialogs()
+ NUMBER nResult;
+ begin
+
+ Dlg_Start:
+ // beginning of dialogs label
+
+ Dlg_SdWelcome:
+ nResult = DialogShowSdWelcome();
+ if (nResult = BACK) goto Dlg_Start;
+
+ Dlg_SdShowInfoList:
+ nResult = DialogShowSdShowInfoList();
+ if (nResult = BACK) goto Dlg_SdWelcome;
+
+ Dlg_SdAskDestPath:
+ nResult = DialogShowSdAskDestPath();
+ if (nResult = BACK) goto Dlg_SdShowInfoList;
+
+ Dlg_SdSetupType:
+ nResult = DialogShowSdSetupType();
+ if (nResult = BACK) goto Dlg_SdAskDestPath;
+
+ Dlg_SdComponentDialog2:
+ if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
+ goto Dlg_SdSetupType;
+ endif;
+ nResult = DialogShowSdComponentDialog2();
+ if (nResult = BACK) goto Dlg_SdSetupType;
+
+ return 0;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessBeforeDataMove //
+// //
+// Purpose: This function performs any necessary operations prior to the //
+// actual data move operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessBeforeDataMove()
+ STRING svLogFile;
+ NUMBER nResult;
+ begin
+
+ InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );
+
+ svLogFile = UNINST_LOGFILE_NAME;
+
+ nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
+ if (nResult < 0) then
+ MessageBox( @ERROR_UNINSTSETUP, WARNING );
+ endif;
+
+ szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir
+
+ if ((bIs32BitSetup) && (bIsShellExplorer)) then
+ RegDBSetItem( REGDB_APPPATH, szAppPath );
+ RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
+ RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
+ endif;
+
+ // TODO : update any items you want to process before moving the data
+ //
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: MoveFileData //
+// //
+// Purpose: This function handles the data movement for //
+// the setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function MoveFileData()
+ NUMBER nResult, nDisk;
+ begin
+
+ nDisk = 1;
+ SetStatusWindow( 0, "" );
+ Disable( DIALOGCACHE );
+ Enable( STATUS );
+ StatusUpdate( ON, 100 );
+ nResult = ComponentMoveData( MEDIA, nDisk, 0 );
+
+ HandleMoveDataError( nResult );
+
+ Disable( STATUS );
+
+ return nResult;
+
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: HandleMoveDataError //
+// //
+// Purpose: This function handles the error (if any) during the move data //
+// operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function HandleMoveDataError( nResult )
+ STRING szErrMsg, svComponent , svFileGroup , svFile;
+ begin
+
+ svComponent = "";
+ svFileGroup = "";
+ svFile = "";
+
+ switch (nResult)
+ case 0:
+ return 0;
+ default:
+ ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
+ szErrMsg = @ERROR_MOVEDATA + "\n\n" +
+ @ERROR_COMPONENT + " " + svComponent + "\n" +
+ @ERROR_FILEGROUP + " " + svFileGroup + "\n" +
+ @ERROR_FILE + " " + svFile;
+ SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
+ bInstallAborted = TRUE;
+ return nResult;
+ endswitch;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessAfterDataMove //
+// //
+// Purpose: This function performs any necessary operations needed after //
+// all data has been moved. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessAfterDataMove()
+ begin
+
+ // TODO : update self-registered files and other processes that
+ // should be performed after the data has been moved.
+
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupRegistry //
+// //
+// Purpose: This function makes the registry entries for this setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupRegistry()
+ NUMBER nResult;
+
+ begin
+
+ // TODO : Add all your registry entry keys here
+ //
+ //
+ // RegDBCreateKeyEx, RegDBSetKeyValueEx....
+ //
+
+ nResult = CreateRegistrySet( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// Function: SetupFolders
+//
+// Purpose: This function creates all the folders and shortcuts for the
+// setup. This includes program groups and items for Windows 3.1.
+//
+///////////////////////////////////////////////////////////////////////////////
+function SetupFolders()
+ NUMBER nResult;
+
+ begin
+
+
+ // TODO : Add all your folder (program group) along with shortcuts (program items)
+ //
+ //
+ // CreateProgramFolder, AddFolderIcon....
+ //
+
+ nResult = CreateShellObjects( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CleanUpInstall //
+// //
+// Purpose: This cleans up the setup. Anything that should //
+// be released or deleted at the end of the setup should //
+// be done here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CleanUpInstall()
+ begin
+
+
+ if (bInstallAborted) then
+ return 0;
+ endif;
+
+ DialogShowSdFinishReboot();
+
+ if (BATCH_INSTALL) then // ensure locked files are properly written
+ CommitSharedFiles(0);
+ endif;
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupInstall //
+// //
+// Purpose: This will setup the installation. Any general initialization //
+// needed for the installation should be performed here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupInstall()
+ begin
+
+ Enable( CORECOMPONENTHANDLING );
+
+ bInstallAborted = FALSE;
+
+ if (bIs32BitSetup) then
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
+ else
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
+ endif;
+
+ TARGETDIR = svDir;
+
+ SdProductName( @PRODUCT_NAME );
+
+ Enable( DIALOGCACHE );
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupScreen //
+// //
+// Purpose: This function establishes the screen look. This includes //
+// colors, fonts, and text to be displayed. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupScreen()
+ begin
+
+ Enable( FULLWINDOWMODE );
+ Enable( INDVFILESTATUS );
+ SetTitle( @TITLE_MAIN, 24, WHITE );
+
+ SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.
+
+ Enable( BACKGROUND );
+
+ Delay( 1 );
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CheckRequirements //
+// //
+// Purpose: This function checks all minimum requirements for the //
+// application being installed. If any fail, then the user //
+// is informed and the setup is terminated. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CheckRequirements()
+ NUMBER nvDx, nvDy, nvResult;
+ STRING svResult;
+
+ begin
+
+ bWinNT = FALSE;
+ bIsShellExplorer = FALSE;
+
+ // Check screen resolution.
+ GetExtents( nvDx, nvDy );
+
+ if (nvDy < 480) then
+ MessageBox( @ERROR_VGARESOLUTION, WARNING );
+ abort;
+ endif;
+
+ // set 'setup' operation mode
+ bIs32BitSetup = TRUE;
+ GetSystemInfo( ISTYPE, nvResult, svResult );
+ if (nvResult = 16) then
+ bIs32BitSetup = FALSE; // running 16-bit setup
+ return 0; // no additional information required
+ endif;
+
+ // --- 32-bit testing after this point ---
+
+ // Determine the target system's operating system.
+ GetSystemInfo( OS, nvResult, svResult );
+
+ if (nvResult = IS_WINDOWSNT) then
+ // Running Windows NT.
+ bWinNT = TRUE;
+
+ // Check to see if the shell being used is EXPLORER shell.
+ if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
+ if (nvResult >= 4) then
+ bIsShellExplorer = TRUE;
+ endif;
+ endif;
+
+ elseif (nvResult = IS_WINDOWS95 ) then
+ bIsShellExplorer = TRUE;
+
+ endif;
+
+end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdWelcome //
+// //
+// Purpose: This function handles the standard welcome dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdWelcome()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdWelcome( szTitle, szMsg );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdShowInfoList //
+// //
+// Purpose: This function displays the general information list dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdShowInfoList()
+ NUMBER nResult;
+ LIST list;
+ STRING szTitle, szMsg, szFile;
+ begin
+
+ szFile = SUPPORTDIR ^ "infolist.txt";
+
+ list = ListCreate( STRINGLIST );
+ ListReadFromFile( list, szFile );
+ szTitle = "";
+ szMsg = " ";
+ nResult = SdShowInfoList( szTitle, szMsg, list );
+
+ ListDestroy( list );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdAskDestPath //
+// //
+// Purpose: This function asks the user for the destination directory. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdAskDestPath()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );
+
+ TARGETDIR = svDir;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdSetupType //
+// //
+// Purpose: This function displays the standard setup type dialog. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdSetupType()
+ NUMBER nResult, nType;
+ STRING szTitle, szMsg;
+ begin
+
+ switch (svSetupType)
+ case "Typical":
+ nType = TYPICAL;
+ case "Custom":
+ nType = CUSTOM;
+ case "Compact":
+ nType = COMPACT;
+ case "":
+ svSetupType = "Typical";
+ nType = TYPICAL;
+ endswitch;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SetupType( szTitle, szMsg, "", nType, 0 );
+
+ switch (nResult)
+ case COMPACT:
+ svSetupType = "Compact";
+ case TYPICAL:
+ svSetupType = "Typical";
+ case CUSTOM:
+ svSetupType = "Custom";
+ endswitch;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdComponentDialog2 //
+// //
+// Purpose: This function displays the custom component dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdComponentDialog2()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ if ((svSetupType != "Custom") && (svSetupType != "")) then
+ return 0;
+ endif;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdFinishReboot //
+// //
+// Purpose: This function will show the last dialog of the product. //
+// It will allow the user to reboot and/or show some readme text. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdFinishReboot()
+ NUMBER nResult, nDefOptions;
+ STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
+ NUMBER bOpt1, bOpt2;
+ begin
+
+ if (!BATCH_INSTALL) then
+ bOpt1 = FALSE;
+ bOpt2 = FALSE;
+ szMsg1 = "";
+ szMsg2 = "";
+ szOption1 = "";
+ szOption2 = "";
+ nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
+ return 0;
+ endif;
+
+ nDefOptions = SYS_BOOTMACHINE;
+ szTitle = "";
+ szMsg1 = "";
+ szMsg2 = "";
+ nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );
+
+ return nResult;
+ end;
+
+ // --- include script file section ---
+
+#include "sddialog.rul"
+
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Script Files/setup.rul b/VC++Files/InstallShield/4.1.XX-pro/Script Files/setup.rul
new file mode 100755
index 00000000000..73d61114075
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Script Files/setup.rul
@@ -0,0 +1,641 @@
+
+////////////////////////////////////////////////////////////////////////////////
+//
+// IIIIIII SSSSSS
+// II SS InstallShield (R)
+// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
+// II SS (c) 1990-1996, InstallShield Corporation
+// IIIIIII SSSSSS All Rights Reserved.
+//
+//
+// This code is generated as a starting setup template. You should
+// modify it to provide all necessary steps for your setup.
+//
+//
+// File Name: Setup.rul
+//
+// Description: InstallShield script
+//
+// Comments: This template script performs a basic setup on a
+// Windows 95 or Windows NT 4.0 platform. With minor
+// modifications, this template can be adapted to create
+// new, customized setups.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+
+ // Include header file
+#include "sdlang.h"
+#include "sddialog.h"
+
+////////////////////// string defines ////////////////////////////
+
+#define UNINST_LOGFILE_NAME "Uninst.isu"
+
+//////////////////// installation declarations ///////////////////
+
+ // ----- DLL prototypes -----
+
+
+ // your DLL prototypes
+
+
+ // ---- script prototypes -----
+
+ // generated
+ prototype ShowDialogs();
+ prototype MoveFileData();
+ prototype HandleMoveDataError( NUMBER );
+ prototype ProcessBeforeDataMove();
+ prototype ProcessAfterDataMove();
+ prototype SetupRegistry();
+ prototype SetupFolders();
+ prototype CleanUpInstall();
+ prototype SetupInstall();
+ prototype SetupScreen();
+ prototype CheckRequirements();
+ prototype DialogShowSdWelcome();
+ prototype DialogShowSdShowInfoList();
+ prototype DialogShowSdAskDestPath();
+ prototype DialogShowSdSetupType();
+ prototype DialogShowSdComponentDialog2();
+ prototype DialogShowSdFinishReboot();
+
+ // your prototypes
+
+
+ // ----- global variables ------
+
+ // generated
+ BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
+ STRING svDir;
+ STRING svName, svCompany, svSerial;
+ STRING szAppPath;
+ STRING svSetupType;
+
+
+ // your global variables
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// MAIN PROGRAM
+//
+// The setup begins here by hiding the visible setup
+// window. This is done to allow all the titles, images, etc. to
+// be established before showing the main window. The following
+// logic then performs the setup in a series of steps.
+//
+///////////////////////////////////////////////////////////////////////////////
+program
+ Disable( BACKGROUND );
+
+ CheckRequirements();
+
+ SetupInstall();
+
+ SetupScreen();
+
+ if (ShowDialogs()<0) goto end_install;
+
+ if (ProcessBeforeDataMove()<0) goto end_install;
+
+ if (MoveFileData()<0) goto end_install;
+
+ if (ProcessAfterDataMove()<0) goto end_install;
+
+ if (SetupRegistry()<0) goto end_install;
+
+ if (SetupFolders()<0) goto end_install;
+
+
+ end_install:
+
+ CleanUpInstall();
+
+ // If an unrecoverable error occurred, clean up the partial installation.
+ // Otherwise, exit normally.
+
+ if (bInstallAborted) then
+ abort;
+ endif;
+
+endprogram
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ShowDialogs //
+// //
+// Purpose: This function manages the display and navigation //
+// the standard dialogs that exist in a setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ShowDialogs()
+ NUMBER nResult;
+ begin
+
+ Dlg_Start:
+ // beginning of dialogs label
+
+ Dlg_SdWelcome:
+ nResult = DialogShowSdWelcome();
+ if (nResult = BACK) goto Dlg_Start;
+
+ Dlg_SdShowInfoList:
+ nResult = DialogShowSdShowInfoList();
+ if (nResult = BACK) goto Dlg_SdWelcome;
+
+ Dlg_SdAskDestPath:
+ nResult = DialogShowSdAskDestPath();
+ if (nResult = BACK) goto Dlg_SdShowInfoList;
+
+ Dlg_SdSetupType:
+ nResult = DialogShowSdSetupType();
+ if (nResult = BACK) goto Dlg_SdAskDestPath;
+
+ Dlg_SdComponentDialog2:
+ if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
+ goto Dlg_SdSetupType;
+ endif;
+ nResult = DialogShowSdComponentDialog2();
+ if (nResult = BACK) goto Dlg_SdSetupType;
+
+ return 0;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessBeforeDataMove //
+// //
+// Purpose: This function performs any necessary operations prior to the //
+// actual data move operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessBeforeDataMove()
+ STRING svLogFile;
+ NUMBER nResult;
+ begin
+
+ InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );
+
+ svLogFile = UNINST_LOGFILE_NAME;
+
+ nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
+ if (nResult < 0) then
+ MessageBox( @ERROR_UNINSTSETUP, WARNING );
+ endif;
+
+ szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir
+
+ if ((bIs32BitSetup) && (bIsShellExplorer)) then
+// RegDBSetItem( REGDB_APPPATH, szAppPath );
+// RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
+ RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
+ endif;
+
+ // TODO : update any items you want to process before moving the data
+ //
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: MoveFileData //
+// //
+// Purpose: This function handles the data movement for //
+// the setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function MoveFileData()
+ NUMBER nResult, nDisk;
+ begin
+
+ nDisk = 1;
+ SetStatusWindow( 0, "" );
+ Disable( DIALOGCACHE );
+ Enable( STATUS );
+ StatusUpdate( ON, 100 );
+ nResult = ComponentMoveData( MEDIA, nDisk, 0 );
+
+ HandleMoveDataError( nResult );
+
+ Disable( STATUS );
+
+ return nResult;
+
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: HandleMoveDataError //
+// //
+// Purpose: This function handles the error (if any) during the move data //
+// operation. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function HandleMoveDataError( nResult )
+ STRING szErrMsg, svComponent , svFileGroup , svFile;
+ begin
+
+ svComponent = "";
+ svFileGroup = "";
+ svFile = "";
+
+ switch (nResult)
+ case 0:
+ return 0;
+ default:
+ ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
+ szErrMsg = @ERROR_MOVEDATA + "\n\n" +
+ @ERROR_COMPONENT + " " + svComponent + "\n" +
+ @ERROR_FILEGROUP + " " + svFileGroup + "\n" +
+ @ERROR_FILE + " " + svFile;
+ SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
+ bInstallAborted = TRUE;
+ return nResult;
+ endswitch;
+
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: ProcessAfterDataMove //
+// //
+// Purpose: This function performs any necessary operations needed after //
+// all data has been moved. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function ProcessAfterDataMove()
+ begin
+
+ // TODO : update self-registered files and other processes that
+ // should be performed after the data has been moved.
+
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupRegistry //
+// //
+// Purpose: This function makes the registry entries for this setup. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupRegistry()
+ NUMBER nResult;
+
+ begin
+
+ // TODO : Add all your registry entry keys here
+ //
+ //
+ // RegDBCreateKeyEx, RegDBSetKeyValueEx....
+ //
+
+ nResult = CreateRegistrySet( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+//
+// Function: SetupFolders
+//
+// Purpose: This function creates all the folders and shortcuts for the
+// setup. This includes program groups and items for Windows 3.1.
+//
+///////////////////////////////////////////////////////////////////////////////
+function SetupFolders()
+ NUMBER nResult;
+
+ begin
+
+
+ // TODO : Add all your folder (program group) along with shortcuts (program items)
+ //
+ //
+ // CreateProgramFolder, AddFolderIcon....
+ //
+
+ nResult = CreateShellObjects( "" );
+
+ return nResult;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CleanUpInstall //
+// //
+// Purpose: This cleans up the setup. Anything that should //
+// be released or deleted at the end of the setup should //
+// be done here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CleanUpInstall()
+ begin
+
+
+ if (bInstallAborted) then
+ return 0;
+ endif;
+
+ DialogShowSdFinishReboot();
+
+ if (BATCH_INSTALL) then // ensure locked files are properly written
+ CommitSharedFiles(0);
+ endif;
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupInstall //
+// //
+// Purpose: This will setup the installation. Any general initialization //
+// needed for the installation should be performed here. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupInstall()
+ begin
+
+ Enable( CORECOMPONENTHANDLING );
+
+ bInstallAborted = FALSE;
+
+ if (bIs32BitSetup) then
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
+ else
+ svDir = "C:\\mysql"; //PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
+ endif;
+
+ TARGETDIR = svDir;
+
+ SdProductName( @PRODUCT_NAME );
+
+ Enable( DIALOGCACHE );
+
+ return 0;
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: SetupScreen //
+// //
+// Purpose: This function establishes the screen look. This includes //
+// colors, fonts, and text to be displayed. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function SetupScreen()
+ begin
+
+ Enable( FULLWINDOWMODE );
+ Enable( INDVFILESTATUS );
+ SetTitle( @TITLE_MAIN, 24, WHITE );
+
+ SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.
+
+ Enable( BACKGROUND );
+
+ Delay( 1 );
+ end;
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: CheckRequirements //
+// //
+// Purpose: This function checks all minimum requirements for the //
+// application being installed. If any fail, then the user //
+// is informed and the setup is terminated. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function CheckRequirements()
+ NUMBER nvDx, nvDy, nvResult;
+ STRING svResult;
+
+ begin
+
+ bWinNT = FALSE;
+ bIsShellExplorer = FALSE;
+
+ // Check screen resolution.
+ GetExtents( nvDx, nvDy );
+
+ if (nvDy < 480) then
+ MessageBox( @ERROR_VGARESOLUTION, WARNING );
+ abort;
+ endif;
+
+ // set 'setup' operation mode
+ bIs32BitSetup = TRUE;
+ GetSystemInfo( ISTYPE, nvResult, svResult );
+ if (nvResult = 16) then
+ bIs32BitSetup = FALSE; // running 16-bit setup
+ return 0; // no additional information required
+ endif;
+
+ // --- 32-bit testing after this point ---
+
+ // Determine the target system's operating system.
+ GetSystemInfo( OS, nvResult, svResult );
+
+ if (nvResult = IS_WINDOWSNT) then
+ // Running Windows NT.
+ bWinNT = TRUE;
+
+ // Check to see if the shell being used is EXPLORER shell.
+ if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
+ if (nvResult >= 4) then
+ bIsShellExplorer = TRUE;
+ endif;
+ endif;
+
+ elseif (nvResult = IS_WINDOWS95 ) then
+ bIsShellExplorer = TRUE;
+
+ endif;
+
+end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdWelcome //
+// //
+// Purpose: This function handles the standard welcome dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdWelcome()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdWelcome( szTitle, szMsg );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdShowInfoList //
+// //
+// Purpose: This function displays the general information list dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdShowInfoList()
+ NUMBER nResult;
+ LIST list;
+ STRING szTitle, szMsg, szFile;
+ begin
+
+ szFile = SUPPORTDIR ^ "infolist.txt";
+
+ list = ListCreate( STRINGLIST );
+ ListReadFromFile( list, szFile );
+ szTitle = "";
+ szMsg = " ";
+ nResult = SdShowInfoList( szTitle, szMsg, list );
+
+ ListDestroy( list );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdAskDestPath //
+// //
+// Purpose: This function asks the user for the destination directory. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdAskDestPath()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );
+
+ TARGETDIR = svDir;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdSetupType //
+// //
+// Purpose: This function displays the standard setup type dialog. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdSetupType()
+ NUMBER nResult, nType;
+ STRING szTitle, szMsg;
+ begin
+
+ switch (svSetupType)
+ case "Typical":
+ nType = TYPICAL;
+ case "Custom":
+ nType = CUSTOM;
+ case "Compact":
+ nType = COMPACT;
+ case "":
+ svSetupType = "Typical";
+ nType = TYPICAL;
+ endswitch;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SetupType( szTitle, szMsg, "", nType, 0 );
+
+ switch (nResult)
+ case COMPACT:
+ svSetupType = "Compact";
+ case TYPICAL:
+ svSetupType = "Typical";
+ case CUSTOM:
+ svSetupType = "Custom";
+ endswitch;
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdComponentDialog2 //
+// //
+// Purpose: This function displays the custom component dialog. //
+// //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdComponentDialog2()
+ NUMBER nResult;
+ STRING szTitle, szMsg;
+ begin
+
+ if ((svSetupType != "Custom") && (svSetupType != "")) then
+ return 0;
+ endif;
+
+ szTitle = "";
+ szMsg = "";
+ nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );
+
+ return nResult;
+ end;
+
+
+///////////////////////////////////////////////////////////////////////////////
+// //
+// Function: DialogShowSdFinishReboot //
+// //
+// Purpose: This function will show the last dialog of the product. //
+// It will allow the user to reboot and/or show some readme text. //
+// //
+///////////////////////////////////////////////////////////////////////////////
+function DialogShowSdFinishReboot()
+ NUMBER nResult, nDefOptions;
+ STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
+ NUMBER bOpt1, bOpt2;
+ begin
+
+ if (!BATCH_INSTALL) then
+ bOpt1 = FALSE;
+ bOpt2 = FALSE;
+ szMsg1 = "";
+ szMsg2 = "";
+ szOption1 = "";
+ szOption2 = "";
+ nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
+ return 0;
+ endif;
+
+ nDefOptions = SYS_BOOTMACHINE;
+ szTitle = "";
+ szMsg1 = "";
+ szMsg2 = "";
+ nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );
+
+ return nResult;
+ end;
+
+ // --- include script file section ---
+
+#include "sddialog.rul"
+
+
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt b/VC++Files/InstallShield/4.1.XX-pro/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
new file mode 100755
index 00000000000..52ccf8e11a9
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Setup Files/Compressed Files/Language Independent/OS Independent/infolist.txt
@@ -0,0 +1,25 @@
+This is a release of MySQL Pro @VERSION@ for Win32.
+
+NOTE: If you install MySQL in a folder other than
+C:\MYSQL or you intend to start MySQL on NT/Win2000
+as a service, you must create a file named C:\MY.CNF
+or \Windows\my.ini or \winnt\my.ini with the following
+information::
+
+[mysqld]
+basedir=E:/installation-path/
+datadir=E:/data-path/
+
+After your have installed MySQL, the installation
+directory will contain 4 files named 'my-small.cnf,
+my-medium.cnf, my-large.cnf, my-huge.cnf'.
+You can use this as a starting point for your own
+C:\my.cnf file.
+
+If you have any problems, you can mail them to
+win32@lists.mysql.com after you have consulted the
+MySQL manual and the MySQL mailing list archive
+(http://www.mysql.com/documentation/index.html)
+
+On behalf of the MySQL AB gang,
+Michael Widenius
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp b/VC++Files/InstallShield/4.1.XX-pro/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp
new file mode 100755
index 00000000000..3229d50c9bf
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Setup Files/Uncompressed Files/Language Independent/OS Independent/setup.bmp
Binary files differ
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Shell Objects/Default.shl b/VC++Files/InstallShield/4.1.XX-pro/Shell Objects/Default.shl
new file mode 100755
index 00000000000..187cb651307
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Shell Objects/Default.shl
@@ -0,0 +1,12 @@
+[Data]
+Folder3=<FOLDER_STARTUP>
+Group0=Main
+Group1=Startup
+Folder0=<FOLDER_DESKTOP>
+Folder1=<FOLDER_STARTMENU>
+Folder2=<FOLDER_PROGRAMS>
+
+[Info]
+Type=ShellObject
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/String Tables/0009-English/value.shl b/VC++Files/InstallShield/4.1.XX-pro/String Tables/0009-English/value.shl
new file mode 100755
index 00000000000..525f3be0b3e
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/String Tables/0009-English/value.shl
@@ -0,0 +1,23 @@
+[Data]
+TITLE_MAIN=MySQL Pro Servers and Clients @VERSION@
+COMPANY_NAME=MySQL AB
+ERROR_COMPONENT=Component:
+COMPANY_NAME16=Company
+PRODUCT_VERSION=MySQL Pro Servers and Clients @VERSION@
+ERROR_MOVEDATA=An error occurred during the move data process: %d
+ERROR_FILEGROUP=File Group:
+UNINST_KEY=MySQL Pro Servers and Clients @VERSION@
+TITLE_CAPTIONBAR=MySQL Pro Servers and Clients @VERSION@
+PRODUCT_NAME16=Product
+ERROR_VGARESOLUTION=This program requires VGA or better resolution.
+ERROR_FILE=File:
+UNINST_DISPLAY_NAME=MySQL Pro Servers and Clients @VERSION@
+PRODUCT_KEY=yourapp.Exe
+PRODUCT_NAME=MySQL Pro Servers and Clients @VERSION@
+ERROR_UNINSTSETUP=unInstaller setup failed to initialize. You may not be able to uninstall this product.
+
+[General]
+Language=0009
+Type=STRINGTABLESPECIFIC
+Version=1.00.000
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/String Tables/Default.shl b/VC++Files/InstallShield/4.1.XX-pro/String Tables/Default.shl
new file mode 100755
index 00000000000..d4dc4925ab1
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/String Tables/Default.shl
@@ -0,0 +1,74 @@
+[TITLE_MAIN]
+Comment=
+
+[COMPANY_NAME]
+Comment=
+
+[ERROR_COMPONENT]
+Comment=
+
+[COMPANY_NAME16]
+Comment=
+
+[PRODUCT_VERSION]
+Comment=
+
+[ERROR_MOVEDATA]
+Comment=
+
+[ERROR_FILEGROUP]
+Comment=
+
+[Language]
+Lang0=0009
+CurrentLang=0
+
+[UNINST_KEY]
+Comment=
+
+[TITLE_CAPTIONBAR]
+Comment=
+
+[Data]
+Entry0=ERROR_VGARESOLUTION
+Entry1=TITLE_MAIN
+Entry2=TITLE_CAPTIONBAR
+Entry3=UNINST_KEY
+Entry4=UNINST_DISPLAY_NAME
+Entry5=COMPANY_NAME
+Entry6=PRODUCT_NAME
+Entry7=PRODUCT_VERSION
+Entry8=PRODUCT_KEY
+Entry9=ERROR_MOVEDATA
+Entry10=ERROR_UNINSTSETUP
+Entry11=COMPANY_NAME16
+Entry12=PRODUCT_NAME16
+Entry13=ERROR_COMPONENT
+Entry14=ERROR_FILEGROUP
+Entry15=ERROR_FILE
+
+[PRODUCT_NAME16]
+Comment=
+
+[ERROR_VGARESOLUTION]
+Comment=
+
+[ERROR_FILE]
+Comment=
+
+[General]
+Type=STRINGTABLE
+Version=1.00.000
+
+[UNINST_DISPLAY_NAME]
+Comment=
+
+[PRODUCT_KEY]
+Comment=
+
+[PRODUCT_NAME]
+Comment=
+
+[ERROR_UNINSTSETUP]
+Comment=
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Text Substitutions/Build.tsb b/VC++Files/InstallShield/4.1.XX-pro/Text Substitutions/Build.tsb
new file mode 100755
index 00000000000..3949bd4c066
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Text Substitutions/Build.tsb
@@ -0,0 +1,56 @@
+[<HKUS>]
+Value=
+KeyType=4
+
+[<HKCR>]
+Value=
+KeyType=4
+
+[<PROGRAMFILES>]
+Value=
+KeyType=4
+
+[<WINSYSDIR>]
+Value=
+KeyType=4
+
+[<COMMONFILES>]
+Value=
+KeyType=4
+
+[<WINDIR>]
+Value=
+KeyType=4
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<HKLM>
+Key5=<HKCU>
+Key6=<HKCC>
+Key7=<HKDD>
+Key8=<HKUS>
+Key9=<HKCR>
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKLM>]
+Value=
+KeyType=4
+
+[<HKCU>]
+Value=
+KeyType=4
+
+[<HKCC>]
+Value=
+KeyType=4
+
+[<HKDD>]
+Value=
+KeyType=4
+
diff --git a/VC++Files/InstallShield/4.1.XX-pro/Text Substitutions/Setup.tsb b/VC++Files/InstallShield/4.1.XX-pro/Text Substitutions/Setup.tsb
new file mode 100755
index 00000000000..b0c5a509f0b
--- /dev/null
+++ b/VC++Files/InstallShield/4.1.XX-pro/Text Substitutions/Setup.tsb
@@ -0,0 +1,76 @@
+[<SRCDIR>]
+Value=
+KeyType=4
+
+[<HKUS>]
+Value=
+KeyType=4
+
+[<HKCR>]
+Value=
+KeyType=4
+
+[<PROGRAMFILES>]
+Value=
+KeyType=4
+
+[<TARGETDIR>]
+Value=
+KeyType=4
+
+[<WINSYSDIR>]
+Value=
+KeyType=4
+
+[<COMMONFILES>]
+Value=
+KeyType=4
+
+[<WINDIR>]
+Value=
+KeyType=4
+
+[Data]
+Key0=<PROGRAMFILES>
+Key1=<COMMONFILES>
+Key2=<WINDIR>
+Key3=<WINSYSDIR>
+Key4=<TARGETDIR>
+Key5=<SUPPORTDIR>
+Key10=<HKDD>
+Key6=<SRCDIR>
+Key11=<HKUS>
+Key7=<HKLM>
+Key12=<HKCR>
+Key8=<HKCU>
+Key13=<SHELL_OBJECT_FOLDER>
+Key9=<HKCC>
+
+[<SUPPORTDIR>]
+Value=
+KeyType=4
+
+[<SHELL_OBJECT_FOLDER>]
+Value=
+KeyType=4
+
+[General]
+Type=TEXTSUB
+Version=1.00.000
+
+[<HKLM>]
+Value=
+KeyType=4
+
+[<HKCU>]
+Value=
+KeyType=4
+
+[<HKCC>]
+Value=
+KeyType=4
+
+[<HKDD>]
+Value=
+KeyType=4
+