Import new deliv scripts for Windows.

This commit is contained in:
2018-05-13 14:05:22 +02:00
commit d1ee124c01
117 changed files with 4575 additions and 0 deletions

67
README.md Normal file
View File

@@ -0,0 +1,67 @@
# How to build a release
## Requirements
- TCC/LE from https://jpsoft.com: [Download TCC/LE v14](https://jpsoft.com/downloads/v14/tccle.exe)
- And follow the [Guide Compiling EiffelStudio](https://dev.eiffel.com/Compiling_EiffelStudio)
- Microsoft C compiler: see [Installing Microsoft C compiler](https://dev.eiffel.com/Installing_Microsoft_C_compiler)
- Subversion client: see [Subversion Settings](https://dev.eiffel.com/Subversion_Settings) .
## Archive release
## Setup release
## Files ...
-`check_environment.btm`:
Check if environment is well set:
- has ISE_EIFFEL, ISE_PLATFORM, INSTALL_LOG , INSTALL_DIR defined!
- has EIFFEL_SRC, FINALIZATION_DIR ... if NO_COMPILE is False.
- check for `tar`
-`compile_c_libraries.btm`:
Compile Clibs for com, cURL, net, obsolete\net, store, store odbc+mysql+oracle, vision2, web_browser, wel
-`compile_other_c_libraries.btm`:
Compile Clibs for sqlite3, beep example, C_library zlib+libpng
-`update_libraries.btm (dirname)`:
compile Clib files for libraries (com, cURL, encryption, net, web_browser, wel, vision2).
-`make_assembly_manager.btm`:
copy dotnet wizards
-`make_build.btm`:
compile esbuilder
-`make_com_wizard.btm`:
-`make_delivery.btm`:
-`make_dotnet.btm`:
-`make_exes.btm`:
-`make_installations.btm`:
-`make_libraries.btm`:
-`make_other_libraries.btm`:
-`make_rb.btm`:
-`make_runtimes.btm`:
-`make_tools.btm`:
-`make_vision2_demo.btm`:
-`make_wizards.btm`:
-`set_aliases.btm`:
set environment variables and set aliases via `set_simple_aliases`
note: hardcoded path
- c:\work\tmpdev
- c:\work\17.05
- c:\work\InstalledEiffel_17.05
-`set_simple_aliases.btm`:
set various aliases such as:
- copy, fullrd, fullrf, quick_move, safe_md, save_path,
- remtrace, give_time_to, cancel,
- co, exprt, exprtfile,
- default_make, specific_make, clean_project,
- finalize, melt, freeze, cleanup_dotnet_eiffel, cleanup_eiffel,
- testpar
-`set_version.bat (SVN url, pattern to transform, ?file to process)`:
set version number in provided file,
or display version on output (if no pattern or file is provided)
-`svn_command.bat*`:
perform svn commands and retry in case of failure
-`test_examples.btm`:
-`test_precompile.btm`:
# USED DIRECTLY

11
etc/config.btm Normal file
View File

@@ -0,0 +1,11 @@
iff exist %~dp0local.btm then
call %~dp0local.btm
endiff
iff not defined STUDIO_VERSION_MAJOR_MINOR then
set STUDIO_VERSION_MAJOR_MINOR=18.05
endiff
iff not defined WORK_DIR then
set WORK_DIR=C:\work
endiff

18
etc/local.btm Normal file
View File

@@ -0,0 +1,18 @@
iff not defined WORK_DIR then
set WORK_DIR=M:\work
endiff
iff not defined DEFAULT_PUBLIC_SVN then
set DEFAULT_PUBLIC_SVN=https://svn.eiffel.com/eiffelstudio/trunk
set DEFAULT_PUBLIC_SVN=file:///B:/ise/repos/mirrors/svn/eiffelstudio/trunk
endiff
iff not defined DEFAULT_ISE_SVN then
set DEFAULT_ISE_SVN=svn://jfiat@svn.ise:3691/ise_svn/trunk
set DEFAULT_ISE_SVN=file:///B:/ise/repos/mirrors/svn/ise/trunk
endiff
iff not defined PUBLIC_SVN_REVISION then
set PUBLIC_SVN_REVISION=HEAD
endiff
iff not defined ISE_C_COMPILER_VER then
set ISE_C_COMPILER_VER=WSDK71
set ISE_C_COMPILER_VER=VC140
endiff

40
inc/check_environment.btm Normal file
View File

@@ -0,0 +1,40 @@
iff not defined ISE_EIFFEL then
echo ISE_EIFFEL not defined. Cannot continue
CANCEL
endiff
iff not defined ISE_PLATFORM then
echo ISE_PLATFORM not defined. Cannot continue
CANCEL
endiff
iff not defined NO_COMPILE then
iff not defined EIFFEL_SRC then
echo EIFFEL_SRC not defined. Cannot continue
CANCEL
endiff
iff not defined FINALIZATION_DIR then
echo FINALIZATION_DIR not defined. Cannot continue
CANCEL
endiff
iff not exist %ISE_EIFFEL\gcc\%ISE_PLATFORM\mingw\bin\gcc.exe then
echo Cannot find a version of MinGW under ISE_EIFFEL. Cannot continue
CANCEL
endiff
iff not exist %ISE_EIFFEL\studio\spec\%ISE_PLATFORM\bin\ecb.exe then
endiff
iff isdir %EIFFEL_SRC then
echo Warning: %EIFFEL_SRC will be erased by the script!
endiff
endiff
rem An alternative to find a program is the following two lines
rem set MyProgramPresent=0
rem for %%x in (program.exe) do if not [%%~$PATH:x]==[] set MyProgramPresent=1
tar --version 2>NUL 1>NUL || (echo "Cannot find a version of tar. Cannot continue" && CANCEL)
iff not defined INSTALL_LOG then
echo Error: No file specified for the log
CANCEL
endiff
iff not defined INSTALL_DIR then
echo Error: No path specified for the generated delivery
CANCEL
endiff

View File

@@ -0,0 +1,69 @@
@echo off
call %INIT_DIR%\inc\set_simple_aliases.btm
remtrace Compiling C code of libraries for C compiler %2
rem arg1 = Root of EiffelStudio installation
rem arg2 = Name of C compiler used
iff not defined NO_COMPILE then
remtrace Retrieve the header files
remtrace - source: %DEFAULT_ISE_SVN/Src/library/headers.tar.gz
remtrace - target: %EIFFEL_SRC\headers\headers.tar.gz
cdd %EIFFEL_SRC
safe_md headers
REM "We keep a copy of vendors specific header files at EiffelSoftware as they cannot be"
REM "redistributed freely."
exprtfile %DEFAULT_ISE_SVN/Src/library/headers.tar.gz > headers\headers.tar.gz
cd headers
tar xvfz headers.tar.gz
iff not isdir apps then
remtrace Could not retrieve the header files.
endiff
set JDK_HOME=%EIFFEL_SRC\headers\apps\jdk1.1.8
set ORACLE_HOME=%EIFFEL_SRC\headers\apps\oracle
cdd %1
remtrace Compile the C code, and remove extra clib's
iff isdir %1\library\com then
remtrace com
cd %1\library\com\Clib
specific_make %2
cd %1\library\com\Clib_runtime
specific_make %2
cd %1\library\com
endiff
remtrace cURL
cd %1\library\cURL\Clib
specific_make %2
remtrace net
cd %1\library\net\Clib
specific_make %2
remtrace store
cd %1\library\store\dbms\rdbms\odbc\clib
specific_make %2
cd %1\library\store\dbms\rdbms\mysql\clib
specific_make %2
cd %1\library\store\dbms\rdbms\oracle\clib
specific_make %2
remtrace vision2
cd %1\library\vision2\Clib
specific_make %2
remtrace web_browser
cd %1\library\web_browser\Clib
specific_make %2
remtrace wel
cd %1\library\wel\clib
specific_make %2
fullrf %1\library\wel\clib\make.log
else
cdd %1
quick_move /s library\com\spec
fullrd %1\library\com\Clib
fullrd %1\library\com\Clib_runtime
quick_move /s library\net\spec
quick_move /s library\store\spec
quick_move /s library\vision2\spec
quick_move /s library\wel\spec
endiff

View File

@@ -0,0 +1,28 @@
@echo off
call %INIT_DIR%\inc\set_simple_aliases.btm
remtrace Compiling C code of other libraries for C compiler %2
rem arg1 = Root of EiffelStudio installation
rem arg2 = Name of C compiler used
iff not defined NO_COMPILE then
cdd %1
remtrace SQLite3
cdd %1\unstable\library\persistency\database\sqlite3\Clib
specific_make %2
fullrf %1\unstable\library\persistency\database\sqlite3\Clib\make.log
remtrace Compile examples
iff exist %1\examples\base\beep\Clib then
cd %1\examples\base\beep\Clib
specific_make %2
endiff
cd %1\C_library\zlib
specific_make %2
cd %1\C_library\libpng
specific_make %2
endiff

View File

@@ -0,0 +1,38 @@
echo Current configuration:
echo ----------------------
echo INIT_DIR=%INIT_DIR (script root directory)
echo ISE_EIFFEL=%ISE_EIFFEL
echo ISE_PLATFORM=%ISE_PLATFORM
echo INSTALL_DIR=%INSTALL_DIR
echo STUDIO_DIR=%STUDIO_DIR
echo Log file location: %INSTALL_LOG
echo The private ISE svn repository: %DEFAULT_ISE_SVN
echo The public svn repository: %DEFAULT_PUBLIC_SVN
echo The revision that will be generated: %PUBLIC_SVN_REVISION
echo ecb version:
ecb -version
echo -----------------------------
iff exist %INSTALL_DIR .or. isdir %INSTALL_DIR then
echo Warning: %INSTALL_DIR will be replaced by the installation script, you will lose everything in it
endiff
iff defined NO_COMPILE then
echo No compilation will be performed (including EiffelStudio's compilation)
endiff
iff defined NO_NEW_EC then
echo No new version of EiffelStudio will be compiled
endiff
iff defined BUILD_ENTERPRISE_ONLY then
echo Only EiffelStudio Enterprise will be build
endiff
iff defined NO_WIZARDS then
echo No wizards will be compiled.
endiff
iff defined NO_INSTALL then
echo The delivery will be generated, but not the final installation executable
endiff
iff not defined NO_INSTALL .and. not defined NO_COMPILE then
echo All components will be recompiled
endiff

View File

@@ -0,0 +1,12 @@
echo You have 60s to cancel this build
choice /T 60 /C cyn /N /D y /M "Press [C] to cancel, Press [Y] to continue now, or wait 60s ..."
if %ERRORLEVEL% == 2 goto CONTINUE
goto ABORT
:ABORT
echo Operation cancelled!
CANCEL
goto eof
:CONTINUE
goto eof

View File

@@ -0,0 +1,3 @@
remtrace Do not know how to generate the assembly manager :(
quick_move wizards\dotnet\*.*

26
inc/make_com_wizard.btm Normal file
View File

@@ -0,0 +1,26 @@
mkdir %STUDIO_DIR\wizards\com\resources
copy %EIFFEL_SRC\tools\com_wizard\root\resources\*.* %STUDIO_DIR\wizards\com\resources
remtrace Compile the COM wizard
cdd %EIFFEL_SRC\tools\com_wizard\root
set_version %EIFFEL_SRC 0000 argument_parser.e
clean_project
finalize com_wizard.ecf
cleanup_eiffel com_wizard com_wizard.exe
iff not exist com_wizard.exe then
echo "Couldnt generate the COM wizard"
CANCEL
endiff
move com_wizard.exe %STUDIO_DIR\wizards\com
clean_project
remtrace Compile COM wizard launcher for GUI mode.
cdd %EIFFEL_SRC\tools\com_wizard\launcher
finalize com_wizard_launcher.ecf
cleanup_eiffel com_wizard_launcher com_wizard_launcher.exe
iff not exist com_wizard_launcher.exe then
echo "Couldnt compile com_wizard_launcher.exe"
CANCEL
endiff
move com_wizard_launcher.exe %STUDIO_DIR\wizards\com

35
inc/make_dotnet.btm Normal file
View File

@@ -0,0 +1,35 @@
remtrace Compiling .NET components
REM Should be called by `make_exes.btm'
cdd %EIFFEL_SRC
remtrace Compiling .NET runtime
cd %EIFFEL_SRC\Eiffel\eiffel\com_il_generation\core\run-time
espawn -u:%ISE_C_COMPILER_VER% "%COMSPEC% /c nmake msbuild_20"
copy EiffelSoftware.Runtime.dll %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib
copy EiffelSoftware.Runtime.dll %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
copy EiffelSoftware.Runtime.dll %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Compiling Eiffel Assembly Cache
cdd %EIFFEL_SRC\dotnet\consumer
finalize consumer.ecf consumer_20
cleanup_dotnet_eiffel consumer_20 EiffelSoftware.MetadataConsumer.dll
iff not exist libEiffelSoftware.MetadataConsumer.dll then
remtrace Could not compile EiffelSoftware.MetadataConsumer.dll
CANCEL
endiff
copy EiffelSoftware.MetadataConsumer.dll %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
copy libEiffelSoftware.MetadataConsumer.dll %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace Compiling Eiffel Metadata Cosumer Executable
cdd %EIFFEL_SRC\dotnet\consumer
finalize consumer.ecf emdc
cleanup_dotnet_eiffel emdc emdc.exe
iff not exist libemdc.dll then
remtrace Could not compile emdc.exe
CANCEL
endiff
copy emdc.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
copy libemdc.dll %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
cdd %EIFFEL_SRC

16
inc/make_esbuilder.btm Normal file
View File

@@ -0,0 +1,16 @@
remtrace Compiling EiffelBuild
REM Should be called by `make_exes.btm'
cdd %EIFFEL_SRC
cdd %EIFFEL_SRC\build\Constants
set_version %EIFFEL_SRC 0000 gb_about_dialog_constants.e
cdd %EIFFEL_SRC/build
clean_project
finalize esbuilder.ecf
cleanup_eiffel esbuilder esbuilder.exe
iff not exist esbuilder.exe then
remtrace Could not finalize a new EiffelBuild
CANCEL
else
move esbuilder.exe %STUDIO_DIR\esbuilder\spec\%ISE_PLATFORM\bin\
endiff

365
inc/make_exes.btm Normal file
View File

@@ -0,0 +1,365 @@
remtrace Compile C code of the libraries
remtrace "A tout seigneur tout honneur", let's start with the run-time
md %INSTALL_DIR\releases
md %INSTALL_DIR\releases\enterprise_version
md %INSTALL_DIR\releases\gpl_version
remtrace Compile the run-times
iff not defined WIN64 then
remtrace Compile a run-time for MinGW
cdd %EIFFEL_SRC\C
call configure clean >>& %INSTALL_LOG
call configure win32 g >>& %INSTALL_LOG
cd %EIFFEL_SRC
copy C\run-time\LIB\*.a %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib\mingw
remtrace Compile a dynamic run-time for MinGW
cdd %EIFFEL_SRC\C
call configure clean >>& %INSTALL_LOG
call configure win32 g dll >>& %INSTALL_LOG
cd %EIFFEL_SRC
copy C\run-time\LIB\*dll* %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib\mingw
else
remtrace Compile a run-time for MinGW
cdd %EIFFEL_SRC\C
call configure clean >>& %INSTALL_LOG
call configure win64 g >>& %INSTALL_LOG
cd %EIFFEL_SRC
copy C\run-time\LIB\*.a %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib\mingw
remtrace Compile a dynamic run-time for MinGW
cdd %EIFFEL_SRC\C
call configure clean >>& %INSTALL_LOG
call configure win64 g dll >>& %INSTALL_LOG
cd %EIFFEL_SRC
copy C\run-time\LIB\*dll* %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib\mingw
endiff
remtrace Copy the configuration file
iff not defined WIN64 then
copy %EIFFEL_SRC\C\CONFIGS\windows-x86-mingw %STUDIO_DIR\studio\config\%ISE_PLATFORM\mingw\config.sh
else
copy %EIFFEL_SRC\C\CONFIGS\windows-x86-64-mingw %STUDIO_DIR\studio\config\%ISE_PLATFORM\mingw\config.sh
endiff
remtrace Compile the run-time for Microsoft
espawn -u:VC140 "%COMSPEC% /c %INIT_DIR%\inc\make_runtimes.btm msc_vc140"
iff defined %ISE_C_COMPILER_VER% then
espawn -u:%ISE_C_COMPILER_VER% "%COMSPEC% /c %INIT_DIR%\inc\make_runtimes.btm msc"
else
echo MISSING ISE_C_COMPILER_VER !!!
endiff
remtrace Copy the header files
copy %EIFFEL_SRC\C\run-time\*.h %STUDIO_DIR\studio\spec\%ISE_PLATFORM\include
copy %EIFFEL_SRC\C\run-time\eif_stack.decl %STUDIO_DIR\studio\spec\%ISE_PLATFORM\include
copy %EIFFEL_SRC\C\run-time\eif_stack.interface %STUDIO_DIR\studio\spec\%ISE_PLATFORM\include
cd %EIFFEL_SRC
remtrace Copy the MSYS part
copy %EIFFEL_SRC\C\shell\bin\rt_converter.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin\
copy %EIFFEL_SRC\C\shell\bin\sed.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin\
copy %EIFFEL_SRC\C\shell\bin\mkdir.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin\
copy %EIFFEL_SRC\C\shell\bin\*.dll %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin\
safe_md %STUDIO_DIR\studio\spec\%ISE_PLATFORM\etc
echo Dummy >> %STUDIO_DIR\studio\spec\%ISE_PLATFORM\etc\dummy.txt
remtrace Then the C libraries
cd %EIFFEL_SRC\C_library
fullrd .libs
remtrace libpng
cd %EIFFEL_SRC\C_library\libpng
default_make
remtrace zlib
cd %EIFFEL_SRC\C_library\zlib
default_make
REM These directories should already have been created by make_delivery. Whatever...
safe_md %STUDIO_DIR\studio\spec
safe_md %STUDIO_DIR\studio\spec\%ISE_PLATFORM
safe_md %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace CLI writer
cd %EIFFEL_SRC\framework\cli_writer\Clib
default_make
remtrace CLI debugger
cd %EIFFEL_SRC\framework\cli_debugger\Clib
default_make
REM Compiling EiffelStudio stuff
iff defined BUILD_ENTERPRISE_ONLY then
remtrace Recompile EiffelStudio
cdd %FINALIZATION_DIR
copy %EIFFEL_SRC\Eiffel\Ace\*.* .
copy %EIFFEL_SRC\tools\estudio_enterprise\ec.ecf ec.ecf
iff not exist ec.ecf then
remtrace Cannot find the finalization Ace for EiffelStudio
CANCEL
endiff
remtrace Enterprise edition
cdd %EIFFEL_SRC\Eiffel\API\constants
set_version %EIFFEL_SRC 0000 system_constants.e
sed -e "s/Version_type_name:\ STRING\ =\ \"GPL\ Edition\"/Version_type_name:\ STRING\ =\ \"Enterprise\ Edition\"/g" system_constants.e >> new_system_constants.e
move new_system_constants.e system_constants.e
cdd %FINALIZATION_DIR
clean_project
finalize ec.ecf bench
cleanup_eiffel bench ec.exe
iff not exist ec.exe then
remtrace Could not finalize a new "enterprise_version" EiffelStudio
CANCEL
endiff
move ec.exe %INSTALL_DIR\releases\enterprise_version
clean_project
finalize ec.ecf batch
cleanup_eiffel batch ecb.exe
iff not exist ecb.exe then
remtrace Could not finalize a new batch version of the compiler
CANCEL
endiff
move ecb.exe %INSTALL_DIR\releases\enterprise_version
exprtfile -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/Delivery/scripts/licensing/eiffelstudio/enterprise.txt > %INSTALL_DIR\releases\enterprise_version\LICENSE
else
iff not defined NO_NEW_EC then
remtrace GPL edition
cdd %EIFFEL_SRC\Eiffel\API\constants
set_version %EIFFEL_SRC 0000 system_constants.e
cdd %FINALIZATION_DIR
copy %EIFFEL_SRC\Eiffel\Ace\*.* .
clean_project
finalize ec.ecf bench
cleanup_eiffel bench ec.exe
iff not exist ec.exe then
remtrace Could not finalize a new "gpl_edition" EiffelStudio
CANCEL
endiff
move ec.exe %INSTALL_DIR\releases\gpl_version
clean_project
finalize ec.ecf batch
cleanup_eiffel batch ecb.exe
iff not exist ecb.exe then
remtrace Could not finalize a new batch version of the compiler
CANCEL
endiff
move ecb.exe %INSTALL_DIR\releases\gpl_version
exprtfile -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/Delivery/scripts/licensing/eiffelstudio/gpl.txt > %INSTALL_DIR\releases\gpl_version\LICENSE
remtrace Enterprise edition for EiffelStudio
cdd %EIFFEL_SRC\Eiffel\API\constants
sed -e "s/Version_type_name:\ STRING\ =\ \"GPL\ Edition\"/Version_type_name:\ STRING\ =\ \"Enterprise\ Edition\"/g" system_constants.e >> new_system_constants.e
move new_system_constants.e system_constants.e
cdd %FINALIZATION_DIR
clean_project
copy %EIFFEL_SRC\tools\estudio_enterprise\ec.ecf ec.ecf
finalize ec.ecf bench
cleanup_eiffel bench ec.exe
iff not exist ec.exe then
remtrace Could not finalize a new "enterprise_version" EiffelStudio
CANCEL
endiff
move ec.exe %INSTALL_DIR\releases\enterprise_version
clean_project
finalize ec.ecf batch
cleanup_eiffel batch ecb.exe
iff not exist ecb.exe then
remtrace Could not finalize a new batch version of the compiler
CANCEL
endiff
move ecb.exe %INSTALL_DIR\releases\enterprise_version
exprtfile -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/Delivery/scripts/licensing/eiffelstudio/gpl.txt > %INSTALL_DIR\releases\enterprise_version\LICENSE
endiff
endiff
remtrace Recompile finish_freezing
cdd %EIFFEL_SRC\tools\finish_freezing
cd Clib
default_make
cd ..
clean_project
finalize finish_freezing.ecf finish_freezing
cleanup_eiffel finish_freezing finish_freezing.exe
iff not exist finish_freezing.exe then
remtrace Could not finalize a new finish_freezing
CANCEL
endiff
move finish_freezing.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace Recompile emake
cdd %EIFFEL_SRC\tools\eiffel_make
clean_project
finalize emake.ecf
cleanup_eiffel emake emake.exe
iff not exist emake.exe then
remtrace Could not finalize a new emake
CANCEL
endiff
move emake.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace Recompile quick_finalize
cdd %EIFFEL_SRC\tools\quick_finalize
clean_project
finalize quick_finalize.ecf
cleanup_eiffel quick_finalize quick_finalize.exe
iff not exist quick_finalize.exe then
remtrace Could not finalize a new quick_finalize
CANCEL
endiff
move quick_finalize.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace Put ecdbgd.exe in the new delivery
REM It should already have been compiled by the configure of the run-time.
cdd %EIFFEL_SRC\C\ipc\daemon
iff not exist ecdbgd.exe then
remtrace Could not finalize a new ecdbgd
CANCEL
endiff
move ecdbgd.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace Put x2c.exe in the new delivery
REM It should already have been compiled by the configure of the run-time.
cdd %EIFFEL_SRC\C\run-time
iff not exist x2c.exe then
remtrace Could not finalize a new x2c
CANCEL
endiff
move x2c.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace Recompile h2e
cdd %EIFFEL_SRC\library\wel\extra
clean_project
finalize h2e.ecf
cleanup_eiffel h2e h2e.exe
iff not exist h2e.exe then
remtrace Could not finalize a new h2e
CANCEL
endiff
move h2e.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace Recompile estudio.exe
cdd %EIFFEL_SRC\tools\estudio\config
clean_project
finalize estudio.ecf estudio
cleanup_eiffel estudio estudio.exe
iff not exist estudio.exe then
remtrace Could not finalize a new estudio
CANCEL
endiff
move estudio.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace get GDI+ for platforms that don't have it
cdd %EIFFEL_SRC\tools
co %DEFAULT_ISE_SVN/Src/tools/gdiplus gdiplus
move gdiplus\gdiplus.dll %INSTALL_DIR\releases
remtrace Recompiling EiffelBuild
cdd %INIT_DIR
call inc\make_esbuilder.btm
remtrace Recompiling Vision2 tour
cdd %INIT_DIR
call inc\make_vision2_demo.btm
remtrace Recompile Legacy++
cdd %EIFFEL_SRC\tools\legacy\PCCTS
safe_md bin
espawn -u:%ISE_C_COMPILER_VER% "%COMSPEC% /c nmake -f makefile.win"
cd ..
cd legacy
espawn -u:%ISE_C_COMPILER_VER% "%COMSPEC% /c nmake -f makefile.win"
iff not exist legacy.exe then
remtrace Couldnt generate legacy.exe
CANCEL
endiff
move legacy.exe %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin
remtrace Getting eweasel source code
safe_md %EIFFEL_SRC\eweasel
co -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/eweasel/source %EIFFEL_SRC\eweasel\source
remtrace Compiling eweasel
safe_md %STUDIO_DIR\eweasel
safe_md %STUDIO_DIR\eweasel\spec
safe_md %STUDIO_DIR\eweasel\spec\%ISE_PLATFORM
safe_md %STUDIO_DIR\eweasel\spec\%ISE_PLATFORM\bin
cdd %EIFFEL_SRC\eweasel\source
clean_project
set OLD_EWEASEL=%EWEASEL
set EWEASEL=%EIFFEL_SRC\eweasel
finalize eweasel.ecf eweasel_st
cleanup_eiffel eweasel_st eweasel.exe
move eweasel.exe %STUDIO_DIR\eweasel\spec\%ISE_PLATFORM\bin
finalize eweasel.ecf eweasel_mt
cleanup_eiffel eweasel_mt eweasel-mt.exe
move eweasel-mt.exe %STUDIO_DIR\eweasel\spec\%ISE_PLATFORM\bin
set EWEASEL=%OLD_EWEASEL
set OLD_EWEASEL=
remtrace Compiling Eiffel Software tools
cdd %INIT_DIR
call inc\make_tools.btm
remtrace Compiling Gobo tools
safe_md %STUDIO_DIR\library\gobo\spec
safe_md %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM
safe_md %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
cdd %EIFFEL_SRC\library\gobo\src
clean_project
remtrace geant
finalize geant.ecf geant
cleanup_eiffel geant geant.exe
move geant.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace gec
finalize gec.ecf gec
cleanup_eiffel gec gec.exe
move gec.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace gelex
finalize gelex.ecf gelex
cleanup_eiffel gelex gelex.exe
move gelex.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace gelint
finalize gelint.ecf gelint
cleanup_eiffel gelint gelint.exe
move gelint.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace gepp
finalize gepp.ecf gepp
cleanup_eiffel gepp gepp.exe
move gepp.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace getest
finalize getest.ecf getest
cleanup_eiffel getest getest.exe
move getest.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace gexace
finalize gexace.ecf gexace
cleanup_eiffel gexace gexace.exe
move gexace.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace gexslt
finalize gexslt.ecf gexslt
cleanup_eiffel gexslt gexslt.exe
move gexslt.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace geyacc
finalize geyacc.ecf geyacc
cleanup_eiffel geyacc geyacc.exe
move geyacc.exe %STUDIO_DIR\library\gobo\spec\%ISE_PLATFORM\bin
remtrace Compiling .NET components
cdd %INIT_DIR
call inc\make_dotnet.btm
cdd %EIFFEL_SRC

81
inc/make_libraries.btm Normal file
View File

@@ -0,0 +1,81 @@
remtrace Retrieve libraries
cdd %1
md library
cd library
remtrace api_wrapper
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/api_wrapper api_wrapper
remtrace argument_parser
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/argument_parser argument_parser
remtrace base
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/base base
remtrace base_extension
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/base_extension base_extension
remtrace cocoa
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/cocoa cocoa
remtrace com
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/com com
remtrace cURL
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/cURL cURL
remtrace diff
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/diff diff
remtrace docking
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/docking docking
remtrace Eiffel2Java
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/Eiffel2Java Eiffel2Java
remtrace editor
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/editor editor
remtrace encoding
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/encoding encoding
remtrace event
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/event event
remtrace gobo
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/gobo gobo
fullrd gobo\svn\work
remtrace gobo_extension
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/gobo_extension gobo_extension
remtrace graph
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/graph graph
remtrace i18n
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/i18n i18n
remtrace lex
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/lex lex
remtrace memory_analyzer
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/memory_analyzer memory_analyzer
remtrace net
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/net net
remtrace objc_base
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/objc_base objc_base
remtrace parse
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/parse parse
remtrace patterns
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/patterns patterns
remtrace preferences
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/preferences preferences
remtrace process
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/process process
remtrace ribbon
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/ribbon ribbon
remtrace runtime
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/runtime runtime
remtrace store
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/store store
remtrace testing
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/testing testing
remtrace text
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/text text
remtrace thread
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/thread thread
remtrace time
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/time time
remtrace uuid
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/uuid uuid
remtrace vision2
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/vision2 vision2
remtrace vision2_extension
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/vision2_extension vision2_extension
remtrace web
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/web web
remtrace web_browser
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/web_browser web_browser
remtrace wel
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/%2/wel wel

View File

@@ -0,0 +1,25 @@
remtrace Retrieve unstable libraries
cdd %1
md unstable
cd unstable
remtrace README.txt
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/unstable/README.txt README.txt
remtrace library
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/unstable/library library
remtrace Retrieve contrib libraries and examples
cdd %1
md contrib
cd contrib
remtrace README.txt
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/contrib/README.txt README.txt
remtrace library
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/contrib/library library
remtrace examples
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/contrib/examples examples

18
inc/make_rb.btm Normal file
View File

@@ -0,0 +1,18 @@
remtrace Update the source files
REM cdd %EIFFEL_SRC
REM co -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/tools/resource_bench resource_bench
remtrace Recompile Resource Bench
REM cdd %EIFFEL_SRC\tools\resource_bench
REM clean_project
REM finalize rb.ecf
REM cleanup_eiffel rb rb.exe
REM if not exist rb.exe (remtrace Couldnt generate rb.exe & cancel)
REM move rb.exe %STUDIO_DIR\rb\bin
cdd %STUDIO_DIR\rb
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/tools/resource_bench/bin bin
remtrace Retrieve the example
cdd %STUDIO_DIR\rb
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/tools/resource_bench/RB_documentation/examples example

48
inc/make_runtimes.btm Normal file
View File

@@ -0,0 +1,48 @@
@echo off
call %INIT_DIR%\inc\set_simple_aliases.btm
remtrace Compile the runtime for C compiler %1
cd %EIFFEL_SRC\C
call configure clean >>& %INSTALL_LOG
iff defined WIN64 then
call configure win64 m dll >>& %INSTALL_LOG
else
iff defined MSC6 then
call configure win32 m6 dll >>& %INSTALL_LOG
else
call configure win32 m dll >>& %INSTALL_LOG
endiff
endiff
cd %EIFFEL_SRC
fullrf C\run-time\LIB\*.exp
copy C\run-time\LIB\*dll* %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib\%1
cd %EIFFEL_SRC
remtrace Compile a run-time for Microsoft
cd %EIFFEL_SRC\C
call configure clean >>& %INSTALL_LOG
iff defined WIN64 then
call configure win64 m >>& %INSTALL_LOG
else
iff defined MSC6 then
call configure win32 m6 >>& %INSTALL_LOG
else
call configure win32 m >>& %INSTALL_LOG
endiff
endiff
cd %EIFFEL_SRC
copy C\run-time\LIB\*.lib %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib\%1
iff not defined WIN64 then
copy C\desc\ise_desc.dll %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib\%1
copy C\desc\ise_desc.lib %STUDIO_DIR\studio\spec\%ISE_PLATFORM\lib\%1
endiff
remtrace Copy the configuration file
iff not defined WIN64 then
copy %EIFFEL_SRC\C\CONFIGS\windows-x86-msc %STUDIO_DIR\studio\config\%ISE_PLATFORM\%1\config.sh
else
copy %EIFFEL_SRC\C\CONFIGS\windows-x86-64-msc %STUDIO_DIR\studio\config\%ISE_PLATFORM\%1\config.sh
endiff

126
inc/make_tools.btm Normal file
View File

@@ -0,0 +1,126 @@
remtrace Should be called by make_exes.btm
remtrace Create tools directory for your platform.
safe_md %STUDIO_DIR\tools
safe_md %STUDIO_DIR\tools\spec
safe_md %STUDIO_DIR\tools\spec\%ISE_PLATFORM
safe_md %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile iron
cdd %EIFFEL_SRC\tools\iron\client
clean_project
finalize client.ecf es_iron
cleanup_eiffel es_iron iron.exe
iff not exist iron.exe then
remtrace Could not finalize a new iron
CANCEL
endiff
move iron.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
copy %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin\libcurl.dll %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin\
copy %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin\libeay32.dll %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin\
copy %STUDIO_DIR\studio\spec\%ISE_PLATFORM\bin\ssleay32.dll %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin\
remtrace Recompile syntax_updater
cdd %EIFFEL_SRC\tools\syntax_updater
clean_project
finalize syntax_updater.ecf
cleanup_eiffel syntax_updater syntax_updater.exe
iff not exist syntax_updater.exe then
remtrace Could not finalize a new syntax_updater
CANCEL
endiff
move syntax_updater.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile espawn
cdd %EIFFEL_SRC\tools\espawn
clean_project
finalize espawn.ecf
cleanup_eiffel espawn espawn.exe
iff not exist espawn.exe then
remtrace Could not finalize a new espawn
CANCEL
endiff
move espawn.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile compile_all
cdd %EIFFEL_SRC\tools\compile_all
clean_project
finalize compile_all.ecf
cleanup_eiffel compile_all compile_all.exe
iff not exist compile_all.exe then
remtrace Could not finalize a new compile_all
CANCEL
endiff
move compile_all.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile eiffel tool
cdd %EIFFEL_SRC\tools\eiffel_script
clean_project
finalize eiffel_script.ecf
cleanup_eiffel eiffel_script eiffel.exe
iff not exist eiffel.exe then
remtrace Could not finalize a new eiffel tool
CANCEL
endiff
move eiffel.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile eiffel_image_embedder
cdd %EIFFEL_SRC\tools\eiffel_image_embedder
clean_project
finalize eimgemb.ecf
cleanup_eiffel eiffel_image_embedder eimgemb.exe
iff not exist eimgemb.exe then
remtrace Could not finalize a new eiffel_image_embedder
CANCEL
endiff
move eimgemb.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile eiffel_echo
cdd %EIFFEL_SRC\tools\eiffel_echo
clean_project
finalize eiffel_echo.ecf
cleanup_eiffel eiffel_echo eiffel_echo.exe
iff not exist eiffel_echo.exe then
remtrace Could not finalize a new eiffel_echo
CANCEL
endiff
move eiffel_echo.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile po_generation_tool
cdd %EIFFEL_SRC\tools\po_generation_tool
clean_project
finalize po_generation_tool.ecf
cleanup_eiffel po_generation_tool po_generation_tool.exe
iff not exist po_generation_tool.exe then
remtrace Could not finalize a new po_generation_tool
CANCEL
endiff
move po_generation_tool.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile eiffel_ribbon
safe_md %STUDIO_DIR\tools\ribbon
cdd %STUDIO_DIR\tools\ribbon
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/tools/eiffel_ribbon/template template
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/tools/eiffel_ribbon/images images
cdd %EIFFEL_SRC\tools\eiffel_ribbon
clean_project
finalize eiffel_ribbon.ecf
cleanup_eiffel eiffel_ribbon eiffel_ribbon.exe
iff not exist eiffel_ribbon.exe then
remtrace Could not finalize a new eiffel_ribbon
CANCEL
endiff
move eiffel_ribbon.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin
remtrace Recompile ace2ecf
cdd %EIFFEL_SRC\tools\ace2ecf
clean_project
finalize ace2ecf.ecf
cleanup_eiffel ace2ecf ace2ecf.exe
iff not exist ace2ecf.exe then
remtrace Could not finalize a new ace2ecf
CANCEL
endiff
move ace2ecf.exe %STUDIO_DIR\tools\spec\%ISE_PLATFORM\bin

26
inc/make_vision2_demo.btm Normal file
View File

@@ -0,0 +1,26 @@
remtrace Compiling Vision2_Demo
REM Should be called by `make_exes.btm'
cdd %EIFFEL_SRC
exprt -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/examples/vision2/widget_test vision2_demo
REM Must now call batch files here, to generate the flatshorts and also retrieve the
REM build files needed by the test
cdd %EIFFEL_SRC\vision2_demo
call retrieve_build_files.bat -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN >>& %INSTALL_LOG
call retrieve_flat_short.bat >>& %INSTALL_LOG
cdd %EIFFEL_SRC\vision2_demo
clean_project
finalize vision2_demo.ecf
cleanup_eiffel vision2_demo vision2_demo.exe
iff not exist vision2_demo.exe then
remtrace Could not finalize a new vision2_demo
CANCEL
endiff
move vision2_demo.exe %STUDIO_DIR\vision2_demo\spec\%ISE_PLATFORM\bin
move /s %EIFFEL_SRC\vision2_demo\tests %STUDIO_DIR\vision2_demo\tests
move /s %EIFFEL_SRC\vision2_demo\flatshort %STUDIO_DIR\vision2_demo\flatshort
move %EIFFEL_SRC\vision2_demo\bitmaps\png\*.png %STUDIO_DIR\vision2_demo\bitmaps\png

4
inc/make_wizards.btm Normal file
View File

@@ -0,0 +1,4 @@
cdd %EIFFEL_SRC\help\wizards
set DELIVERY=%STUDIO_DIR
remtrace Launch the actual wizard compilation
call make_wizards.btm

66
inc/set_aliases.btm Normal file
View File

@@ -0,0 +1,66 @@
REM Define some user parameters here if not yet defined.
iff defined _SET_ALIAS_SET_ then
remtrace Script set_alias.btm was already called.
goto :eof
endiff
set _SET_ALIAS_SET_=1
REM Setup environment
REM =================
iff exist %~dp0..\etc\config.btm then
call %~dp0..\etc\config.btm
else
echo ERROR missing file %~dp0..\etc\config.btm
set _SET_ALIAS_SET_=0
CANCEL
endiff
set DELIV_DIR=%WORK_DIR%\%STUDIO_VERSION_MAJOR_MINOR%_deliv
REM The file where all output is stored
set INSTALL_LOG=%DELIV_DIR\install.log
REM NB: The following directory is where a new version of ec.exe will be finalized.
set FINALIZATION_DIR=%DELIV_DIR
REM Tag to export files from public SVN repository
iff not defined DEFAULT_PUBLIC_SVN then
set DEFAULT_PUBLIC_SVN=https://svn.eiffel.com/eiffelstudio/trunk
endiff
REM Tag to export files in SVN at ISE
iff not defined DEFAULT_ISE_SVN then
set DEFAULT_ISE_SVN=svn://%USERNAME%@svn.ise/ise_svn/trunk
endiff
REM NB: The following directory will be erased!
set TMP_EIFFEL_SRC=%WORK_DIR%\tmpdev
iff not defined PUBLIC_SVN_REVISION then
set PUBLIC_SVN_REVISION=HEAD
endiff
REM Where the new delivery is set up. Warning: if it exists, the directory will be erased!
REM
set STUDIO_NAME=Eiffel_%STUDIO_VERSION_MAJOR_MINOR
iff "%ISE_PLATFORM%" == "win64" then
set INSTALL_DIR=%WORK_DIR%\Installed%STUDIO_NAME%
else
set INSTALL_DIR=%WORK_DIR%\Installed%STUDIO_NAME%_32
endiff
set STUDIO_DIR=%INSTALL_DIR\EiffelStudio
REM Check for Windows 64 bits.
iff "%ISE_PLATFORM%" == "win64" then
set WIN64=true
endiff
REM Uncomment to set old ORIGO names.
REM set DEFAULT_ORIGO_SVN=%DEFAULT_PUBLIC_SVN
REM set ORIGO_SVN_REVISION=%PUBLIC_SVN_REVISION
REM OK The rest is private, no need for you to see it :)
call %INIT_DIR%\inc\set_simple_aliases.btm

View File

@@ -0,0 +1,3 @@
espawn --list > %INSTALL_LOG%.tmp.c_compiler
for /f "usebackq delims=" %%a in (`findstr /n "\<%2\>" %INSTALL_LOG%.tmp.c_compiler`) do set "%1=True"
fullrf %INSTALL_LOG%.tmp.c_compiler

View File

@@ -0,0 +1,77 @@
REM Define some simple aliases here if not yet defined.
iff defined _SET_SIMPLE_ALIAS_SET_ then
goto :eof
endiff
set _SET_SIMPLE_ALIAS_SET_=1
REM File management
REM Copy also hidden files, keep attributes, overwrite automatically
alias copy `*copy /hkz >>& %INSTALL_LOG`
REM Remove completely a directory
alias nolog_fullrd del /syeqxz
alias fullrd `del /syeqxz >>& %INSTALL_LOG`
REM Remove a file
alias nolog_fullrf del /yqze
alias fullrf `del /yqze >>& %INSTALL_LOG`
REM Retrieve a file from the old delivery and put it in the new one
alias quick_move `iff "%2" == "" then & copy %ISE_EIFFEL\%1 %STUDIO_DIR\%1 >>& %INSTALL_LOG & else & copy %1 %ISE_EIFFEL\%2 %STUDIO_DIR\%2 >>& %INSTALL_LOG & endiff`
REM Create a directory if it doesn't exist already
alias safe_md `iff not isdir %1 then & iff exist %1 then & fullrf %1 & endiff & md %1 & endiff`
REM Save current path into TMP_PATH
alias save_path `set TMP_PATH=%@EXECSTR[cd]`
REM Save parent dir of %2 into %1 variable.
alias set_parent_dir_of `for %%a in ("%2") do set "%1=%%~dpa%%"`
REM Helpers for the script
REM Give some info on what's happening, both in the log and on the screen
alias remtrace `echo %$ & echo -------------------------------- >>& %INSTALL_LOG & echo %$ >>& %INSTALL_LOG`
REM Give info concerning the elapsed time
alias give_time_to `remtrace time used to %$: & remtrace %@TIMER[1] & TIMER ON /1 >> NUL`
REM Clean exit
alias cancel `echo Exiting... & echo Total time used: & echo %@TIMER[2] & set PATH=%OLD_PATH & cdd %INIT_DIR & set EIFFEL_SRC=%OLD_EIFFEL_SRC & set ISE_LIBRARY=%OLD_ISE_LIBRARY & set ISE_SRC=%OLD_ISE_SRC & iff defined TMP_ISE_EIFFEL then & set ISE_EIFFEL=%TMP_ISE_EIFFEL & set TMP_ISE_EIFFEL= & endiff & *cancel`
REM CVS Commands: checkout, export
alias co `call %INIT_DIR\inc\svn_command.bat co %$ >>& %INSTALL_LOG`
alias exprt `call %INIT_DIR\inc\svn_command.bat --force export %$ >>& %INSTALL_LOG`
REM We cannot redirect the output here, since the output is redirected to a file
alias exprtfile `call %INIT_DIR\inc\svn_command.bat cat %$`
REM C Compilation
REM `default_make` will compile just for the value of ISE_C_COMPILER (currently defaulting to the Microsoft
REM C compiler.
alias default_make `finish_freezing.exe -library`
REM `specific_make` will compile using the given C compiler argument. Callers are responsible to set the
REM compiler path and environment variables properly (e.g. using espawn)
alias specific_make `save_path & call compile_library.bat %1 >>& %INSTALL_LOG & cd %TMP_PATH`
alias espawn `set OLD__SET_SIMPLE_ALIAS_SET_=%_SET_SIMPLE_ALIAS_SET_ & unset _SET_SIMPLE_ALIAS_SET_ & *espawn --nologo %$ & set _SET_SIMPLE_ALIAS_SET_=%OLD__SET_SIMPLE_ALIAS_SET_ & unset OLD__SET_SIMPLE_ALIAS_SET_ `
REM Eiffel Compilation
REM Remove a project from the current directory, if any
alias clean_project `iff exist EIFGENs .or. isdir EIFGENs then & fullrd EIFGENs & endiff`
REM Finalize at the Eiffel level only
alias finalize `iff "%2" == "" then & ecb -finalize -c_compile -config %$ >>& %INSTALL_LOG & else & ecb -finalize -c_compile -config %1 -target %2 >>& %INSTALL_LOG & endiff`
REM Melt at the Eiffel level only
alias melt `ecb -config %$ >>& %INSTALL_LOG`
alias freeze `ecb -freeze -c_compile -config %$ >>& %INSTALL_LOG`
REM Move up the generated finalized exe (its name is the parameter) and delete the compiled files
alias cleanup_dotnet_eiffel `if exist EIFGENs\%1\F_code\%2 move EIFGENs\%1\F_code\%2 . & if exist EIFGENs\%1\F_code\lib*.dll move EIFGENs\%1\F_code\lib*.dll . & if exist EIFGENs\%1\F_code\Assemblies move EIFGENs\%1\F_code\Assemblies\*.dll . & clean_project`
alias cleanup_eiffel `if exist EIFGENs\%1\F_code\%2 move EIFGENs\%1\F_code\%2 . & clean_project`
REM Tests....
alias testpar `if %@INDEX[%$,no_compile] ge 0 echo true`
REM bash related
alias dos2unix `echo dos2unix (%1) & tr -d '\r' < %1 > %1-tmp & move %1-tmp %1`
alias set_version `%INIT_DIR%\set_version.bat %1 %2 %3`
alias get_version `%INIT_DIR%\set_version.bat %1`

12
inc/svn_command.bat Normal file
View File

@@ -0,0 +1,12 @@
@echo off
rem This is required to perform svn commands because they often fails, so we repeat them
rem until they succeed.
set i=0
:start
if not "%i%"=="0" goto finish
svn %*
if not errorlevel 1 set i=1
goto start
:finish

9
inc/t.btm Normal file
View File

@@ -0,0 +1,9 @@
@echo off
call %INIT_DIR%\inc\set_simple_aliases.btm
remtrace Test aliases ...
save_path
echo TMP_PATH=%TMP_PATH
foobar

27
inc/update_libraries.btm Normal file
View File

@@ -0,0 +1,27 @@
remtrace Update the Eiffel libraries source
remtrace Compile the Eiffel libraries C code
remtrace com
cdd %1\library\com\Clib
default_make
remtrace com run-time
cdd %1\library\com\Clib_runtime
default_make
remtrace curl
cdd %1\library\cURL\Clib
default_make
remtrace encryption
cdd %1\library\encryption\Clib
default_make
remtrace net
cdd %1\library\net\Clib
default_make
remtrace web_browser
cdd %1\library\web_browser\clib
default_make
remtrace wel
cdd %1\library\wel\clib
default_make
remtrace vision2
cdd %1\library\vision2\Clib
default_make

38
install/Admin.txt Normal file
View File

@@ -0,0 +1,38 @@
1.0 ADMIN/NON INTERACTIVE INSTALLATIONS:
----------------------------------------
If you want to install EiffelStudio/EiffelEnvision in admin mode without any interactions, such
the case of multiple installations please read the following:
1.1 Installer Properties
------------------------
1.1.1 Require Properties
There are a number of variables that *have* to be set to install successfully. These are detailed below:
- C_CONFIG_NAME : Either "msc" or "msc_vc140", for using a preinstalled Microsoft C/C++ compiler or "mingw" to install and use GCC.
- PID : For Enterprise editions of any installer a personal identifier is require, which is in the form of a CD-KEY for the
installing application. For GPL/Free Trial installations this information is not required.
1.1.2 Optional Properties
There are also a number of properties that can be optionally defined, but should be defined for they sake of sanity:
- INSTALLDIR : This is the installed location of the application being installed by the installer and should end in a directory
separator character '\'
2.0 ADVANCED USER INTERACTION:
------------------------------
For special purposes it may be necessary to access installer pages that may not be visible during an installation. Below outlines the install
2.1 C/C++ Compiler Configuration
--------------------------------
* Setting the property C_CONFIG_CHOOSE=1 via a command line installation will show the C/C++ compiler configuration page.
3.0 END NOTE:
-------------
All those properties marked with an asterix '*' indicate that the property is only effective for EiffelStudio installations.

28
install/CustomActions.wxs Normal file
View File

@@ -0,0 +1,28 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include includes\Preprocessors.wxi?>
<Fragment>
<!-- BINARIES -->
<Binary Id="setup.dll" SourceFile="$(sys.SOURCEFILEDIR)binaries\$(var.Platform)\setup.dll" />
<!-- END BINARIES -->
<!-- CUSTOM ACTIONS -->
<CustomAction Id="InitializeProperties" BinaryKey="setup.dll" DllEntry="initialize_properties" Return="check" Execute="immediate"/>
<CustomAction Id="EvaluateCCompiler" BinaryKey="setup.dll" DllEntry="evaluate_c_compiler" Return="check" Execute="immediate"/>
<CustomAction Id="ShowCCompilerHowTo" BinaryKey="setup.dll" DllEntry="show_c_compiler_how_to" Return="ignore" Execute="immediate"/>
<CustomAction Id="ShowCConfigurationError" BinaryKey="setup.dll" DllEntry="show_c_configuration_error" Return="ignore" Execute="immediate"/>
<CustomAction Id="ShowCConfigurationWarning" BinaryKey="setup.dll" DllEntry="show_c_configuration_warning" Return="ignore" Execute="immediate"/>
<CustomAction Id="CheckEnvironmentVariables" BinaryKey="setup.dll" DllEntry="check_environment_variables" Return="check" Execute="immediate"/>
<?ifdef Enterprise?>
<CustomAction Id="RetrieveCdKey" BinaryKey="setup.dll" DllEntry="retrieve_cd_key" Return="check" Execute="immediate"/>
<CustomAction Id="ValidateCdKey" BinaryKey="setup.dll" DllEntry="is_cd_key_valid" Return="check" Execute="immediate"/>
<CustomAction Id="PrepareInstallCdKey" BinaryKey="setup.dll" DllEntry="prepare_install_cd_key" Execute="immediate"/>
<CustomAction Id="InstallCdKey" BinaryKey="setup.dll" DllEntry="install_cd_key" Impersonate="no" Execute="deferred"/>
<?endif?>
<!-- END CUSTOM ACTIONS -->
<CustomAction Id="SET_INSTALLDIR" Property="INSTALLDIR" Value="[INSTALLDIR]" Execute="firstSequence" />
<CustomAction Id="SET_IS_DOTNET_INSTALLED" Property="IS_DOTNET_INSTALLED" Value="1" Execute="firstSequence" />
</Fragment>
</Wix>

123
install/Package.wxs Normal file
View File

@@ -0,0 +1,123 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include includes\Preprocessors.wxi?>
<Product Name="$(var.ProductName)"
Id="$(var.ProductGuid)"
Language="1033"
Codepage="1252"
Version="$(var.ProductVersion)"
Manufacturer="Eiffel Software"
UpgradeCode="$(var.UpgradeGuid)">
<!-- PACKAGE -->
<Package Id="*" Keywords="Installer" Description="$(var.ProductDescription)"
Comments="$(var.ProductName) is a registered trademark of Eiffel Software" Manufacturer="Eiffel Software Inc."
InstallerVersion="$(var.MsiVersion)" Platform="$(var.MsiPlatform)" Languages="1033" Compressed="yes" InstallPrivileges="elevated"
SummaryCodepage="1252"/>
<EnsureTable Id="ControlCondition"/>
<!-- END PACKAGE -->
<!-- MEDIA -->
<Media Id="1" EmbedCab="yes" DiskPrompt="Disc #1" Cabinet="data.cab" CompressionLevel="high"/>
<Property Id="DiskPrompt" Value="$(var.ProductName) Installation [1]" />
<?ifdef Enterprise?>
<Property Id="USERNAME">Eiffel User</Property>
<Property Id="PIDTemplate" Hidden="yes"><![CDATA[12345<#####-#####-#####-#####-#####-#####>@@@@@]]></Property>
<?ifdef EiffelStudio?>
<Property Id="PIDKEY" Hidden="yes">00000-00000-00000-00000-00000-00000</Property>
<?else?>
<Property Id="PIDKEY" Hidden="yes">91169-08119-81772-37111-92871-67979</Property>
<?endif?>
<?endif?>
<Property Id="PidKeySet" Hidden="yes">0</Property>
<!-- END MEDIA -->
<!-- BINARIES -->
<Binary Id="app.ico" SourceFile="$(sys.SOURCEFILEDIR)images\app.ico" />
<!-- END BINARIES -->
<!-- ADD REMOVE PROGRAM -->
<Property Id='ARPCOMMENTS'>$(var.ProductDescription)</Property>
<Property Id='ARPCONTACT'>info@eiffel.com</Property>
<Property Id='ARPHELPLINK'>http://support.eiffel.com</Property>
<Property Id='ARPURLINFOABOUT'>http://www.eiffel.com</Property>
<Property Id='ARPPRODUCTICON'>app.ico</Property>
<Property Id='ARPNOMODIFY'>1</Property>
<!-- END ADD REMOVE PROGRAM -->
<!-- BUILT-IN PROPERTIES -->
<Property Id='InstallMode'>Complete</Property>
<Property Id='MaintenanceMode'>Remove</Property>
<!-- END BUILT-IN PROPERTIES -->
<!-- PROPERTIES -->
<!-- Indicates if the installation should be for all users or not -->
<Property Id="ALLUSERS">1</Property>
<Property Id="ISEPLATFORM"><?ifdef x64?>win64<?else?>windows<?endif?></Property>
<!-- Installation directory -->
<Property Id="INSTALLDIR" Secure="yes" />
<!-- .NET installation root -->
<Property Id="FXINSTALLROOT">0<RegistrySearch Id="RegFxPath" Root="HKLM" Key="SOFTWARE\Microsoft\.NETFramework" Name="InstallRoot" Type="raw" Win64="$(var.IsWin64)" /></Property>
<!-- Indicates if .NET is installed -->
<Property Id="IS_DOTNET_INSTALLED">0</Property>
<!-- Has license aggreement been viewed -->
<Property Id="HAS_VIEWED_LICENSE">0</Property>
<!-- Indicates if a C config choice is present -->
<Property Id="C_CONFIG_CHOOSE">0</Property>
<!-- URL for How-To-Install a C/C++ compiler -->
<Property Id="C_CONFIG_INSTALL_URL">http://dev.eiffel.com/Installing_Microsoft_C_compiler</Property>
<!-- Eiffel C configuration name -->
<Property Id="C_CONFIG_NAME"><?ifdef EiffelStudio?>mingw<?else?>msc<?endif?></Property>
<!-- The name of a MS compiler environment. Filled by `evaluate_c_ompiler' custom actions in `setup.dll' for debugging purposes. -->
<Property Id="C_CONFIG_MSC_ENVIRONMENT">Unused</Property>
<!-- Inidicates if a C compilation can be performed -->
<Property Id="C_CONFIG_CAN_COMPILE">0</Property>
<!-- Indicates if a MS C compiler has been found, usefull to bring some help in how to install the C compiler in the dialog letting you choose your C compiler. -->
<Property Id="C_CONFIG_MSC_FOUND">0</Property>
<!-- Last truncated error when determinine a Visual C/C++ compiler environment -->
<Property Id="C_CONFIG_ERROR_TEXT">Unknown Reason</Property>
<!-- Last error when determinine a Visual C/C++ compiler environment -->
<Property Id="C_CONFIG_ERROR_FULL_TEXT">Unknown Reason</Property>
<!-- Indicates if the View button is displayed to show a how document to install a MS C compiler -->
<Property Id="IS_VIEW_FULL_ERROR_BUTTON_SHOWN">0</Property>
<!-- END PROPERTIES -->
<!-- INSTALL DESCRIPTION -->
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="$(var.PrgFiles)" Name="$(var.PrgFiles)">
<Directory Id="Dir.EiffelSoftware" Name="Eiffel Software">
<Directory Id="INSTALLDIR" Name="$(var.InstallName)">
</Directory>
</Directory>
</Directory>
</Directory>
<FeatureRef Id="Feat.root">
</FeatureRef>
<!-- END INSTALL DESCRIPTION -->
<!-- INSTALL SEQUENCING -->
<InstallExecuteSequence>
<?ifdef Enterprise?>
<Custom Action="PrepareInstallCdKey" Before="InstallCdKey"><![CDATA[NOT Installed]]></Custom>
<Custom Action="InstallCdKey" Before="InstallFinalize"><![CDATA[NOT Installed]]></Custom>
<?endif?>
<RemoveExistingProducts After="InstallFinalize" />
</InstallExecuteSequence>
<AdminExecuteSequence>
<?ifdef Enterprise?>
<Custom Action="PrepareInstallCdKey" Before="InstallCdKey"><![CDATA[NOT Installed]]></Custom>
<Custom Action="InstallCdKey" Before="InstallFinalize"><![CDATA[NOT Installed]]></Custom>
<?endif?>
</AdminExecuteSequence>
<!-- END INSTALL SEQUENCING -->
<!-- USER INTERFACE -->
<UIRef Id="UI.configuration"/>
<UIRef Id="UI.dialog_files_in_use"/>
<!-- END USER INTERFACE -->
</Product>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.bin"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,6 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.comp"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.compspec"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,6 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.documentation"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,290 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include ..\..\includes\Preprocessors.wxi?>
<?ifdef EiffelEnvision?>
<!--
This include document is included under the Package node so you are free to define new directories, properties and features.
Note: A directory is created for INSTALLDIR and TARGETDIR so please use DirectoryRef to reference them.
-->
<Fragment>
<!-- PROPERTIES -->
<?ifndef VsName?>
<!-- Name of Visual Studio .NET to support -->
<?define VsName = "Visual Studio 2005"?>
<?endif?>
<?ifndef VsVersion?>
<!-- Version of Visual Studio .NET to support -->
<?define VsVersion = "8.0"?>
<?endif?>
<?ifndef LangName?>
<!-- Eiffel language name in visual studio -->
<?define LangName = "Eiffel"?>
<?endif?>
<Property Id="VSINSTALL">0<RegistrySearch Id="Reg.vs_install" Root="HKLM" Key="SOFTWARE\Microsoft\VisualStudio\$(var.VsVersion)\Setup\VS" Name="ProductDir" Win64="no" Type="directory"/></Property>
<!-- END PROPERTIES -->
<!-- LAUNCH CONDITIONS -->
<Condition Message="$(var.VsName) ($(var.VsVersion)) must be installed prior to installing [ProductName]."><![CDATA[Installed or VSINSTALL <> "0"]]></Condition>
<!-- END LAUNCH CONDITIONS -->
<!-- PACKAGE CONTENT -->
<DirectoryRef Id="INSTALLDIR">
<Component Id="Comp.app_icon" Guid="CF78DCF4-D526-45BE-A4AD-C4A67427EDC4" Win64="$(var.IsWin64)">
<RegistryKey Id="Reg.uninstall_product" Key="Software\Microsoft\Windows\CurrentVersion\Uninstall\[ProductCode]" Root="HKLM" Action="createAndRemoveOnUninstall">
<?ifdef x64?>
<RegistryValue Id="RegVal.display_icon" Name="DisplayIcon" Type="string" Value="[INSTALLDIR]compiler\studio\spec\win64\bin\ecl.exe,0" KeyPath="yes"/>
<?else?>
<RegistryValue Id="RegVal.display_icon" Name="DisplayIcon" Type="string" Value="[INSTALLDIR]compiler\studio\spec\windows\bin\ecl.exe,0" KeyPath="yes"/>
<?endif?>
</RegistryKey>
</Component>
<Directory Id="Dir.bin" Name="Bin">
<Component Id="Comp.bin" Guid="425E30B8-6C4D-4D23-B531-DB8C83C39050" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.bin" On="uninstall" Directory="Dir.bin"/>
</Component>
</Directory>
<Directory Id="Dir.compiler" Name="Compiler">
<Component Id="Comp.compiler" Guid="DB24E211-374C-4E3D-AA63-5B3F3CD630CF" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.compiler" On="uninstall" Directory="Dir.compiler"/>
<?ifdef x64?>
<?include RegCompiler64.wxi?>
<?else?>
<?include RegCompiler86.wxi?>
<?endif?>
</Component>
</Directory>
<Directory Id="Dir.documentation" Name="Documentation">
<Component Id="Comp.documentation" Guid="D9C50E12-5DAD-4F7B-83C4-38DC599B1454" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.documentation" On="uninstall" Directory="Dir.documentation"/>
</Component>
</Directory>
<Directory Id="Dir.eiffelpackages" Name="EiffelPackages">
<Component Id="Comp.eiffelpackages" Guid="12E717BB-DFB6-4F50-8C11-CD2FDE6F61EA" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.eiffelpackages" On="uninstall" Directory="Dir.eiffelpackages"/>
</Component>
</Directory>
<Directory Id="Dir.eiffelprojectitems" Name="EiffelProjectItems">
<Component Id="Comp.eiffelprojectitems" Guid="C0D929A7-9551-4F75-B079-CC709A2FAFC1" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.eiffelprojectitems" On="uninstall" Directory="Dir.eiffelprojectitems"/>
</Component>
</Directory>
<Directory Id="Dir.eiffelprojects" Name="EiffelProjects">
<Component Id="Comp.eiffelprojects" Guid="C4E6AC7C-43A6-4B5E-B05E-CF4DCFAEDF56" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.eiffelprojects" On="uninstall" Directory="Dir.eiffelprojects"/>
</Component>
</Directory>
<Directory Id="Dir.snippets" Name="Snippets">
<Component Id="Comp.snippets" Guid="B3B2CB86-B2F1-481A-AE4C-9A92AD704F72" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.snippets" On="uninstall" Directory="Dir.snippets"/>
</Component>
</Directory>
<Directory Id="Dir.examples" Name="Examples">
<Component Id="Comp.examples" Guid="CE2A79B0-239C-4B7F-A0A2-2F06E0B68F63" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.examples" On="uninstall" Directory="Dir.examples"/>
</Component>
</Directory>
<Directory Id="Dir.libraries" Name="Libraries">
<Component Id="Comp.libraries" Guid="D945D360-AA72-44A9-8592-E2283A0C103E" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.libraries" On="uninstall" Directory="Dir.libraries"/>
</Component>
</Directory>
<Directory Id="Dir.schema" Name="Schema">
<Component Id="Comp.schema" Guid="2697811E-23BE-481B-96FF-94FCF5648818" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.schema" On="uninstall" Directory="Dir.schema"/>
</Component>
</Directory>
<Directory Id="Dir.specifications" Name="Specifications">
<Component Id="Comp.specifications" Guid="8DF79E1E-B2A7-4AF0-B110-57232E22BFAF" Win64="$(var.IsWin64)" KeyPath="yes">
<CreateFolder/>
<RemoveFolder Id="Dir.specifications" On="uninstall" Directory="Dir.specifications"/>
</Component>
</Directory>
</DirectoryRef>
<DirectoryRef Id="TARGETDIR">
<Directory Id="SystemFolder" Name="."/>
<?ifdef x64?>
<Directory Id="System64Folder" Name="."/>
<?endif?>
<Component Id="Comp.eiffelpackages.reg" Guid="CA055265-A3B9-4788-A3DC-FDE93646A9CF" Win64="no" KeyPath="yes">
<?include RegEiffelPackages.wxi?>
</Component>
<Directory Id="PersonalFolder" Name=".">
<Directory Id="Dir.user" Name="$(var.VsName)">
<!-- Code Snippets -->
<Directory Id="Dir.user.code_snippets" Name="Code Snippets">
<Directory Id="USERCODESNIPPETS" Name="$(var.LangName)">
<Component Id="Comp.user.code_snippets.eiffel" Guid="3C60E71D-A584-43AC-8C7B-F49690A192E0" Win64="$(var.IsWin64)">
<CreateFolder/>
<RemoveFolder Id="USERCODESNIPPETS" On="uninstall" Directory="USERCODESNIPPETS"/>
<RemoveFolder Id="Dir.user.code_snippets" On="uninstall" Directory="Dir.user.code_snippets"/>
<RemoveFolder Id="Dir.user" On="uninstall" Directory="Dir.user"/>
<RegistryKey Id="Reg.user.code_snippets" Key="Software\ISE\EiffelEnvision28" Root="HKCU" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.user.code_snippets" Name="CodeSnippetsDir" Value="[USERCODESNIPPETS]" Type="string" KeyPath="yes"/>
</RegistryKey>
</Component>
</Directory>
</Directory>
<!-- Templates -->
<Directory Id="Dir.user.templates" Name="Templates">
<!-- ItemTemplates -->
<Directory Id="Dir.user.templates.item" Name="ItemTemplates">
<Directory Id="USERITEMTEMPLATES" Name="$(var.LangName)">
<Component Id="Comp.user.templates.item.eiffel" Guid="BEC152E6-CCE0-4F49-A6DD-7A74DA24B18B" Win64="$(var.IsWin64)">
<CreateFolder/>
<RemoveFolder Id="USERITEMTEMPLATES" On="uninstall" Directory="USERITEMTEMPLATES"/>
<RemoveFolder Id="Dir.user.templates.item" On="uninstall" Directory="Dir.user.templates.item"/>
<RemoveFolder Id="Dir.user.templates" On="uninstall" Directory="Dir.user.templates"/>
<RegistryKey Id="Reg.user.templates.item" Key="Software\ISE\EiffelEnvision28" Root="HKCU" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.user.templates.item" Name="CodeSnippetsDir" Value="[USERITEMTEMPLATES]" Type="string" KeyPath="yes"/>
</RegistryKey>
</Component>
</Directory>
</Directory>
<!-- ProjectTemplates -->
<Directory Id="Dir.user.templates.project" Name="ProjectTemplates">
<Directory Id="USERPROJECTTEMPLATES" Name="$(var.LangName)">
<Component Id="Comp.user.templates.project.eiffel" Guid="BB9FDEC8-256F-4392-9BAC-E323D536B2BF" Win64="$(var.IsWin64)">
<CreateFolder/>
<RemoveFolder Id="USERPROJECTTEMPLATES" On="uninstall" Directory="USERPROJECTTEMPLATES"/>
<RemoveFolder Id="Dir.user.templates.project" On="uninstall" Directory="Dir.user.templates.project"/>
<RegistryKey Id="Reg.user.templates.project" Key="Software\ISE\EiffelEnvision28" Root="HKCU" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.user.templates.project" Name="CodeSnippetsDir" Value="[USERPROJECTTEMPLATES]" Type="string" KeyPath="yes"/>
</RegistryKey>
</Component>
</Directory>
</Directory>
</Directory>
</Directory>
</Directory>
</DirectoryRef>
<!-- END PACKAGE CONTENT -->
<!-- COMPONENT GROUPS -->
<ComponentGroup Id="CompGrp.dir.bin">
<!-- Group for package/Eiffel tools -->
<ComponentRef Id="Comp.bin" />
</ComponentGroup>
<ComponentGroup Id="CompGrp.dir.compiler">
<!-- Group for compiler -->
<ComponentRef Id="Comp.compiler"/>
</ComponentGroup>
<ComponentGroup Id="CompGrp.dir.package">
<!-- Group for EiffelEnvision package -->
<ComponentRef Id="Comp.eiffelpackages"/>
<ComponentRef Id="Comp.eiffelprojectitems"/>
<ComponentRef Id="Comp.eiffelprojects"/>
<ComponentRef Id="Comp.snippets"/>
</ComponentGroup>
<ComponentGroup Id="CompGrp.dir.libraries">
<!-- Group for EiffelEnvision libraries -->
<ComponentRef Id="Comp.libraries"/>
</ComponentGroup>
<ComponentGroup Id="CompGrp.dir.documentation">
<!-- Group for documentation -->
<ComponentRef Id="Comp.documentation"/>
<ComponentRef Id="Comp.schema"/>
<ComponentRef Id="Comp.specifications"/>
</ComponentGroup>
<ComponentGroup Id="CompGrp.dir.examples">
<!-- Group for examples -->
<ComponentRef Id="Comp.examples"/>
</ComponentGroup>
<ComponentGroup Id="CompGrp.dir.user">
<!-- Group for user information -->
<ComponentRef Id="Comp.user.code_snippets.eiffel"/>
<ComponentRef Id="Comp.user.templates.item.eiffel"/>
<ComponentRef Id="Comp.user.templates.project.eiffel"/>
</ComponentGroup>
<!-- END COMPONENT GROUPS -->
<!-- FEATURES -->
<Feature Id="Feat.root" Title="$(var.ProductName)" Description="$(var.ProductDescription)" TypicalDefault="install" Display="expand" Level="1" ConfigurableDirectory="INSTALLDIR">
<ComponentRef Id="Comp.app_icon" />
<ComponentGroupRef Id="CompGrp.dir.user"/>
<ComponentGroupRef Id="CompGrp.redist"/>
<Feature Id="Feat.bin" Title="Additional Tools" Description="Additional tools and utilities to use in conjuntion with EiffelEnvision and the Eiffel for .NET compiler." Level="1" Absent="allow">
<ComponentGroupRef Id="CompGrp.dir.bin"/>
<ComponentGroupRef Id="CompGrp.bin"/>
</Feature>
<Feature Id="Feat.compiler" Title="Eiffel for .NET Compiler" Description="The Eiffel for .NET compiler and other compiler components." Level="1" Absent="disallow">
<ComponentGroupRef Id="CompGrp.dir.compiler"/>
<ComponentGroupRef Id="CompGrp.comp"/>
<ComponentGroupRef Id="CompGrp.compspec"/>
</Feature>
<Feature Id="Feat.package" Title="EiffelEnvision Core" Description="The core components used to plug [ProductName] into $(var.VsName)." Level="1" Absent="disallow">
<ComponentGroupRef Id="CompGrp.dir.package"/>
<ComponentGroupRef Id="CompGrp.eiffelpackages"/>
<ComponentGroupRef Id="CompGrp.eiffelprojectitems"/>
<ComponentGroupRef Id="CompGrp.eiffelprojects"/>
<ComponentGroupRef Id="CompGrp.snippets"/>
<ComponentRef Id="Comp.eiffelpackages.reg"/>
<Feature Id="Feat.package.library" Title="Libraries" Description="Library configuration files for quick reuse of source code libraries" Level="1" Absent="disallow">
<ComponentGroupRef Id="CompGrp.dir.libraries"/>
<ComponentGroupRef Id="CompGrp.libraries"/>
</Feature>
<Feature Id="Feat.package.msbuild" Title="MsBuild Integration" Description="The core components used to extend MsBuild to support compiling Eiffel for .NET projects" Level="1" Absent="disallow">
</Feature>
</Feature>
<Feature Id="Feat.documentation" Title="Documentation" Description="Documentation for [ProductName] and any installed tools" Level="1" Absent="allow">
<ComponentGroupRef Id="CompGrp.dir.documentation"/>
<ComponentGroupRef Id="CompGrp.documentation"/>
<ComponentGroupRef Id="CompGrp.schema"/>
<ComponentGroupRef Id="CompGrp.specifications"/>
</Feature>
<Feature Id="Feat.examples" Title="Examples" Description="Examples and How Tos to get you start with developing in Eiffel for .NET" Level="1" Absent="allow">
<ComponentGroupRef Id="CompGrp.dir.examples"/>
<ComponentGroupRef Id="CompGrp.examples"/>
</Feature>
</Feature>
<!-- END FEATURES -->
<!-- CUSTOM ACTIONS -->
<CustomAction Id="SET_VSINSTALLDIR" Property="INSTALLDIR" Value="[VSINSTALL]$(var.LangName)"/>
<!-- END CUSTOM ACTIONS -->
<!-- UI SEQUENCING -->
<AdminUISequence>
<Custom Action="SET_VSINSTALLDIR" After="LaunchConditions"><![CDATA[NOT Installed]]></Custom>
</AdminUISequence>
<InstallUISequence>
<Custom Action="SET_VSINSTALLDIR" After="LaunchConditions"><![CDATA[NOT Installed]]></Custom>
</InstallUISequence>
<!-- END UI SEQUENCING -->
<!-- INSTALL SEQUENCING -->
<AdminExecuteSequence>
</AdminExecuteSequence>
<InstallExecuteSequence>
</InstallExecuteSequence>
<!-- END INSTALL SEQUENCING -->
</Fragment>
<?endif?>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.eiffelpackages"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.eiffelprojectitems"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.eiffelprojects"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.examples"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.libraries"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,6 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,81 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifndef IsWin64?>
<?ifdef x64?>
<?define IsWin64 = "yes"?>
<?else ?>
<?define IsWin64 = "no"?>
<?endif ?>
<?endif ?>
<?ifdef EiffelEnvision?>
<DirectoryRef Id="TARGETDIR" FileSource="$(env.InstallSource)\Redist">
<Component Id="Comp.Base.dll" Guid="5EE49CB2-AFAC-4D34-BC5E-5C8477CD6331" Win64="no">
<File Id="Base.dll" Name="EiffelSoftware.Library.Base.dll" KeyPath="yes" Assembly=".net"/>
</Component>
<Component Id="Comp.Vision2.dll" Guid="F6651053-8775-4BE9-985D-CCF3933B08B9" Win64="no">
<File Id="Vision2.dll" Name="EiffelSoftware.Library.Vision2.dll" KeyPath="yes" Assembly=".net" ProcessorArchitecture="msil"/>
</Component>
<Component Id="Comp.Wel.dll" Guid="261E6A5C-1948-4506-A07C-D9C3E1D64064" Win64="no">
<File Id="Wel.dll" Name="EiffelSoftware.Library.Wel.dll" KeyPath="yes" Assembly=".net" ProcessorArchitecture="msil"/>
</Component>
<Component Id="Comp.Runtime.dll" Guid="C5E80BB2-FD54-4294-8B18-CB1385F2D7D9" Win64="no">
<File Id="Runtime.dll" Name="EiffelSoftware.Runtime.dll" KeyPath="yes" Assembly=".net" ProcessorArchitecture="msil"/>
</Component>
</DirectoryRef>
<DirectoryRef Id="SystemFolder" FileSource="$(env.InstallSource)\Redist">
<Component Id="Comp.libBase.dll" Guid="0F9297B9-1FAB-46E4-872A-F059C970BAB6" Win64="no">
<File Id="libBase.dll" Name="libEiffelSoftware.Library.Base.dll" KeyPath="yes" />
</Component>
<Component Id="Comp.libVision2.dll" Guid="B15CF830-F999-47DD-987A-16334A53C016" Win64="no">
<File Id="libVision2.dll" Name="libEiffelSoftware.Library.Vision2.dll" KeyPath="yes" />
</Component>
<Component Id="Comp.libWel.dll" Guid="C9C06264-9206-4C4B-B2E6-053D9AAB2EAC" Win64="no">
<File Id="libWel.dll" Name="libEiffelSoftware.Library.Wel.dll" KeyPath="yes" />
</Component>
</DirectoryRef>
<?ifdef x64?>
<DirectoryRef Id="TARGETDIR" FileSource="$(env.InstallSource)\Redist\x64">
<Component Id="Comp.Base64.dll" Guid="2901F900-FBEB-4BF3-A849-F54BBC369829" Win64="yes">
<File Id="Base64.dll" Name="EiffelSoftware.Library.Base64.dll" KeyPath="yes" Assembly=".net" ProcessorArchitecture="msil"/>
</Component>
<Component Id="Comp.Vision264.dll" Guid="C4F50B3E-6FE3-4502-8274-7A5DE74D1E5B" Win64="yes">
<File Id="Vision264.dll" Name="EiffelSoftware.Library.Vision264.dll" KeyPath="yes" Assembly=".net" ProcessorArchitecture="msil"/>
</Component>
<Component Id="Comp.Wel64.dll" Guid="2E92A85C-E618-4E27-B2E5-437A72E592C7" Win64="yes">
<File Id="Wel64.dll" Name="EiffelSoftware.Library.Wel64.dll" KeyPath="yes" Assembly=".net" ProcessorArchitecture="msil"/>
</Component>
</DirectoryRef>
<DirectoryRef Id="System64Folder" FileSource="$(env.InstallSource)\Redist\x64">
<Component Id="Comp.libBase64.dll" Guid="28A9B518-709E-40A6-8012-00546667CE04" Win64="yes">
<File Id="libBase64.dll" Name="libEiffelSoftware.Library.Base64.dll" KeyPath="yes" />
</Component>
<Component Id="Comp.libVision264.dll" Guid="1ACEB760-C94E-4A9F-B47A-10D4344567F9" Win64="yes">
<File Id="libVision264.dll" Name="libEiffelSoftware.Library.Vision264.dll" KeyPath="yes" />
</Component>
<Component Id="Comp.libWel64.dll" Guid="D9255D80-3887-408C-8137-D9D1B3F713CE" Win64="yes">
<File Id="libWel64.dll" Name="libEiffelSoftware.Library.Wel64.dll" KeyPath="yes"/>
</Component>
</DirectoryRef>
<?endif ?>
<?endif ?>
<ComponentGroup Id="CompGrp.redist">
<ComponentRef Id="Comp.Base.dll"/>
<ComponentRef Id="Comp.Wel.dll"/>
<ComponentRef Id="Comp.Vision2.dll"/>
<ComponentRef Id="Comp.libBase.dll"/>
<ComponentRef Id="Comp.libWel.dll"/>
<ComponentRef Id="Comp.libVision2.dll"/>
<?ifdef x64?>
<ComponentRef Id="Comp.Base64.dll"/>
<ComponentRef Id="Comp.Wel64.dll"/>
<ComponentRef Id="Comp.Vision264.dll"/>
<ComponentRef Id="Comp.libBase64.dll"/>
<ComponentRef Id="Comp.libWel64.dll"/>
<ComponentRef Id="Comp.libVision264.dll"/>
<?endif?>
<ComponentRef Id="Comp.Runtime.dll"/>
</ComponentGroup>
</Fragment>
</Wix>

View File

@@ -0,0 +1,2 @@
<Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
</Include>

View File

@@ -0,0 +1,2 @@
<Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
</Include>

View File

@@ -0,0 +1,2 @@
<Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
</Include>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.schema"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.snippets"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,7 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef EiffelEnvision?>
<ComponentGroup Id="CompGrp.specifications"></ComponentGroup>
<?endif ?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,278 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<?include ..\..\includes\Preprocessors.wxi?>
<?ifdef EiffelStudio?>
<!--
This include document is included under the Package node so you are free to define new directories, properties and features.
Note: A directory is created for INSTALLDIR and TARGETDIR so please use DirectoryRef to reference them.
-->
<Fragment>
<!-- PROPERTIES -->
<Property Id="GDIPLUSNEEDED">1</Property>
<Property Id="SHORTCUTPATH"><![CDATA[hh]]></Property>
<Property Id="ISELANG">en_US</Property>
<!-- END PROPERTIES -->
<!-- PACKAGE CONTENT -->
<DirectoryRef Id="INSTALLDIR">
<Component Id="Comp.studio_registries" Guid="$(var.RegistriesGuid)" Win64="$(var.IsWin64)">
<!-- Registry settings for installation program -->
<RegistryKey Id="Reg.uninstall_product" Root="HKLM" Key="Software\Microsoft\Windows\CurrentVersion\Uninstall\[ProductCode]" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.display_icon" Name="DisplayIcon" Type="string" Value="[INSTALLDIR]studio\spec\$(var.IsePlatform)\bin\estudio.exe,0" KeyPath="yes"/>
</RegistryKey>
<!-- Registry settings for EiffelStudio and other tools-->
<RegistryKey Id="Reg.eiffel" Root="HKLM" Key="Software\ISE\$(var.ProductKey)" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.eiffel.ise_eiffel" Name="ISE_EIFFEL" Value="[INSTALLDIR]" Type="string"/>
<RegistryValue Id="RegVal.eiffel.ise_c_compiler" Name="ISE_C_COMPILER" Value="[C_CONFIG_NAME]" Type="string"/>
<RegistryValue Id="RegVal.eiffel.ise_platform" Name="ISE_PLATFORM" Value="$(var.IsePlatform)" Type="string"/>
<RegistryValue Id="RegVal.eiffel.ise_lang" Name="ISE_LANG" Value="[ISELANG]" Type="string"/>
</RegistryKey>
<RegistryKey Id="Reg.eiffel.finish_freezing" Root="HKLM" Key="Software\ISE\$(var.ProductKey)\finish_freezing" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.eiffel.ff.ise_cflags" Name="ISE_CFLAGS" Value="" Type="string"/>
<RegistryValue Id="RegVal.eiffel.ff.ise_sharedlibs" Name="ISE_SHAREDLIBS" Value="" Type="string"/>
</RegistryKey>
<!-- Registry settings for .NET consumer -->
<RegistryKey Id="Reg.CCManager" Root="HKCR" Key="EiffelSoftware.MetadataConsumer.Interop.COM_CACHE_MANAGER" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.CCManager" Value="EiffelSoftware.MetadataConsumer.Interop.COM_CACHE_MANAGER" Type="string">
</RegistryValue>
</RegistryKey>
<RegistryKey Id="Reg.CCManager.clsid" Root="HKCR" Key="EiffelSoftware.MetadataConsumer.Interop.COM_CACHE_MANAGER\CLSID" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.CCManager.clsid" Value="{64E0AD08-417E-4243-B533-561A05F4B5E6}" Type="string">
</RegistryValue>
</RegistryKey>
<RegistryKey Id="Reg.clsid" Root="HKCR" Key="CLSID\{64E0AD08-417E-4243-B533-561A05F4B5E6}" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.clsid.default" Value="EiffelSoftware.MetadataConsumer.Interop.COM_CACHE_MANAGER" Type="string"/>
<RegistryKey Id="Reg.clsid.1" Key="Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Action="createAndRemoveOnUninstall" />
<RegistryKey Id="Reg.clsid.2" Key="InprocServer32" Action="createAndRemoveOnUninstall" >
<RegistryValue Id="RegVal.clsid.inproc.1" Value="mscoree.dll" Type="string"/>
<RegistryValue Id="RegVal.clsid.inproc.2" Name="ThreadingModel" Value="Both" Type="string"/>
<RegistryValue Id="RegVal.clsid.inproc.3" Name="Class" Value="EiffelSoftware.MetadataConsumer.Interop.COM_CACHE_MANAGER" Type="string"/>
<RegistryValue Id="RegVal.clsid.inproc.4" Name="Assembly" Value="EiffelSoftware.MetadataConsumer, Version=7.2.9.376, Culture=neutral, PublicKeyToken=def26f296efef469" Type="string"/>
<RegistryValue Id="RegVal.clsid.inproc.5" Name="RuntimeVersion" Value="v2.0.50727" Type="string"/>
<RegistryKey Id="Reg.clsid.3" Key="7.2.9.376" Action="createAndRemoveOnUninstall" >
<RegistryValue Id="RegVal.clsid.inproc.version.1" Name="Class" Value="EiffelSoftware.MetadataConsumer.Interop.COM_CACHE_MANAGER" Type="string"/>
<RegistryValue Id="RegVal.clsid.inproc.version.2" Name="Assembly" Value="EiffelSoftware.MetadataConsumer, Version=7.2.9.376, Culture=neutral, PublicKeyToken=def26f296efef469" Type="string"/>
<RegistryValue Id="RegVal.clsid.inproc.version.3" Name="RuntimeVersion" Value="v2.0.50727" Type="string"/>
</RegistryKey>
</RegistryKey>
<RegistryKey Id="Reg.clsid.4" Key="ProgId" Action="createAndRemoveOnUninstall" >
<RegistryValue Id="RegVal.clsid.progid" Value="EiffelSoftware.MetadataConsumer.Interop.COM_CACHE_MANAGER" Type="string"/>
</RegistryKey>
</RegistryKey>
<RegistryKey Id="Reg.VS" Root="HKLM" Key="SOFTWARE\Microsoft\.NETFramework\AssemblyFolders\[ProductName]" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.VS" Value="[INSTALLDIR]\studio\spec\$(var.IsePlatform)\lib\" Type="string"/>
</RegistryKey>
<!-- Registry settings for eiffel protocol -->
<RegistryKey Id="Reg.eiffel_protocol" Root="HKCR" Key="eiffel" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.eiffel_protocol.default" Value="URL:Eiffel Protocol" Type="string"/>
<RegistryValue Id="RegVal.eiffel_protocol.url" Name="URL Protocol" Value="" Type="string"/>
<RegistryKey Id="Reg.eiffel_protocol.defaulticon" Key="DefaultIcon" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.eiffel_protocol.defaulticon.default" Value="[INSTALLDIR]\studio\spec\$(var.IsePlatform)\bin\estudio.exe" Type="string"/>
</RegistryKey>
<RegistryKey Id="Reg.eiffel_protocol.shell" Key="shell\open\command" Action="createAndRemoveOnUninstall">
<RegistryValue Id="RegVal.eiffel_protocol.shell.default" Value="&quot;[INSTALLDIR]\studio\spec\$(var.IsePlatform)\bin\estudio.exe&quot; /ec_action eisi:&quot;%1&quot;" Type="string"/>
</RegistryKey>
</RegistryKey>
</Component>
<Directory Id="Dir.gcc" Name="gcc"/>
<Directory Id="Dir.Core.examples" Name="examples"/>
<Directory Id="Dir.Core.library" Name="library">
<Directory Id="Dir.Core.library.gobo" Name="gobo"/>
</Directory>
<Directory Id="Dir.Core.experimental" Name="experimental">
<Directory Id="Dir.Core.experimental.library" Name="library">
<Directory Id="Dir.Core.experimental.library.gobo" Name="gobo"/>
</Directory>
</Directory>
<!-- To comment when building complete delivery -->
<!--
<Directory Id="Dir.Core.esbuilder.spec.$(var.IsePlatform).bin" Name="testing1"/>
<Directory Id="Dir.Core.studio.spec.$(var.IsePlatform).bin" Name="testing2"/>
-->
</DirectoryRef>
<DirectoryRef Id="TARGETDIR">
<Directory Id="DesktopFolder" Name="." />
<Directory Id="ProgramMenuFolder" Name=".">
<Directory Id="EiffelStudio" Name="$(var.Product) $(var.ProductVersion) ($(var.Platform))">
<Directory Id="EiffelStudio.Documentation" Name="Documentation"/>
<Directory Id="EiffelStudio.Tools" Name="Tools"/>
</Directory>
</Directory>
</DirectoryRef>
<!-- PROGIDS -->
<DirectoryRef Id="Dir.Core.esbuilder.spec.$(var.IsePlatform).bin" >
<Component Id="Comp.Core.esbuilder.spec.$(var.IsePlatform).bin.esbuilder.exe" Guid="BA8812BD-C38D-44AA-9FE9-A85DBB4CF493" Win64="$(var.IsWin64)">
<File Id="Core.esbuilder.spec.$(var.IsePlatform).bin.esbuilder.exe" Name="esbuilder.exe" DiskId="1" Source="$(env.INSTALL_DIR)\EiffelStudio\esbuilder\spec\$(var.IsePlatform)\bin\esbuilder.exe"/>
<ProgId Id="build.project" Description="EiffelBuild project" Icon="Core.esbuilder.spec.$(var.IsePlatform).bin.esbuilder.exe" IconIndex="0" >
<Extension Id="bpr">
<MIME ContentType="text/xml" />
<Verb Id="bpr" Argument="&quot;%1&quot;" Command="Open" TargetFile="Core.esbuilder.spec.$(var.IsePlatform).bin.esbuilder.exe" />
</Extension>
</ProgId>
</Component>
</DirectoryRef>
<DirectoryRef Id="Dir.Core.studio.spec.$(var.IsePlatform).bin" >
<Component Id="Comp.Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" Guid="4AECBDF8-9061-4260-A4C1-A54F0E163A3F" Win64="$(var.IsWin64)">
<File Id="Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" Name="estudio.exe" DiskId="1" Source="$(env.INSTALL_DIR)\EiffelStudio\studio\spec\$(var.IsePlatform)\bin\estudio.exe"/>
<ProgId Id="estudio_ecf.project" Description="EiffelStudio project" Icon="Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" IconIndex="1" >
<Extension Id="ecf">
<MIME ContentType="text/xml" />
<Verb Id="open" Argument="&quot;%1&quot;" Command="Open" TargetFile="Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" />
<Verb Id="compile" Argument="-config &quot;%1&quot; -melt" Command="Compile" TargetFile="Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" />
<Verb Id="precompile" Argument="-config &quot;%1&quot; -precompile" Command="Precompile" TargetFile="Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" />
<Verb Id="freeze" Argument="-config &quot;%1&quot; -freeze" Command="Freeze" TargetFile="Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" />
<Verb Id="finalize" Argument="-config &quot;%1&quot; -finalize" Command="Finalize" TargetFile="Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" />
</Extension>
</ProgId>
<ProgId Id="estudio_e.class" Description="Eiffel Classes" Icon="Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" IconIndex="2" >
<Extension Id="e" >
<MIME ContentType="text/plain" />
</Extension>
</ProgId>
</Component>
</DirectoryRef>
<!-- END PROGIDS -->
<!-- Shortcuts and file association -->
<DirectoryRef Id="EiffelStudio">
<Component Id="Comp.studio_shortcuts" Guid="$(var.ShortcutsGuid)" Win64="$(var.IsWin64)">
<CreateFolder Directory="EiffelStudio"/>
<CreateFolder Directory="EiffelStudio.Documentation"/>
<CreateFolder Directory="EiffelStudio.Tools"/>
<RemoveFolder Id="RemoveEiffelStudio" Directory="EiffelStudio" On="uninstall" />
<RemoveFolder Id="RemoveEiffelStudio.Documentation" Directory="EiffelStudio.Documentation" On="uninstall" />
<RemoveFolder Id="RemoveEiffelStudio.Tools" Directory="EiffelStudio.Tools" On="uninstall" />
<RegistryValue Id="Id.shortcuts" Root="HKCU" Key="Software\ISE\$(var.ProductKey)" Name="InstalledShortcuts" Type="integer" Value="1" KeyPath="yes"/>
<Shortcut Id="esbuilder.exe" Name="EiffelBuild"
Description="GUI Builder using EiffelVision2" Show="normal" Directory="EiffelStudio"
Target="[INSTALLDIR]esbuilder\spec\$(var.IsePlatform)\bin\esbuilder.exe"
/>
<Shortcut Id="estudio.exe" Name="$(var.Product) $(var.ProductVersion)"
Description="EiffelStudio development environment" Show="normal" Directory="EiffelStudio"
Target="[INSTALLDIR]studio\spec\$(var.IsePlatform)\bin\estudio.exe"
/>
<Shortcut Id="estudio.exe1" Name="$(var.Product) $(var.ProductVersion) (Experimental mode)"
Description="EiffelStudio development environment using compatibility facilities of EiffelStudio" Show="normal"
Target="[INSTALLDIR]studio\spec\$(var.IsePlatform)\bin\estudio.exe" Directory="EiffelStudio"
Arguments="-experiment"
/>
<Shortcut Id="esvars.bat" Name="$(var.Product) $(var.ProductVersion) Command Prompt"
Description="EiffelStudio Command Prompt" Show="normal" Directory="EiffelStudio"
Target="[%ComSpec]"
Arguments="/k &quot;[INSTALLDIR]studio\config\$(var.IsePlatform)\esvars.bat&quot;"
/>
<Shortcut Id="UninstallProduct" Name="Uninstall $(var.Product)"
Description="Uninstalls $(var.Product)" Show="normal" Directory="EiffelStudio"
Target="[System64Folder]msiexec.exe"
Arguments="/x [ProductCode]"
/>
<util:InternetShortcut Id="EiffelStudio.Documentation.General" Name="Eiffel Developer Help Center" Target="http://docs.eiffel.com/" Directory="EiffelStudio.Documentation"/>
<util:InternetShortcut Id="EiffelStudio.Documentation.COM" Name="EiffelCOM Wizard Documentation" Target="http://docs.eiffel.com/book/platform-specifics/eiffelcom-wizard" Directory="EiffelStudio.Documentation"/>
<util:InternetShortcut Id="EiffelStudio.Documentation.ResourceBench" Name="ResourceBench Documentation" Target="http://docs.eiffel.com/book/platform-specifics/resourcebench" Directory="EiffelStudio.Documentation"/>
<Shortcut Id="vision2_demo.exe" Name="EiffelVision2 Demo"
Description="EiffelVision2 overview presentation" Show="normal" Directory="EiffelStudio.Documentation"
Target="[INSTALLDIR]vision2_demo\spec\$(var.IsePlatform)\bin\vision2_demo.exe"
/>
<Shortcut Id="com_wizard.exe" Name="EiffelCOM Wizard"
Description="A wizard that helps you use and create COM components with Eiffel" Show="normal"
Target="[INSTALLDIR]wizards\com\com_wizard_launcher.exe" Directory="EiffelStudio.Tools"
/>
<Shortcut Id="he2.exe" Name="C constants to Eiffel class generator"
Description="A tool to extract constant definitions into Eiffel classes" Show="normal"
Target="[INSTALLDIR]studio\spec\$(var.IsePlatform)\bin\h2e.exe" Directory="EiffelStudio.Tools"
/>
<Shortcut Id="rb.exe" Name="ResourceBench"
Description="A tool to convert .rc files into WEL classes" Show="normal"
Target="[INSTALLDIR]rb\bin\rb.exe" Directory="EiffelStudio.Tools"
/>
</Component>
</DirectoryRef>
<!-- END PACKAGE CONTENT -->
<!-- FEATURES -->
<Feature Id="Feat.root" Title="$(var.ProductName)" Description="$(var.ProductDescription)" TypicalDefault="install" Display="expand" Level="1" ConfigurableDirectory="INSTALLDIR">
<Feature Id="MainProgram" Title="Program" TypicalDefault="install" Level="1" Display="hidden">
<ComponentRef Id="Comp.studio_registries" />
<ComponentRef Id="Comp.studio_shortcuts" />
<ComponentRef Id="Comp.Core.esbuilder.spec.$(var.IsePlatform).bin.esbuilder.exe" />
<ComponentRef Id="Comp.Core.studio.spec.$(var.IsePlatform).bin.estudio.exe" />
<ComponentGroupRef Id="Core"/>
<?ifdef Enterprise ?>
<ComponentGroupRef Id="enterprise_ec"/>
<?else?>
<ComponentGroupRef Id="gpl_ec"/>
<?endif?>
</Feature>
<Feature Id="Examples_feature" Title="Examples" TypicalDefault="install" Level="1" Display="hidden">
<ComponentGroupRef Id="Core.examples"/>
</Feature>
<Feature Id="Library_feature" Title="Library" TypicalDefault="install" Level="1" Display="hidden">
<ComponentGroupRef Id="Core.library"/>
</Feature>
<Feature Id="Gobo_feature" Title="Gobo" TypicalDefault="install" Level="1" Display="hidden">
<ComponentGroupRef Id="Core.library.gobo"/>
</Feature>
<Feature Id="Experimental_feature" Title="Experimental" TypicalDefault="install" Level="1" Display="hidden">
<ComponentGroupRef Id="Core.experimental.library"/>
</Feature>
<Feature Id="Gobo_experimental_feature" Title="Gobo Experimental" TypicalDefault="install" Level="1" Display="hidden">
<ComponentGroupRef Id="Core.experimental.library.gobo"/>
</Feature>
<Feature Id="gdiplus_feature" Title="GDI+" TypicalDefault="install" Level="1" Display="hidden">
<Condition Level="0"><![CDATA[GDIPLUSNEEDED = "0"]]></Condition>
<ComponentGroupRef Id="gdiplus"/>
</Feature>
<Feature Id="gcc_feature" Title="gcc" TypicalDefault="install" Display="hidden" Level="1" >
<ComponentGroupRef Id="gcc"/>
</Feature>
</Feature>
<!-- END FEATURES -->
<!-- CUSTOM ACTIONS -->
<CustomAction Id="IsGdixInstalled" BinaryKey="setup.dll" DllEntry="is_gdi_plus_installed" />
<CustomAction Id="PrepareFinalizeSetup" BinaryKey="setup.dll" DllEntry="prepare_finalize_setup" />
<CustomAction Id="FinalizeSetup" BinaryKey="setup.dll" DllEntry="finalize_setup" Impersonate="no" Execute="deferred" />
<CustomAction Id="RESET_CHECKCCOMPILER" Property="CHECKCCOMPILER" Value="0" />
<CustomAction Id="RESET_HASMSCCOMPILER" Property="HASMSCCOMPILER" Value="0" />
<!-- END CUSTOM ACTIONS -->
<!-- UI SEQUENCING -->
<AdminUISequence>
<Custom Action="RESET_CHECKCCOMPILER" After="CostInitialize"><![CDATA[SHOWCCONFIG >= "1"]]></Custom> <!-- See Admin.txt -->
<Custom Action="RESET_HASMSCCOMPILER" After="CostInitialize"><![CDATA[SHOWCCONFIG >= "1"]]></Custom> <!-- See Admin.txt -->
</AdminUISequence>
<InstallUISequence>
<Custom Action="RESET_CHECKCCOMPILER" After="AppSearch"><![CDATA[SHOWCCONFIG >= "1"]]></Custom> <!-- See Admin.txt -->
<Custom Action="RESET_HASMSCCOMPILER" After="AppSearch"><![CDATA[SHOWCCONFIG >= "1"]]></Custom> <!-- See Admin.txt -->
</InstallUISequence>
<!-- END UI SEQUENCING -->
<!-- INSTALL SEQUENCING -->
<AdminExecuteSequence>
<Custom Action="IsGdixInstalled" Before="CostInitialize"/>
</AdminExecuteSequence>
<InstallExecuteSequence>
<Custom Action="IsGdixInstalled" Before="LaunchConditions"/>
<?ifdef Enterprise?>
<Custom Action="PrepareFinalizeSetup" After="InstallCdKey"><![CDATA[NOT Installed]]></Custom>
<?else?>
<Custom Action="PrepareFinalizeSetup" Before="InstallFinalize"><![CDATA[NOT Installed]]></Custom>
<?endif?>
<Custom Action="FinalizeSetup" After="PrepareFinalizeSetup"><![CDATA[NOT Installed]]></Custom>
</InstallExecuteSequence>
<!-- END INSTALL SEQUENCING -->
</Fragment>
<?endif?>
</Wix>

View File

@@ -0,0 +1,118 @@
HALLOW = %INIT_DIR%\install\bin\hallow.exe
HALLOW_FLAGS = -nologo -de:"\.svn$$" -x64 -c:"EiffelStudio"
HALLOW_FLAGS_X86 = $(HALLOW_FLAGS) -c:"x86"
HALLOW_FLAGS_X64 = $(HALLOW_FLAGS) -c:"x64"
MSBUILD = C:\Windows\Microsoft.NET\Framework\v2.0.50727\msbuild.exe
MSBUILD_FLAGS = /nologo /verbosity:quiet
###################################################################
#
# Package targets
#
###################################################################
all:: build
###################################################################
#
# Build targets
#
###################################################################
WXS = \
studio_gcc.wxs \
studio_core.wxs \
studio_examples.wxs \
studio_libraries.wxs \
studio_gobo.wxs \
studio_experimental.wxs \
studio_gobo_experimental.wxs \
studio_gdiplus.wxs \
studio_ent_ec.wxs \
studio_gpl_ec.wxs
build: $(WXS)
studio_gcc.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\EiffelStudio\gcc" -dr:"Dir.gcc" -g:"gcc" -r -n:"gcc." > $@.tmp
move $@.tmp $@
studio_core.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\EiffelStudio" -dr:"INSTALLDIR" \
-de:"\\EiffelStudio\\library$$" -de:"\\EiffelStudio\\examples$$" \
-de:"\\EiffelStudio\\compatible$$" -de:"\\EiffelStudio\\gcc$$" \
-de:"\\EiffelStudio\\experimental$$" \
-fe:"\\EiffelStudio\\studio\\spec\\w.*\\estudio.exe$$" \
-fe:"\\EiffelStudio\\esbuilder\\spec\\w.*\\esbuilder.exe$$" \
-g:"Core" -r -n:"Core." > $@.tmp
move $@.tmp $@
studio_examples.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\EiffelStudio\examples" \
-dr:"Dir.Core.examples" -g:"Core.examples" -r -n:"Core.examples." > $@.tmp
move $@.tmp $@
studio_libraries.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\EiffelStudio\library" \
-dr:"Dir.Core.library" -de:"\\EiffelStudio\\library\\gobo$$" \
-g:"Core.library" -r -n:"Core.library." > $@.tmp
move $@.tmp $@
studio_gobo.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\EiffelStudio\library\gobo" \
-dr:"Dir.Core.library.gobo" -g:"Core.library.gobo" -r -n:"Core.library.gobo." > $@.tmp
move $@.tmp $@
studio_experimental.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\EiffelStudio\experimental\library" -dr:"Dir.Core.experimental.library" -de:"\\EiffelStudio\\experimental\\library\\gobo$$" -g:"Core.experimental.library" -r -n:"Core.experimental." > $@.tmp
move $@.tmp $@
studio_gobo_experimental.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\EiffelStudio\experimental\library\gobo" -dr:"Dir.Core.experimental.library.gobo" -g:"Core.experimental.library.gobo" -r -n:"Core.experimental.library.gobo." > $@.tmp
move $@.tmp $@
studio_gdiplus.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\releases" \
-dr:"Dir.Core.studio.spec.$$(var.IsePlatform).bin" -g:"gdiplus" -n:"gdiplus" \
-fi:gdiplus.dll -de:"\*" > $@.tmp
move $@.tmp $@
studio_ent_ec.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\releases\enterprise_version" \
-dr:"Dir.Core.studio.spec.$$(var.IsePlatform).bin" -g:"enterprise_ec" -n:"Core." > $@.tmp
move $@.tmp $@
studio_gpl_ec.wxs:
$(HALLOW) $(HALLOW_FLAGS) "$(INSTALL_DIR)\releases\gpl_version" \
-dr:"Dir.Core.studio.spec.$$(var.IsePlatform).bin" -g:"gpl_ec" -n:"Core." > $@.tmp
move $@.tmp $@
###################################################################
#
# MSIs
#
###################################################################
enterprise_x86: $(WXS)
$(MSBUILD) $(MSBUILD_FLAGS) /p:Configuration=studio_ent_x86 /p:Platform=x86 ..\..\package.sln
gpl_x86: $(WXS)
$(MSBUILD) $(MSBUILD_FLAGS) /p:Configuration=studio_gpl_x86 /p:Platform=x86 ..\..\package.sln
enterprise_x64: $(WXS)
$(MSBUILD) $(MSBUILD_FLAGS) /p:Configuration=studio_ent_x64 /p:Platform=x64 ..\..\package.sln
gpl_x64: $(WXS)
$(MSBUILD) $(MSBUILD_FLAGS) /p:Configuration=studio_gpl_x64 /p:Platform=x64 ..\..\package.sln
###################################################################
#
# Clean builds
#
###################################################################
clean:
for %i in ($(WXS)) do if exist %i del %i
if exist *.msi del *.msi

View File

@@ -0,0 +1,5 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="Core" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,5 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="enterprise_ec" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,5 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="Core.examples" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,5 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="Core.experimental.library" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,5 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="gcc" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,5 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="gdiplus" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,6 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="Core.library.gobo" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,6 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="Core.experimental.library.gobo" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,5 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="gpl_ec" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,5 @@
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="Core.library" />
</Fragment>
</Wix>

BIN
install/images/app.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 KiB

BIN
install/images/error.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
install/images/folder.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
install/images/icon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
install/images/info.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
install/images/new.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

BIN
install/images/question.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
install/images/up.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

BIN
install/images/warning.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,82 @@
<?xml version="1.0"?>
<Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?ifndef Preprocessors?>
<?define Preprocessors = "1"?>
<?ifdef x64?>
<?define IsWin64 = "yes"?>
<?else?>
<?define IsWin64 = "no"?>
<?endif?>
<?ifdef x64?>
<?define PrgFiles = "ProgramFiles64Folder" ?>
<?define MsiVersion = "300" ?>
<?define MsiPlatform = "x64" ?>
<?else?>
<?define PrgFiles = "ProgramFilesFolder" ?>
<?define MsiVersion = "200" ?>
<?define MsiPlatform = "x86" ?>
<?endif?>
<!-- PRODUCT SPECIFIC -->
<?ifdef EiffelStudio?>
<?ifdef Enterprise?>
<?define Edition = "Enterprise"?>
<?define LicenseFile = "enterprise.rtf"?>
<?else?>
<?define Edition = "GPL"?>
<?define LicenseFile = "gpl.rtf"?>
<?endif?>
<?ifdef x64?>
<?define ProductGuid = "C0ECCD9E-FB11-49C8-BB76-D3466CCF8803" ?>
<?define RegistriesGuid = "B583F10F-575B-471E-9D5B-716CE7FB7AAA" ?>
<?define ShortcutsGuid = "15029359-1ECF-475D-BDAC-FBFDE875B58C" ?>
<?else?>
<?define ProductGuid = "5584AB7C-AE11-4CC5-A5CC-30BAB02844D8" ?>
<?define RegistriesGuid = "86ED8CF2-CC48-4D46-A9F5-A6B1D7347736" ?>
<?define ShortcutsGuid = "A68AC36A-E574-49AE-8870-8599923F5D0A" ?>
<?endif?>
<?define UpgradeGuid = "807C2196-0BDD-4C4D-96C6-B94E3EDC8C99" ?>
<?define Product = "EiffelStudio" ?>
<?define ProductVersion = "18.05" ?>
<?define ProductDescription = "EiffelStudio 18.05 Integrated Development Environment (IDE) Installer" ?>
<?define ProductKey = "Eiffel_18.05" ?>
<?else?>
<?ifdef EiffelEnvision?>
<?ifdef Enterprise?>
<?define Edition = "Enterprise Edition"?>
<?define LicenseFile = "enterprise.rtf"?>
<?else?>
<?define Edition = "Lite"?>
<?define LicenseFile = "free.rtf"?>
<?endif?>
<?ifdef x64?>
<?define ProductGuid = "A8D26619-266C-49C3-A257-F9F8C4F958A0" ?>
<?else?>
<?define ProductGuid = "C0FD2907-AC52-42C6-8420-1D37A400C770" ?>
<?endif?>
<?define UpgradeGuid = "F98A29ED-2E72-45E8-8F45-E936B25774DB" ?>
<?define Product = "EiffelEnvision" ?>
<?define ProductVersion = "2.8" ?>
<?define ProductDescription = "EiffelEnvision 2.8 The Eiffel for .NET Language Package for Visual Studio .NET 2005" ?>
<?define ProductKey = "Eiffel_18.05" ?>
<?else?>
<?define Edition = "Test"?>
<?define LicenseFile = "gpl.rtf"?>
<?define ProductGuid = "9FF8F00B-86B0-41AD-962C-00517951FB62" ?>
<?define UpgradeGuid = "1263FA71-F9CA-4F2E-BFEC-988C77F7DF50" ?>
<?define Product = "EiffelStudio" ?>
<?define ProductVersion = "2.8" ?>
<?define ProductDescription = "Test" ?>
<?define ProductKey = "Eiffel_18.05" ?>
<?endif?>
<?endif?>
<?define ProductName = "$(var.Product) $(var.ProductVersion) ($(var.Platform)) $(var.Edition)" ?>
<?define InstallName = "$(var.Product) $(var.ProductVersion) $(var.Edition)" ?>
<!-- END PRODUCT SPECIFIC -->
<?endif?>
</Include>

View File

@@ -0,0 +1,407 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include ..\includes\Preprocessors.wxi?>
<Fragment>
<!--BUTTON TEXT-->
<Property Id="Button_Back">&lt; &amp;Back</Property>
<Property Id="Button_Next">&amp;Next &gt;</Property>
<Property Id="Button_Finish">&amp;Finish</Property>
<Property Id="Button_Abort">&amp;Abort</Property>
<Property Id="Button_OK">OK</Property>
<Property Id="Button_Cancel">Cancel</Property>
<Property Id="Button_Browse">Br&amp;owse...</Property>
<Property Id="Button_Exit">E&amp;xit</Property>
<Property Id="Button_Ignore">&amp;Ignore</Property>
<Property Id="Button_Install">&amp;Install</Property>
<Property Id="Button_Remove">&amp;Remove</Property>
<Property Id="Button_Repair">&amp;Repair</Property>
<Property Id="Button_Reset">&amp;Reset</Property>
<Property Id="Button_Resume">&amp;Resume</Property>
<Property Id="Button_Retry">&amp;Retry</Property>
<Property Id="Button_Return">&amp;Return</Property>
<Property Id="Button_Restart">&amp;Restart</Property>
<Property Id="Button_Yes">&amp;Yes</Property>
<Property Id="Button_No">&amp;No</Property>
<Property Id="Button_Agree">&amp;Agree</Property>
<Property Id="Button_Disagree">&amp;Disagree</Property>
<Property Id="Button_DisagreeBack">&amp;Back</Property>
<Property Id="Button_View">&amp;View</Property>
<Property Id="Button_Close">&amp;Close</Property>
<Property Id="Button_Download">&amp;Download</Property>
<Property Id="Button_ViewCompilerHowTo">&amp;View How To...</Property>
<Property Id="Button_ViewFullError">&amp;View Full Error...</Property>
<Property Id="Button_ViewFullWarning">&amp;View Full Warning...</Property>
<Property Id="Button_CheckCCompiler">Chec&amp;k for an Installed C Compiler</Property>
<!--END BUTTON TEXT-->
<UI Id="UI.configuration">
<!-- FONT DEFINITION -->
<Property Id="TitleFont">{&amp;DlgFontBold8}</Property>
<Property Id="ErrorFont">{&amp;DlgFontBold8Red}</Property>
<Property Id="SubTitleFont">{&amp;DlgFont8}</Property>
<Property Id="BigFont">{&amp;VerdanaBold13}</Property>
<Property Id="DefaultUIFont">DlgFont8</Property>
<Property Id="ErrorDialog">PromptError</Property>
<TextStyle Id="DlgFont8" FaceName="Tahoma" Size="8" />
<TextStyle Id="DlgFontBold8Red" FaceName="Tahoma" Size="8" Bold="yes" Blue="0" Green="0" Red="200"/>
<TextStyle Id="DlgFontBold8" FaceName="Tahoma" Size="8" Bold="yes" />
<TextStyle Id="VerdanaBold13" FaceName="Verdana" Size="13" Bold="yes" />
<!-- END FONT DEFINITION -->
<!-- USER INTERFACE SEQUENCING -->
<InstallUISequence>
<Custom Action="InitializeProperties" After="AppSearch" />
<?ifdef Enterprise?>
<Custom Action="RetrieveCdKey" After="InitializeProperties"><![CDATA[NOT Installed]]></Custom>
<Custom Action="EvaluateCCompiler" After="RetrieveCdKey"><![CDATA[NOT Installed]]></Custom>
<?else?>
<Custom Action="EvaluateCCompiler" After="InitializeProperties"><![CDATA[NOT Installed]]></Custom>
<?endif?>
<Custom Action="SET_INSTALLDIR" Before="CostInitialize"><![CDATA[INSTALLDIR = ""]]></Custom>
<Custom Action="SET_IS_DOTNET_INSTALLED" Before="CostInitialize"><![CDATA[(FXINSTALLROOT <> "0") AND NOT Installed]]></Custom>
<Custom Action="CheckEnvironmentVariables" After="MigrateFeatureStates"><![CDATA[NOT Installed]]></Custom>
<Show Dialog="DialogWelcome" After="MigrateFeatureStates"><![CDATA[NOT Installed]]></Show>
<Show Dialog="DialogMaintenanceWelcome" After="DialogWelcome"><![CDATA[Installed AND NOT RESUME AND NOT Preselected]]></Show>
<Show Dialog="DialogProgress" After="DialogMaintenanceWelcome" />
<Show Dialog="DialogUserExit" OnExit="cancel" />
<Show Dialog="DialogExitSuccess" OnExit="success" />
<Show Dialog="DialogFatalError" OnExit="error" />
</InstallUISequence>
<AdminUISequence>
<Custom Action="InitializeProperties" After="CostInitialize" />
<?ifdef Enterprise?>
<Custom Action="RetrieveCdKey" After="CostInitialize"><![CDATA[NOT Installed]]></Custom>
<Custom Action="EvaluateCCompiler" After="CostInitialize"><![CDATA[NOT Installed]]></Custom>
<?else?>
<Custom Action="EvaluateCCompiler" After="CostInitialize"><![CDATA[NOT Installed]]></Custom>
<?endif?>
<Custom Action="SET_INSTALLDIR" After="CostInitialize"><![CDATA[INSTALLDIR = ""]]></Custom>
<Custom Action="SET_IS_DOTNET_INSTALLED" Before="CostInitialize"><![CDATA[(FXINSTALLROOT <> "0") AND NOT Installed]]></Custom>
<Show Dialog="DialogWelcome" After="CostInitialize"><![CDATA[NOT Installed]]></Show>
<Show Dialog="DialogMaintenanceWelcome" After="DialogWelcome"><![CDATA[Installed AND NOT RESUME AND NOT Preselected]]></Show>
<Show Dialog="DialogProgress" After="DialogMaintenanceWelcome" />
<Show Dialog="DialogUserExit" OnExit="cancel" />
<Show Dialog="DialogExitSuccess" OnExit="success" />
<Show Dialog="DialogFatalError" OnExit="error" />
</AdminUISequence>
<!-- END USER INTERFACE SEQUENCING -->
<!-- BINARIES -->
<Binary Id="icon.ico" SourceFile="images\icon.ico"/>
<Binary Id="question.ico" SourceFile="images\question.ico"/>
<Binary Id="folder.ico" SourceFile="images\folder.ico"/>
<Binary Id="error.ico" SourceFile="images\error.ico"/>
<Binary Id="up.bmp" SourceFile="images\up.bmp"/>
<Binary Id="new.bmp" SourceFile="images\new.bmp"/>
<Binary Id="backdrop.bmp" SourceFile="images\$(var.Product)\backdrop.bmp"/>
<Binary Id="backdrop_error.bmp" SourceFile="images\$(var.Product)\backdrop_error.bmp"/>
<Binary Id="backdrop_info.bmp" SourceFile="images\$(var.Product)\backdrop_info.bmp"/>
<Binary Id="backdrop_warn.bmp" SourceFile="images\$(var.Product)\backdrop_warning.bmp"/>
<!-- END BINARIES -->
<!-- PRODUCT SPECIFIC -->
<?ifdef EiffelStudio?>
<Binary Id="backdrop_c.bmp" SourceFile="images\$(var.Product)\backdrop_c_compiler.bmp"/>
<?endif?>
<!-- END PRODUCT SPECIFIC -->
<!-- USER INTERFACE TEXT -->
<UIText Id="AbsentPath" />
<UIText Id="bytes">bytes</UIText>
<UIText Id="GB">GB</UIText>
<UIText Id="KB">KB</UIText>
<UIText Id="MB">MB</UIText>
<UIText Id="MenuAbsent">Entire feature will be unavailable</UIText>
<UIText Id="MenuAdvertise">Feature will be installed when required</UIText>
<UIText Id="MenuAllCD">Entire feature will be installed to run from CD</UIText>
<UIText Id="MenuAllLocal">Entire feature will be installed on local hard drive</UIText>
<UIText Id="MenuAllNetwork">Entire feature will be installed to run from network</UIText>
<UIText Id="MenuCD">Will be installed to run from CD</UIText>
<UIText Id="MenuLocal">Will be installed on local hard drive</UIText>
<UIText Id="MenuNetwork">Will be installed to run from network</UIText>
<UIText Id="ScriptInProgress">Gathering required information...</UIText>
<UIText Id="SelAbsentAbsent">This feature will remain uninstalled</UIText>
<UIText Id="SelAbsentAdvertise">This feature will be set to be installed when required</UIText>
<UIText Id="SelAbsentCD">This feature will be installed to run from CD</UIText>
<UIText Id="SelAbsentLocal">This feature will be installed on the local hard drive</UIText>
<UIText Id="SelAbsentNetwork">This feature will be installed to run from the network</UIText>
<UIText Id="SelAdvertiseAbsent">This feature will become unavailable</UIText>
<UIText Id="SelAdvertiseAdvertise">Will be installed when required</UIText>
<UIText Id="SelAdvertiseCD">This feature will be available to run from CD</UIText>
<UIText Id="SelAdvertiseLocal">This feature will be installed on your local hard drive</UIText>
<UIText Id="SelAdvertiseNetwork">This feature will be available to run from the network</UIText>
<UIText Id="SelCDAbsent">This feature will be uninstalled completely, you won't be able to run it from CD</UIText>
<UIText Id="SelCDAdvertise">This feature will change from run from CD state to set to be installed when required</UIText>
<UIText Id="SelCDCD">This feature will remain to be run from CD</UIText>
<UIText Id="SelCDLocal">This feature will change from run from CD state to be installed on the local hard drive</UIText>
<UIText Id="SelChildCostNeg">This feature frees up [1] on your hard drive.</UIText>
<UIText Id="SelChildCostPos">This feature requires [1] on your hard drive.</UIText>
<UIText Id="SelCostPending">Compiling cost for this feature...</UIText>
<UIText Id="SelLocalAbsent">This feature will be completely removed</UIText>
<UIText Id="SelLocalAdvertise">This feature will be removed from your local hard drive, but will be set to be installed when required</UIText>
<UIText Id="SelLocalCD">This feature will be removed from your local hard drive, but will be still available to run from CD</UIText>
<UIText Id="SelLocalLocal">This feature will remain on you local hard drive</UIText>
<UIText Id="SelLocalNetwork">This feature will be removed from your local hard drive, but will be still available to run from the network</UIText>
<UIText Id="SelNetworkAbsent">This feature will be uninstalled completely, you won't be able to run it from the network</UIText>
<UIText Id="SelNetworkAdvertise">This feature will change from run from network state to set to be installed when required</UIText>
<UIText Id="SelNetworkLocal">This feature will change from run from network state to be installed on the local hard drive</UIText>
<UIText Id="SelNetworkNetwork">This feature will remain to be run from the network</UIText>
<UIText Id="SelParentCostNegNeg">This feature frees up [1] on your hard drive. It has [2] of [3] subfeatures selected. The subfeatures free up [4] on your hard drive.</UIText>
<UIText Id="SelParentCostNegPos">This feature frees up [1] on your hard drive. It has [2] of [3] subfeatures selected. The subfeatures require [4] on your hard drive.</UIText>
<UIText Id="SelParentCostPosNeg">This feature requires [1] on your hard drive. It has [2] of [3] subfeatures selected. The subfeatures free up [4] on your hard drive.</UIText>
<UIText Id="SelParentCostPosPos">This feature requires [1] on your hard drive. It has [2] of [3] subfeatures selected. The subfeatures require [4] on your hard drive.</UIText>
<UIText Id="TimeRemaining">Time remaining: {[1] minutes }{[2] seconds}</UIText>
<UIText Id="VolumeCostAvailable">Available</UIText>
<UIText Id="VolumeCostDifference">Difference</UIText>
<UIText Id="VolumeCostRequired">Required</UIText>
<UIText Id="VolumeCostSize">Disk Size</UIText>
<UIText Id="VolumeCostVolume">Volume</UIText>
<!-- The follow have to be properties to be set and used correctly in the UI -->
<Property Id="ProgressType1">Installing</Property>
<Property Id="ProgressType2">installed</Property>
<Property Id="ProgressType3">installation</Property>
<Property Id="ProgressType4">Installation</Property>
<!-- END USER INTERFACE TEXT -->
<!-- OTHER TEXT -->
<ProgressText Action="CostFinalize">Computing space requirements</ProgressText>
<ProgressText Action="CostInitialize">Computing space requirements</ProgressText>
<ProgressText Action="FileCost">Computing space requirements</ProgressText>
<ProgressText Action="InstallValidate">Validating install</ProgressText>
<ProgressText Action="InstallFiles" Template="File: [1], Directory: [9], Size: [6]">Copying new files</ProgressText>
<ProgressText Action="InstallAdminPackage" Template="File: [1], Directory: [9], Size: [6]">Copying network install files</ProgressText>
<ProgressText Action="CreateShortcuts" Template="Shortcut: [1]">Creating shortcuts</ProgressText>
<ProgressText Action="PublishComponents" Template="Component ID: [1], Qualifier: [2]">Publishing Qualified Components</ProgressText>
<ProgressText Action="PublishFeatures" Template="Feature: [1]">Publishing Product Features</ProgressText>
<ProgressText Action="PublishProduct">Publishing product information</ProgressText>
<ProgressText Action="RegisterClassInfo" Template="Class Id: [1]">Registering Class servers</ProgressText>
<ProgressText Action="RegisterExtensionInfo" Template="Extension: [1]">Registering extension servers</ProgressText>
<ProgressText Action="RegisterMIMEInfo" Template="MIME Content Type: [1], Extension: [2]">Registering MIME info</ProgressText>
<ProgressText Action="RegisterProgIdInfo" Template="ProgId: [1]">Registering program identifiers</ProgressText>
<ProgressText Action="AllocateRegistrySpace" Template="Free space: [1]">Allocating registry space</ProgressText>
<ProgressText Action="AppSearch" Template="Property: [1], Signature: [2]">Searching for installed applications</ProgressText>
<ProgressText Action="BindImage" Template="File: [1]">Binding executables</ProgressText>
<ProgressText Action="CCPSearch">Searching for qualifying products</ProgressText>
<ProgressText Action="CreateFolders" Template="Folder: [1]">Creating folders</ProgressText>
<ProgressText Action="DeleteServices" Template="Service: [1]">Deleting services</ProgressText>
<ProgressText Action="DuplicateFiles" Template="File: [1], Directory: [9], Size: [6]">Creating duplicate files</ProgressText>
<ProgressText Action="FindRelatedProducts" Template="Found application: [1]">Searching for related applications</ProgressText>
<ProgressText Action="InstallODBC">Installing ODBC components</ProgressText>
<ProgressText Action="InstallServices" Template="Service: [2]">Installing new services</ProgressText>
<ProgressText Action="LaunchConditions">Evaluating launch conditions</ProgressText>
<ProgressText Action="MigrateFeatureStates" Template="Application: [1]">Migrating feature states from related applications</ProgressText>
<ProgressText Action="MoveFiles" Template="File: [1], Directory: [9], Size: [6]">Moving files</ProgressText>
<ProgressText Action="PatchFiles" Template="File: [1], Directory: [2], Size: [3]">Patching files</ProgressText>
<ProgressText Action="ProcessComponents">Updating component registration</ProgressText>
<ProgressText Action="RegisterComPlus" Template="AppId: [1]{{, AppType: [2], Users: [3], RSN: [4]}}">Registering COM+ Applications and Components</ProgressText>
<ProgressText Action="RegisterFonts" Template="Font: [1]">Registering fonts</ProgressText>
<ProgressText Action="RegisterProduct" Template="[1]">Registering product</ProgressText>
<ProgressText Action="RegisterTypeLibraries" Template="LibID: [1]">Registering type libraries</ProgressText>
<ProgressText Action="RegisterUser" Template="[1]">Registering user</ProgressText>
<ProgressText Action="RemoveDuplicateFiles" Template="File: [1], Directory: [9]">Removing duplicated files</ProgressText>
<ProgressText Action="RemoveEnvironmentStrings" Template="Name: [1], Value: [2], Action [3]">Updating environment strings</ProgressText>
<ProgressText Action="RemoveExistingProducts" Template="Application: [1], Command line: [2]">Removing applications</ProgressText>
<ProgressText Action="RemoveFiles" Template="File: [1], Directory: [9]">Removing files</ProgressText>
<ProgressText Action="RemoveFolders" Template="Folder: [1]">Removing folders</ProgressText>
<ProgressText Action="RemoveIniValues" Template="File: [1], Section: [2], Key: [3], Value: [4]">Removing INI files entries</ProgressText>
<ProgressText Action="RemoveODBC">Removing ODBC components</ProgressText>
<ProgressText Action="RemoveRegistryValues" Template="Key: [1], Name: [2]">Removing system registry values</ProgressText>
<ProgressText Action="RemoveShortcuts" Template="Shortcut: [1]">Removing shortcuts</ProgressText>
<ProgressText Action="RMCCPSearch">Searching for qualifying products</ProgressText>
<ProgressText Action="SelfRegModules" Template="File: [1], Folder: [2]">Registering modules</ProgressText>
<ProgressText Action="SelfUnregModules" Template="File: [1], Folder: [2]">Unregistering modules</ProgressText>
<ProgressText Action="SetODBCFolders">Initializing ODBC directories</ProgressText>
<ProgressText Action="StartServices" Template="Service: [1]">Starting services</ProgressText>
<ProgressText Action="StopServices" Template="Service: [1]">Stopping services</ProgressText>
<ProgressText Action="UnpublishComponents" Template="Component ID: [1], Qualifier: [2]">Unpublishing Qualified Components</ProgressText>
<ProgressText Action="UnpublishFeatures" Template="Feature: [1]">Unpublishing Product Features</ProgressText>
<ProgressText Action="UnregisterClassInfo" Template="Class Id: [1]">Unregister Class servers</ProgressText>
<ProgressText Action="UnregisterComPlus" Template="AppId: [1]{{, AppType: [2]}}">Unregistering COM+ Applications and Components</ProgressText>
<ProgressText Action="UnregisterExtensionInfo" Template="Extension: [1]">Unregistering extension servers</ProgressText>
<ProgressText Action="UnregisterFonts" Template="Font: [1]">Unregistering fonts</ProgressText>
<ProgressText Action="UnregisterMIMEInfo" Template="MIME Content Type: [1], Extension: [2]">Unregistering MIME info</ProgressText>
<ProgressText Action="UnregisterProgIdInfo" Template="ProgId: [1]">Unregistering program identifiers</ProgressText>
<ProgressText Action="UnregisterTypeLibraries" Template="LibID: [1]">Unregistering type libraries</ProgressText>
<ProgressText Action="WriteEnvironmentStrings" Template="Name: [1], Value: [2], Action [3]">Updating environment strings</ProgressText>
<ProgressText Action="WriteIniValues" Template="File: [1], Section: [2], Key: [3], Value: [4]">Writing INI files values</ProgressText>
<ProgressText Action="WriteRegistryValues" Template="Key: [1], Name: [2], Value: [3]">Writing system registry values</ProgressText>
<ProgressText Action="Advertise">Advertising application</ProgressText>
<ProgressText Action="GenerateScript" Template="[1]">Generating script operations for action:</ProgressText>
<ProgressText Action="InstallSFPCatalogFile" Template="File: [1], Dependencies: [2]">Installing system catalog</ProgressText>
<ProgressText Action="MsiPublishAssemblies" Template="Application Context:[1], Assembly Name:[2]">Publishing assembly information</ProgressText>
<ProgressText Action="MsiUnpublishAssemblies" Template="Application Context:[1], Assembly Name:[2]">Unpublishing assembly information</ProgressText>
<ProgressText Action="Rollback" Template="[1]">Rolling back action:</ProgressText>
<ProgressText Action="RollbackCleanup" Template="File: [1]">Removing backup files</ProgressText>
<ProgressText Action="UnmoveFiles" Template="File: [1], Directory: [9]">Removing moved files</ProgressText>
<ProgressText Action="UnpublishProduct">Unpublishing product information</ProgressText>
<Error Id="0">{{Fatal error: }}</Error>
<Error Id="1">{{Error [1]. }}</Error>
<Error Id="2">Warning [1]. </Error>
<Error Id="3" />
<Error Id="4">Info [1]. </Error>
<Error Id="5">The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is [1]. {{The arguments are: [2], [3], [4]}}</Error>
<Error Id="6" />
<Error Id="7">{{Disk full: }}</Error>
<Error Id="8">Action [Time]: [1]. [2]</Error>
<Error Id="9">[ProductName]</Error>
<Error Id="10">{[2]}{, [3]}{, [4]}</Error>
<Error Id="11">Message type: [1], Argument: [2]</Error>
<Error Id="12">=== Logging started: [Date] [Time] ===</Error>
<Error Id="13">=== Logging stopped: [Date] [Time] ===</Error>
<Error Id="14">Action start [Time]: [1].</Error>
<Error Id="15">Action ended [Time]: [1]. Return value [2].</Error>
<Error Id="16">Time remaining: {[1] minutes }{[2] seconds}</Error>
<Error Id="17">Out of memory. Shut down other applications before retrying.</Error>
<Error Id="18">Installer is no longer responding.</Error>
<Error Id="19">Installer stopped prematurely.</Error>
<Error Id="20">Please wait while Windows configures [ProductName]</Error>
<Error Id="21">Gathering required information...</Error>
<Error Id="22">Removing older versions of this application...</Error>
<Error Id="23">Preparing to remove older versions of this application...</Error>
<Error Id="32">{[ProductName]}Setup completed successfully.</Error>
<Error Id="33">{[ProductName]}Setup failed.</Error>
<Error Id="1101">Error reading from file: [2]. {{ System error [3].}} Verify that the file exists and that you can access it.</Error>
<Error Id="1301">Cannot create the file '[2]'. A directory with this name already exists. Cancel the install and try installing to a different location.</Error>
<Error Id="1302">Please insert the disk: [2]</Error>
<Error Id="1303">The installer has insufficient privileges to access this directory: [2]. The installation cannot continue. Log on as administrator or contact your system administrator.</Error>
<Error Id="1304">Error writing to file: [2]. Verify that you have access to that directory.</Error>
<Error Id="1305">Error reading from file [2]. {{ System error [3].}} Verify that the file exists and that you can access it.</Error>
<Error Id="1306">Another application has exclusive access to the file '[2]'. Please shut down all other applications, then click Retry.</Error>
<Error Id="1307">There is not enough disk space to install this file: [2]. Free some disk space and click Retry, or click Cancel to exit.</Error>
<Error Id="1308">Source file not found: [2]. Verify that the file exists and that you can access it.</Error>
<Error Id="1309">Error reading from file: [3]. {{ System error [2].}} Verify that the file exists and that you can access it.</Error>
<Error Id="1310">Error writing to file: [3]. {{ System error [2].}} Verify that you have access to that directory.</Error>
<Error Id="1311">Source file not found{{(cabinet)}}: [2]. Verify that the file exists and that you can access it.</Error>
<Error Id="1312">Cannot create the directory '[2]'. A file with this name already exists. Please rename or remove the file and click retry, or click Cancel to exit.</Error>
<Error Id="1313">The volume [2] is currently unavailable. Please select another.</Error>
<Error Id="1314">The specified path '[2]' is unavailable.</Error>
<Error Id="1315">Unable to write to the specified folder: [2].</Error>
<Error Id="1316">A network error occurred while attempting to read from the file: [2]</Error>
<Error Id="1317">An error occurred while attempting to create the directory: [2]</Error>
<Error Id="1318">A network error occurred while attempting to create the directory: [2]</Error>
<Error Id="1319">A network error occurred while attempting to open the source file cabinet: [2]</Error>
<Error Id="1320">The specified path is too long: [2]</Error>
<Error Id="1321">The Installer has insufficient privileges to modify this file: [2].</Error>
<Error Id="1322">A portion of the folder path '[2]' is invalid. It is either empty or exceeds the length allowed by the system.</Error>
<Error Id="1323">The folder path '[2]' contains words that are not valid in folder paths.</Error>
<Error Id="1324">The folder path '[2]' contains an invalid character.</Error>
<Error Id="1325">'[2]' is not a valid short file name.</Error>
<Error Id="1326">Error getting file security: [3] GetLastError: [2]</Error>
<Error Id="1327">Invalid Drive: [2]</Error>
<Error Id="1328">Error applying patch to file [2]. It has probably been updated by other means, and can no longer be modified by this patch. For more information contact your patch vendor. {{System Error: [3]}}</Error>
<Error Id="1329">A file that is required cannot be installed because the cabinet file [2] is not digitally signed. This may indicate that the cabinet file is corrupt.</Error>
<Error Id="1330">A file that is required cannot be installed because the cabinet file [2] has an invalid digital signature. This may indicate that the cabinet file is corrupt.{{ Error [3] was returned by WinVerifyTrust.}}</Error>
<Error Id="1331">Failed to correctly copy [2] file: CRC error.</Error>
<Error Id="1332">Failed to correctly move [2] file: CRC error.</Error>
<Error Id="1333">Failed to correctly patch [2] file: CRC error.</Error>
<Error Id="1334">The file '[2]' cannot be installed because the file cannot be found in cabinet file '[3]'. This could indicate a network error, an error reading from the CD-ROM, or a problem with this package.</Error>
<Error Id="1335">The cabinet file '[2]' required for this installation is corrupt and cannot be used. This could indicate a network error, an error reading from the CD-ROM, or a problem with this package.</Error>
<Error Id="1336">There was an error creating a temporary file that is needed to complete this installation.{{ Folder: [3]. System error code: [2]}}</Error>
<Error Id="1401">Could not create key: [2]. {{ System error [3].}} Verify that you have sufficient access to that key, or contact your support personnel. </Error>
<Error Id="1402">Could not open key: [2]. {{ System error [3].}} Verify that you have sufficient access to that key, or contact your support personnel. </Error>
<Error Id="1403">Could not delete value [2] from key [3]. {{ System error [4].}} Verify that you have sufficient access to that key, or contact your support personnel. </Error>
<Error Id="1404">Could not delete key [2]. {{ System error [3].}} Verify that you have sufficient access to that key, or contact your support personnel. </Error>
<Error Id="1405">Could not read value [2] from key [3]. {{ System error [4].}} Verify that you have sufficient access to that key, or contact your support personnel. </Error>
<Error Id="1406">Could not write value [2] to key [3]. {{ System error [4].}} Verify that you have sufficient access to that key, or contact your support personnel.</Error>
<Error Id="1407">Could not get value names for key [2]. {{ System error [3].}} Verify that you have sufficient access to that key, or contact your support personnel.</Error>
<Error Id="1408">Could not get sub key names for key [2]. {{ System error [3].}} Verify that you have sufficient access to that key, or contact your support personnel.</Error>
<Error Id="1409">Could not read security information for key [2]. {{ System error [3].}} Verify that you have sufficient access to that key, or contact your support personnel.</Error>
<Error Id="1410">Could not increase the available registry space. [2] KB of free registry space is required for the installation of this application.</Error>
<Error Id="1500">Another installation is in progress. You must complete that installation before continuing this one.</Error>
<Error Id="1501">Error accessing secured data. Please make sure the Windows Installer is configured properly and try the install again.</Error>
<Error Id="1502">User '[2]' has previously initiated an install for product '[3]'. That user will need to run that install again before they can use that product. Your current install will now continue.</Error>
<Error Id="1503">User '[2]' has previously initiated an install for product '[3]'. That user will need to run that install again before they can use that product.</Error>
<Error Id="1601">Out of disk space -- Volume: '[2]'; required space: [3] KB; available space: [4] KB. Free some disk space and retry.</Error>
<Error Id="1602">Are you sure you want to cancel?</Error>
<Error Id="1603">The file [2][3] is being held in use{ by the following process: Name: [4], Id: [5], Window Title: '[6]'}. Close that application and retry.</Error>
<Error Id="1604">The product '[2]' is already installed, preventing the installation of this product. The two products are incompatible.</Error>
<Error Id="1605">There is not enough disk space on the volume '[2]' to continue the install with recovery enabled. [3] KB are required, but only [4] KB are available. Click Ignore to continue the install without saving recovery information, click Retry to check for available space again, or click Cancel to quit the installation.</Error>
<Error Id="1606">Could not access network location [2].</Error>
<Error Id="1607">The following applications should be closed before continuing the install:</Error>
<Error Id="1608">Could not find any previously installed compliant products on the machine for installing this product.</Error>
<Error Id="1609">An error occurred while applying security settings. [2] is not a valid user or group. This could be a problem with the package, or a problem connecting to a domain controller on the network. Check your network connection and click Retry, or Cancel to end the install. {{Unable to locate the user's SID, system error [3]}}</Error>
<Error Id="1701">The key [2] is not valid. Verify that you entered the correct key.</Error>
<Error Id="1702">The installer must restart your system before configuration of [2] can continue. Click Yes to restart now or No if you plan to manually restart later.</Error>
<Error Id="1703">You must restart your system for the configuration changes made to [2] to take effect. Click Yes to restart now or No if you plan to manually restart later.</Error>
<Error Id="1704">An installation for [2] is currently suspended. You must undo the changes made by that installation to continue. Do you want to undo those changes?</Error>
<Error Id="1705">A previous installation for this product is in progress. You must undo the changes made by that installation to continue. Do you want to undo those changes?</Error>
<Error Id="1706">An installation package for the product [2] cannot be found. Try the installation again using a valid copy of the installation package '[3]'.</Error>
<Error Id="1707">Installation completed successfully.</Error>
<Error Id="1708">Installation failed.</Error>
<Error Id="1709">Product: [2] -- [3]</Error>
<Error Id="1710">You may either restore your computer to its previous state or continue the install later. Would you like to restore?</Error>
<Error Id="1711">An error occurred while writing installation information to disk. Check to make sure enough disk space is available, and click Retry, or Cancel to end the install.</Error>
<Error Id="1712">One or more of the files required to restore your computer to its previous state could not be found. Restoration will not be possible.</Error>
<Error Id="1713">[2] cannot install one of its required products. Contact your technical support group. {{System Error: [3].}}</Error>
<Error Id="1714">The older version of [2] cannot be removed. Contact your technical support group. {{System Error [3].}}</Error>
<Error Id="1715">Installed [2]</Error>
<Error Id="1716">Configured [2]</Error>
<Error Id="1717">Removed [2]</Error>
<Error Id="1718">File [2] was rejected by digital signature policy.</Error>
<Error Id="1719">The Windows Installer Service could not be accessed. This can occur if you are running Windows in safe mode, or if the Windows Installer is not correctly installed. Contact your support personnel for assistance.</Error>
<Error Id="1720">There is a problem with this Windows Installer package. A script required for this install to complete could not be run. Contact your support personnel or package vendor. {{Custom action [2] script error [3], [4]: [5] Line [6], Column [7], [8] }}</Error>
<Error Id="1721">There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor. {{Action: [2], location: [3], command: [4] }}</Error>
<Error Id="1722">There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor. {{Action [2], location: [3], command: [4] }}</Error>
<Error Id="1723">There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. {{Action [2], entry: [3], library: [4] }}</Error>
<Error Id="1724">Removal completed successfully.</Error>
<Error Id="1725">Removal failed.</Error>
<Error Id="1726">Advertisement completed successfully.</Error>
<Error Id="1727">Advertisement failed.</Error>
<Error Id="1728">Configuration completed successfully.</Error>
<Error Id="1729">Configuration failed.</Error>
<Error Id="1730">You must be an Administrator to remove this application. To remove this application, you can log on as an Administrator, or contact your technical support group for assistance.</Error>
<Error Id="1801">The path [2] is not valid. Please specify a valid path.</Error>
<Error Id="1802">Out of memory. Shut down other applications before retrying.</Error>
<Error Id="1803">There is no disk in drive [2]. Please insert one and click Retry, or click Cancel to go back to the previously selected volume.</Error>
<Error Id="1804">There is no disk in drive [2]. Please insert one and click Retry, or click Cancel to return to the browse dialog and select a different volume.</Error>
<Error Id="1805">The folder [2] does not exist. Please enter a path to an existing folder.</Error>
<Error Id="1806">You have insufficient privileges to read this folder.</Error>
<Error Id="1807">A valid destination folder for the install could not be determined.</Error>
<Error Id="1901">Error attempting to read from the source install database: [2].</Error>
<Error Id="1902">Scheduling reboot operation: Renaming file [2] to [3]. Must reboot to complete operation.</Error>
<Error Id="1903">Scheduling reboot operation: Deleting file [2]. Must reboot to complete operation.</Error>
<Error Id="1904">Module [2] failed to register. HRESULT [3]. Contact your support personnel.</Error>
<Error Id="1905">Module [2] failed to unregister. HRESULT [3]. Contact your support personnel.</Error>
<Error Id="1906">Failed to cache package [2]. Error: [3]. Contact your support personnel.</Error>
<Error Id="1907">Could not register font [2]. Verify that you have sufficient permissions to install fonts, and that the system supports this font.</Error>
<Error Id="1908">Could not unregister font [2]. Verify that you that you have sufficient permissions to remove fonts.</Error>
<Error Id="1909">Could not create Shortcut [2]. Verify that the destination folder exists and that you can access it.</Error>
<Error Id="1910">Could not remove Shortcut [2]. Verify that the shortcut file exists and that you can access it.</Error>
<Error Id="1911">Could not register type library for file [2]. Contact your support personnel.</Error>
<Error Id="1912">Could not unregister type library for file [2]. Contact your support personnel.</Error>
<Error Id="1913">Could not update the ini file [2][3]. Verify that the file exists and that you can access it.</Error>
<Error Id="1914">Could not schedule file [2] to replace file [3] on reboot. Verify that you have write permissions to file [3].</Error>
<Error Id="1915">Error removing ODBC driver manager, ODBC error [2]: [3]. Contact your support personnel.</Error>
<Error Id="1916">Error installing ODBC driver manager, ODBC error [2]: [3]. Contact your support personnel.</Error>
<Error Id="1917">Error removing ODBC driver: [4], ODBC error [2]: [3]. Verify that you have sufficient privileges to remove ODBC drivers.</Error>
<Error Id="1918">Error installing ODBC driver: [4], ODBC error [2]: [3]. Verify that the file [4] exists and that you can access it.</Error>
<Error Id="1919">Error configuring ODBC data source: [4], ODBC error [2]: [3]. Verify that the file [4] exists and that you can access it.</Error>
<Error Id="1920">Service '[2]' ([3]) failed to start. Verify that you have sufficient privileges to start system services.</Error>
<Error Id="1921">Service '[2]' ([3]) could not be stopped. Verify that you have sufficient privileges to stop system services.</Error>
<Error Id="1922">Service '[2]' ([3]) could not be deleted. Verify that you have sufficient privileges to remove system services.</Error>
<Error Id="1923">Service '[2]' ([3]) could not be installed. Verify that you have sufficient privileges to install system services.</Error>
<Error Id="1924">Could not update environment variable '[2]'. Verify that you have sufficient privileges to modify environment variables.</Error>
<Error Id="1925">You do not have sufficient privileges to complete this installation for all users of the machine. Log on as administrator and then retry this installation.</Error>
<Error Id="1926">Could not set file security for file '[3]'. Error: [2]. Verify that you have sufficient privileges to modify the security permissions for this file.</Error>
<Error Id="1927">Component Services (COM+ 1.0) are not installed on this computer. This installation requires Component Services in order to complete successfully. Component Services are available on Windows 2000.</Error>
<Error Id="1928">Error registering COM+ Application. Contact your support personnel for more information.</Error>
<Error Id="1929">Error unregistering COM+ Application. Contact your support personnel for more information.</Error>
<Error Id="1930">The description for service '[2]' ([3]) could not be changed.</Error>
<Error Id="1931">The Windows Installer service cannot update the system file [2] because the file is protected by Windows. You may need to update your operating system for this program to work correctly. {{Package version: [3], OS Protected version: [4]}}</Error>
<Error Id="1932">The Windows Installer service cannot update the protected Windows file [2]. {{Package version: [3], OS Protected version: [4], SFP Error: [5]}}</Error>
<Error Id="1933">The Windows Installer service cannot update one or more protected Windows files. {{SFP Error: [2]. List of protected files:\r\n[3]}}</Error>
<Error Id="1934">User installations are disabled via policy on the machine.</Error>
<Error Id="1935">An error occured during the installation of assembly component [2]. HRESULT: [3]. {{assembly interface: [4], function: [5], assembly name: [6]}}</Error>
<!-- END OTHER TEXT-->
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,22 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_exit_success">
<Dialog Id="DialogExitSuccess" Width="375" Height="220" Title="[ProductName]">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop_info.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="309" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont][ProductName] [ProgressType4] Complete</Text>
</Control>
<Control Id="Description1" Type="Text" X="9" Y="70" Width="356" Height="92" Transparent="yes" NoPrefix="yes">
<Text>[ProductName] has been successfully [ProgressType2] on your system.</Text>
</Control>
<Control Id="Description2" Type="Text" X="9" Y="162" Width="356" Height="21" Transparent="yes" NoPrefix="yes">
<Text>Click the Finish button to exit the installer.</Text>
</Control>
<Control Id="Finish" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Default="yes" Text="[Button_Finish]">
<Publish Event="EndDialog" Value="Exit">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_fatal_error">
<Dialog Id="DialogFatalError" Width="375" Height="220" Title="[ProductName]">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop_error.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="309" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont][ProductName] Ended Prematurely!</Text>
</Control>
<Control Id="Description1" Type="Text" X="9" Y="70" Width="356" Height="33" Transparent="yes" NoPrefix="yes">
<Text>[ProductName] setup ended prematurely because of an unexpected error. Your system has not been modified. To install this program at a later time, please run the installation again.</Text>
</Control>
<Control Id="Description2" Type="Text" X="9" Y="103" Width="356" Height="25" Transparent="yes" NoPrefix="yes">
<Text>Please contact our support department if you need assistance - http://support.eiffel.com.</Text>
</Control>
<Control Id="Description3" Type="Text" X="9" Y="162" Width="356" Height="21" Transparent="yes" NoPrefix="yes">
<Text>Click the Finish button to exit the installer.</Text>
</Control>
<Control Id="Finish" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Default="yes" Text="[Button_Finish]">
<Publish Event="EndDialog" Value="Exit">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_files_in_use">
<Dialog Id="FilesInUse" Width="375" Height="220" Title="[ProductName]" KeepModeless="yes">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop_warn.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="310" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]Files in Use</Text>
</Control>
<Control Id="SubTitle" Type="Text" Height="23" Width="309" X="56" Y="35" Transparent="yes" NoPrefix="yes">
<Text>[SubTitleFont]Some files that need to be updated are currently in use</Text>
</Control>
<Control Id="Description" Type="Text" X="9" Y="70" Width="357" Height="30" Transparent="yes" NoPrefix="yes">
<Text>The following applications are using files that need to be updated by this setup. Close these applications and then click Retry to continue the installation or Cancel to exit it.</Text>
</Control>
<Control Id="List" Type="ListBox" X="9" Y="100" Width="357" Height="71" Property="FileInUseProcess" Sunken="yes" TabSkip="yes">
<ListBox Property="FileInUseProcess" />
</Control>
<Control Id="Exit" Type="PushButton" X="175" Y="193" Width="56" Height="17" Text="[Button_Exit]">
<Publish Event="EndDialog" Value="Exit">1</Publish>
</Control>
<Control Id="Ignore" Type="PushButton" X="242" Y="193" Width="56" Height="17" Text="[Button_Ignore]">
<Publish Event="EndDialog" Value="Ignore">1</Publish>
</Control>
<Control Id="Retry" Type="PushButton" X="309" Y="193" Width="56" Height="17" Default="yes" Cancel="no" Text="[Button_Retry]">
<Publish Event="EndDialog" Value="Retry">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,46 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_maintenance_welcome">
<RadioButtonGroup Property="MaintenanceMode">
<RadioButton Value="Repair" X="5" Y="5" Width="213" Height="14" Text="&amp;Reinstall [ProductName]" />
<RadioButton Value="Remove" X="5" Y="19" Width="213" Height="14" Text="&amp;Uninstall [ProductName]"/>
</RadioButtonGroup>
<Dialog Id="DialogMaintenanceWelcome" Width="375" Height="220" Title="[ProductName]">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop_c.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="310" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]Welcome to the [ProductName] Maintenance Installation</Text>
</Control>
<Control Id="Description2" Type="Text" X="11" Y="70" Width="354" Height="30" Transparent="yes" NoPrefix="yes">
<Text>The maintanence installer will guide you through the steps required to repair or uninstall [ProductName] on your computer.</Text>
</Control>
<Control Id="Description3" Type="Text" X="11" Y="110" Width="354" Height="30" Transparent="yes" NoPrefix="yes">
<Text>Please select from one of the maintenance options and then click Next to continue.</Text>
</Control>
<Control Id="Choice" Type="RadioButtonGroup" X="40" Y="135" Width="218" Height="36" Property="MaintenanceMode" TabSkip="no"/>
<Control Id="Back" Type="PushButton" X="187" Y="193" Width="56" Height="17" Disabled="yes" Text="[Button_Back]" />
<Control Id="Next" Type="PushButton" X="242" Y="193" Width="56" Height="17" Default="yes" Text="[Button_Next]">
<Publish Property="ProgressType1" Value="Removing"><![CDATA[MaintenanceMode = "Remove"]]></Publish>
<Publish Property="ProgressType2" Value="removed"><![CDATA[MaintenanceMode = "Remove"]]></Publish>
<Publish Property="ProgressType3" Value="removal"><![CDATA[MaintenanceMode = "Remove"]]></Publish>
<Publish Property="ProgressType4" Value="Removal"><![CDATA[MaintenanceMode = "Remove"]]></Publish>
<Publish Property="Button_Install" Value="&amp;Remove"><![CDATA[MaintenanceMode = "Remove"]]></Publish>
<Publish Property="InstallMode" Value="Remove"><![CDATA[MaintenanceMode = "Remove"]]></Publish>
<Publish Property="ProgressType1" Value="Repairing"><![CDATA[MaintenanceMode = "Repair"]]></Publish>
<Publish Property="ProgressType2" Value="repaired"><![CDATA[MaintenanceMode = "Repair"]]></Publish>
<Publish Property="ProgressType3" Value="repair"><![CDATA[MaintenanceMode = "Repair"]]></Publish>
<Publish Property="ProgressType4" Value="Repair"><![CDATA[MaintenanceMode = "Repair"]]></Publish>
<Publish Property="Button_Install" Value="&amp;Repair"><![CDATA[MaintenanceMode = "Repair"]]></Publish>
<Publish Property="InstallMode" Value="Repair"><![CDATA[MaintenanceMode = "Repair"]]></Publish>
<Publish Event="NewDialog" Value="DialogVerifyReadyMaintain">1</Publish>
</Control>
<Control Id="Cancel" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="SpawnDialog" Value="PromptCancelInstall">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,28 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_progress">
<Dialog Id="DialogProgress" Width="375" Height="220" Title="[ProductName]" Modeless="yes">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="310" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont][ProgressType1] [ProductName]...</Text>
</Control>
<Control Id="Description" Type="Text" X="9" Y="73" Width="300" Height="20" Transparent="yes" NoPrefix="yes">
<Text>Please wait while [ProductName] is [ProgressType2].</Text>
</Control>
<Control Id="ActionText" Type="Text" X="70" Y="107" Width="265" Height="10" Transparent="yes" NoPrefix="yes">
<Subscribe Event="ActionText" Attribute="Text" />
</Control>
<Control Id="ProgressBar" Type="ProgressBar" X="35" Y="122" Width="300" Height="18" ProgressBlocks="yes" Text="Progress done">
<Subscribe Event="SetProgress" Attribute="Progress" />
</Control>
<Control Id="StatusLabel" Type="Text" X="35" Y="107" Width="35" Height="10" Text="Status:" Transparent="yes" NoPrefix="yes"/>
<Control Id="Back" Type="PushButton" X="187" Y="193" Width="56" Height="17" Disabled="yes" Text="[Button_Back]" />
<Control Id="Next" Type="PushButton" X="242" Y="193" Width="56" Height="17" Default="yes" Disabled="yes" Text="[Button_Next]" />
<Control Id="Cancel" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="SpawnDialog" Value="PromptCancelInstall">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,52 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include ..\includes\Preprocessors.wxi?>
<Fragment>
<?ifdef Enterprise?>
<UI Id="UI.dialog_register">
<Dialog Id="DialogRegister" Width="375" Height="220" Title="[ProductName]">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop.bmp" />
<Control Id="Title" Type="Text" X="55" Y="14" Width="300" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]Enter License Information</Text>
</Control>
<Control Id="SubTitle" Type="Text" X="55" Y="37" Width="300" Height="15" Transparent="yes" NoPrefix="yes">
<Text>[SubTitleFont]Please use the license information to continue the installation.</Text>
</Control>
<Control Id="Description" Type="Text" Height="38" Width="356" X="9" Y="70" Transparent="yes">
<Text>Please enter you name, company/organization (if applicable) and the CD-key provided to you, by [Manufacturer], to continue with the installation of [ProductName].</Text>
</Control>
<Control Id="NameText" Type="Text" X="9" Y="108" Width="58" Height="17" Transparent="yes">
<Text>&amp;Name:</Text>
</Control>
<Control Id="NameEdit" Type="Edit" X="72" Y="106" Width="127" Height="17" Property="USERNAME" TabSkip="no"/>
<Control Id="OrganizationText" Type="Text" X="9" Y="129" Width="58" Height="17" Transparent="yes">
<Text>&amp;Organization:</Text>
</Control>
<Control Id="OrganizationEdit" Type="Edit" X="72" Y="127" Width="127" Height="17" Property="ORGANIZATIONNAME" TabSkip="no">
<Text>None</Text>
</Control>
<Control Id="CdKeyText" Type="Text" X="9" Y="150" Width="58" Height="17" Transparent="yes">
<Text>CD-&amp;Key:</Text>
</Control>
<Control Id="CdKeyEdit" Type="Edit" X="72" Y="148" Width="177" Height="17" Property="PIDKEY"/>
<Control Id="Back" Type="PushButton" X="187" Y="193" Width="56" Height="17" Text="[Button_Back]">
<Publish Event="NewDialog" Value="DialogViewLicenseAgreement">1</Publish>
</Control>
<Control Id="Next" Type="PushButton" X="242" Y="193" Width="56" Height="17" Default="yes" Text="[Button_Next]">
<Publish Event="DoAction" Value="ValidateCdKey">1</Publish>
<Publish Event="SpawnDialog" Value="PromptInvalidCdKey"><![CDATA[PIDACCEPTED <> "1"]]></Publish>
<?ifdef EiffelStudio?>
<Publish Event="NewDialog" Value="DialogSelectFolder"><![CDATA[PIDACCEPTED = "1"]]></Publish>
<?endif?>
<Condition Action="enable"><![CDATA[USERNAME <> ""]]></Condition>
<Condition Action="disable"><![CDATA[USERNAME = ""]]></Condition>
</Control>
<Control Id="Cancel" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="SpawnDialog" Value="PromptCancelInstall">1</Publish>
</Control>
</Dialog>
</UI>
<?endif?>
</Fragment>
</Wix>

View File

@@ -0,0 +1,52 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_browse_install_folder">
<Dialog Id="DialogSelectFolder" Width="375" Height="220" Title="[ProductName]" TrackDiskSpace="yes">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="309" Height="22" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]Select an Installation Location</Text>
</Control>
<Control Id="SubTitle" Type="Text" Height="13" Width="302" X="56" Y="35" Transparent="yes" NoPrefix="yes">
<Text>[SubTitleFont]Please choose the installation location.</Text>
</Control>
<Control Id="Description" Type="Text" X="9" Y="73" Width="356" Height="29" Transparent="yes" NoPrefix="yes">
<Text>To install in this folder, click "Next". To install to a different folder, enter it below or click "Browse".</Text>
</Control>
<Control Id="FolderText" Type="Text" X="29" Y="106" Width="34" Height="15" Transparent="yes" NoPrefix="no">
<Text>&amp;Folder: </Text>
</Control>
<Control Id="FolderEdit" Type="PathEdit" X="67" Y="104" Width="237" Height="17" Property="INSTALLDIR" Sunken="no"/>
<Control Id="Browse" Type="PushButton" X="309" Y="104" Width="56" Height="17" Text="[Button_Browse]">
<Publish Property="_BrowseProperty" Value="INSTALLDIR">1</Publish>
<Publish Event="SpawnDialog" Value="PromptBrowse">1</Publish>
</Control>
<Control Id="Back" Type="PushButton" X="187" Y="193" Width="56" Height="17" Text="[Button_Back]">
<?ifdef EiffelStudio?>
<?ifdef Enterprise?>
<Publish Event="NewDialog" Value="DialogRegister">1</Publish>
<?else?>
<Publish Event="NewDialog" Value="DialogViewLicenseAgreement">1</Publish>
<?endif?>
<?else?>
<?ifdef Enterprise?>
<Publish Event="NewDialog" Value="DialogRegister">1</Publish>
<?else?>
<Publish Event="NewDialog" Value="DialogViewLicenseAgreement">1</Publish>
<?endif?>
<?endif?>
</Control>
<Control Id="Next" Type="PushButton" X="242" Y="193" Width="56" Height="17" Default="yes" Text="[Button_Next]">
<?ifdef EiffelStudio?>
<Publish Event="NewDialog" Value="DialogSelectLanguage">1</Publish>
<?else?>
<Publish Event="NewDialog" Value="DialogVerifyReadyInstall">1</Publish>
<?endif?>
</Control>
<Control Id="Cancel" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="SpawnDialog" Value="PromptCancelInstall">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,22 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_exit_success">
<Dialog Id="DialogUserExit" Width="375" Height="220" Title="[ProductName]">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop_error.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="309" Height="45" Transparent="yes" NoPrefix="yes">
<Text>[BigFont][ProductName] [ProcessType4] Was Interrupted</Text>
</Control>
<Control Id="Description1" Type="Text" X="9" Y="70" Width="356" Height="92" Transparent="yes" NoPrefix="yes">
<Text>[ProductName] was interrupted. Your system has not been modified. To install this program at a later time, please run the installation again.</Text>
</Control>
<Control Id="Description2" Type="Text" X="9" Y="162" Width="356" Height="21" Transparent="yes" NoPrefix="yes">
<Text>Click the Finish button to exit the installer.</Text>
</Control>
<Control Id="Finish" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Default="yes" Text="[Button_Finish]">
<Publish Event="EndDialog" Value="Exit">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,35 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_verify_ready_install">
<Dialog Id="DialogVerifyReadyInstall" Width="375" Height="220" Title="[ProductName]" TrackDiskSpace="yes">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="310" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]About to begin the [ProductName] Installation</Text>
</Control>
<Control Id="Description1" Type="Text" X="9" Y="73" Width="354" Height="26" Transparent="yes" NoPrefix="yes">
<Text>The installer is ready to begin the installation for [ProductName].</Text>
</Control>
<Control Id="Description2" Type="Text" Height="16" Width="354" X="9" Y="162" Transparent="yes" NoPrefix="yes">
<Text>Click the Install button to start the installation process.</Text>
</Control>
<Control Id="Install" Type="PushButton" X="242" Y="193" Width="56" Height="17" ElevationShield="yes" Default="yes" Text="[Button_Install]">
<Publish Event="EndDialog" Value="Return"><![CDATA[OutOfDiskSpace <> 1]]></Publish>
<Publish Event="SpawnDialog" Value="PromptOutOfRollbackDiskSpace"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND (PROMPTROLLBACKCOST="P" OR NOT PROMPTROLLBACKCOST)]]></Publish>
<Publish Event="EndDialog" Value="Return"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND PROMPTROLLBACKCOST="D"]]></Publish>
<Publish Event="EnableRollback" Value="False"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND PROMPTROLLBACKCOST="D"]]></Publish>
<Publish Event="SpawnDialog" Value="PromptOutOfDiskSpace"><![CDATA[(OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 1) OR (OutOfDiskSpace = 1 AND PROMPTROLLBACKCOST="F")]]></Publish>
</Control>
<Control Id="Cancel" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="SpawnDialog" Value="PromptCancelInstall">1</Publish>
</Control>
<Control Id="Back" Type="PushButton" X="187" Y="193" Width="56" Height="17" Text="[Button_Back]">
<?ifdef EiffelStudio?>
<Publish Event="NewDialog" Value="DialogSelectCCompiler"><![CDATA[C_CONFIG_CHOOSE = "1"]]></Publish>
<Publish Event="NewDialog" Value="DialogSelectLanguage"><![CDATA[C_CONFIG_CHOOSE <> "1"]]></Publish>
<?endif?>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,47 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_verify_ready_maintain">
<Dialog Id="DialogVerifyReadyMaintain" Width="375" Height="220" Title="[ProductName]" TrackDiskSpace="yes">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="310" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]About to Begin the [ProgressType4] for [ProductName]</Text>
</Control>
<Control Id="Description1" Type="Text" X="9" Y="73" Width="354" Height="26" Transparent="yes" NoPrefix="yes">
<Text>The installer is ready to begin the [ProgressType3] for [ProductName].</Text>
</Control>
<Control Id="Description2" Type="Text" Height="16" Width="354" X="9" Y="162" Transparent="yes" NoPrefix="yes" Hidden="yes">
<Text>Click the Repair button to start the [ProgressType3] process.</Text>
<Condition Action="show"><![CDATA[InstallMode = "Repair"]]></Condition>
</Control>
<Control Id="Description3" Type="Text" Height="16" Width="354" X="9" Y="162" Transparent="yes" NoPrefix="yes" Hidden="yes">
<Text>Click the Remove button to start the [ProgressType3] process.</Text>
<Condition Action="show"><![CDATA[InstallMode = "Remove"]]></Condition>
</Control>
<Control Id="Repair" Type="PushButton" X="242" Y="193" Width="56" Height="17" Default="yes" Text="[Button_Repair]" Hidden="yes">
<Condition Action="show"><![CDATA[InstallMode = "Repair"]]></Condition>
<Publish Event="EndDialog" Value="Return"><![CDATA[OutOfDiskSpace <> 1]]></Publish>
<Publish Event="SpawnDialog" Value="PromptOutOfRollbackDiskSpace"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND (PROMPTROLLBACKCOST="P" OR NOT PROMPTROLLBACKCOST)]]></Publish>
<Publish Event="EndDialog" Value="Return"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND PROMPTROLLBACKCOST="D"]]></Publish>
<Publish Event="EnableRollback" Value="False"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND PROMPTROLLBACKCOST="D"]]></Publish>
<Publish Event="SpawnDialog" Value="PromptOutOfDiskSpace"><![CDATA[(OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 1) OR (OutOfDiskSpace = 1 AND PROMPTROLLBACKCOST="F")]]></Publish>
</Control>
<Control Id="Remove" Type="PushButton" X="242" Y="193" Width="56" Height="17" Default="yes" Text="[Button_Remove]" Hidden="yes">
<Condition Action="show"><![CDATA[InstallMode = "Remove"]]></Condition>
<Publish Event="Remove" Value="All"><![CDATA[OutOfDiskSpace <> 1]]></Publish>
<Publish Event="EndDialog" Value="Return"><![CDATA[OutOfDiskSpace <> 1]]></Publish>
<Publish Event="SpawnDialog" Value="PromptOutOfRollbackDiskSpace"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND (PROMPTROLLBACKCOST="P" OR NOT PROMPTROLLBACKCOST)]]></Publish>
<Publish Event="EndDialog" Value="Return"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND PROMPTROLLBACKCOST="D"]]></Publish>
<Publish Event="EnableRollback" Value="False"><![CDATA[OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 0 AND PROMPTROLLBACKCOST="D"]]></Publish>
<Publish Event="SpawnDialog" Value="PromptOutOfDiskSpace"><![CDATA[(OutOfDiskSpace = 1 AND OutOfNoRbDiskSpace = 1) OR (OutOfDiskSpace = 1 AND PROMPTROLLBACKCOST="F")]]></Publish>
</Control>
<Control Id="Cancel" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="SpawnDialog" Value="PromptCancelInstall">1</Publish>
</Control>
<Control Id="Back" Type="PushButton" X="187" Y="193" Width="56" Height="17" Text="[Button_Back]">
<Publish Event="NewDialog" Value="DialogMaintenanceWelcome">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include ..\includes\Preprocessors.wxi?>
<Fragment>
<UI Id="UI.dialog_license_agreement">
<Dialog Id="DialogViewLicenseAgreement" Width="375" Height="220" Title="[ProductName]">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop.bmp" />
<Control Id="Title" Type="Text" X="55" Y="14" Width="300" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]End-User License Agreement</Text>
</Control>
<Control Id="SubTitle" Type="Text" X="55" Y="37" Width="300" Height="15" Transparent="yes" NoPrefix="yes">
<Text>[SubTitleFont]Please read the following license agreement carefully!</Text>
</Control>
<Control Id="AgreementText" Type="ScrollableText" X="10" Y="58" Width="355" Height="118" Sunken="yes" TabSkip="no" >
<Text SourceFile="licenses\$(var.Product)\$(var.LicenseFile)"></Text>
</Control>
<Control Id="Back" Type="PushButton" X="187" Y="193" Width="56" Height="17" Text="[Button_Back]">
<Publish Event="NewDialog" Value="DialogWelcome">1</Publish>
</Control>
<Control Id="Agree" Type="PushButton" X="242" Y="193" Width="56" Height="17" Default="yes" Text="[Button_Agree]">
<?ifdef EiffelStudio?>
<!-- EiffelStudio actions -->
<?ifdef Enterprise?>
<!-- Have user register -->
<Publish Event="NewDialog" Value="DialogRegister">1</Publish>
<?else?>
<Publish Event="NewDialog" Value="DialogSelectFolder">1</Publish>
<?endif?>
<?endif?>
</Control>
<Control Id="Cancel" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="SpawnDialog" Value="PromptCancelInstall">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,31 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.dialog_welcome">
<Dialog Id="DialogWelcome" Width="375" Height="220" Title="[ProductName]">
<Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="375" Height="220" TabSkip="no" Text="backdrop.bmp" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="310" Height="57" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]Welcome to the [ProductName] Installation</Text>
</Control>
<Control Id="Description" Type="Text" X="11" Y="70" Width="354" Height="30" Transparent="yes" NoPrefix="yes">
<Text>The installer will guide you through the steps required to install [ProductName] on your computer, to get you up and running as soon as possible.</Text>
</Control>
<Control Id="MissingCCompiler" Type="Text" X="11" Y="100" Width="354" Height="74" Transparent="yes" NoPrefix="yes">
<Text>[TitleFont]Please note that [ProductName] requires a Microsoft C/C++ compiler to complete compilation. If you do not already have one, A Microsoft C/C++ compiler is freely available to download and install. Please click the 'View How To...' button for up-to-date details on how to obtain and configure the Microsoft Windows SDK.</Text>
<Condition Action="hide"><![CDATA[C_CONFIG_CAN_COMPILE = "1"]]></Condition>
</Control>
<Control Id="View" Type="PushButton" X="276" Y="157" Width="90" Height="17" Text="[Button_ViewCompilerHowTo]">
<Publish Event="DoAction" Value="ShowCCompilerHowTo">1</Publish>
<Condition Action="hide"><![CDATA[C_CONFIG_CAN_COMPILE = "1"]]></Condition>
</Control>
<Control Id="Back" Type="PushButton" X="187" Y="193" Width="56" Height="17" Disabled="yes" Text="[Button_Back]" />
<Control Id="Next" Type="PushButton" X="242" Y="193" Width="56" Height="17" Default="yes" Text="[Button_Next]">
<Publish Event="NewDialog" Value="DialogViewLicenseAgreement">1</Publish>
</Control>
<Control Id="Cancel" Type="PushButton" X="309" Y="193" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="SpawnDialog" Value="PromptCancelInstall">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,37 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.prompt_browse">
<Dialog Id="PromptBrowse" Width="333" Height="249" Title="[ProductName]" NoMinimize="yes">
<Control Id="Icon" Type="Icon" X="9" Y="13" Width="38" Height="38" FixedSize="yes" IconSize="48" Text="folder.ico" />
<Control Id="Title" Type="Text" X="56" Y="13" Width="268" Height="22" Transparent="yes" NoPrefix="yes">
<Text>[BigFont]Change current destination folder</Text>
</Control>
<Control Id="SubTitle" Type="Text" Height="13" Width="268" X="56" Y="35" Transparent="yes" NoPrefix="yes">
<Text>[SubTitleFont]Browse to the destination folder</Text>
</Control>
<Control Id="ComboLabel" Type="Text" X="9" Y="61" Width="44" Height="10" TabSkip="no" Text="&amp;Look in:" Transparent="yes" />
<Control Id="DirectoryCombo" Type="DirectoryCombo" X="45" Y="58" Width="210" Height="80" Property="_BrowseProperty" Fixed="yes" Remote="yes" Indirect="yes">
<Subscribe Event="IgnoreChange" Attribute="IgnoreChange" />
</Control>
<Control Id="Up" Type="PushButton" X="283" Y="58" Width="19" Height="19" Icon="yes" FixedSize="yes" IconSize="16" Text="up.bmp">
<Publish Event="DirectoryListUp" Value="0">1</Publish>
</Control>
<Control Id="NewFolder" Type="PushButton" X="305" Y="58" Width="19" Height="19" Icon="yes" FixedSize="yes" IconSize="16" Text="new.bmp">
<Publish Event="DirectoryListNew" Value="0">1</Publish>
</Control>
<Control Id="DirectoryList" Type="DirectoryList" X="9" Y="81" Width="315" Height="110" Property="_BrowseProperty" Sunken="yes" Indirect="yes" TabSkip="no"/>
<Control Id="PathLabel" Type="Text" X="9" Y="199" Width="56" Height="10" TabSkip="no" Text="&amp;Folder name:" Transparent="yes" />
<Control Id="PathEdit" Type="PathEdit" X="68" Y="196" Width="256" Height="17" Property="_BrowseProperty" Indirect="yes" />
<Control Id="OK" Type="PushButton" X="202" Y="223" Width="56" Height="17" Default="yes" Text="[Button_OK]">
<Publish Event="SetTargetPath" Value="[_BrowseProperty]">1</Publish>
<Publish Event="EndDialog" Value="Return">1</Publish>
</Control>
<Control Id="Cancel" Type="PushButton" X="268" Y="223" Width="56" Height="17" Cancel="yes" Text="[Button_Cancel]">
<Publish Event="Reset" Value="0">1</Publish>
<Publish Event="EndDialog" Value="Return">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.prompt_cancel_install">
<Dialog Id="PromptCancelInstall" Width="260" Height="85" Title="Cancel Installation?" NoMinimize="yes">
<Control Id="Icon" Type="Icon" X="15" Y="15" Width="24" Height="24" FixedSize="yes" IconSize="32" Text="question.ico" />
<Control Id="Text" Type="Text" X="48" Y="15" Width="194" Height="30">
<Text>Are you sure you want to cancel the [ProgressType3] of [ProductName]?</Text>
</Control>
<Control Id="Yes" Type="PushButton" X="72" Y="57" Width="56" Height="17" Text="[Button_Yes]">
<Publish Event="EndDialog" Value="Exit">1</Publish>
</Control>
<Control Id="No" Type="PushButton" X="132" Y="57" Width="56" Height="17" Default="yes" Cancel="yes" Text="[Button_No]">
<Publish Event="EndDialog" Value="Return">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.prompt_cancel_license">
<Dialog Id="PromptCancelLicense" Width="260" Height="85" Title="License Disagree" NoMinimize="yes">
<Control Id="Icon" Type="Icon" X="15" Y="15" Width="24" Height="24" FixedSize="yes" IconSize="32" Text="question.ico" />
<Control Id="Text" Type="Text" X="48" Y="15" Width="194" Height="30">
<Text>You cannot install [ProductName] if you do not agree with the End-User License Agreement (EULA).</Text>
</Control>
<Control Id="No" Type="PushButton" X="72" Y="57" Width="56" Height="17" Default="yes" Cancel="yes" Text="[Button_DisagreeBack]">
<Publish Event="EndDialog" Value="Return">1</Publish>
</Control>
<Control Id="Yes" Type="PushButton" X="132" Y="57" Width="56" Height="17" Text="[Button_Exit]">
<Publish Event="EndDialog" Value="Exit">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<UI Id="UI.prompt_error">
<Dialog Id="PromptError" Width="270" Height="105" Title="Installer Information" ErrorDialog="yes" NoMinimize="yes">
<Control Id="ErrorText" Type="Text" X="48" Y="15" Width="205" Height="60" TabSkip="no" Text="Information text" />
<Control Id="Y" Type="PushButton" X="100" Y="80" Width="56" Height="17" TabSkip="yes" Text="[Button_Yes]">
<Publish Event="EndDialog" Value="ErrorYes">1</Publish>
</Control>
<Control Id="A" Type="PushButton" X="100" Y="80" Width="56" Height="17" TabSkip="yes" Text="[Button_Cancel]">
<Publish Event="EndDialog" Value="ErrorAbort">1</Publish>
</Control>
<Control Id="C" Type="PushButton" X="100" Y="80" Width="56" Height="17" TabSkip="yes" Text="[Button_Cancel]">
<Publish Event="EndDialog" Value="ErrorCancel">1</Publish>
</Control>
<Control Id="ErrorIcon" Type="Icon" X="15" Y="15" Width="24" Height="24" ToolTip="Information icon" FixedSize="yes" IconSize="32" Text="error.ico" />
<Control Id="I" Type="PushButton" X="100" Y="80" Width="56" Height="17" TabSkip="yes" Text="[Button_Ignore]">
<Publish Event="EndDialog" Value="ErrorIgnore">1</Publish>
</Control>
<Control Id="N" Type="PushButton" X="100" Y="80" Width="56" Height="17" TabSkip="yes" Text="[Button_No]">
<Publish Event="EndDialog" Value="ErrorNo">1</Publish>
</Control>
<Control Id="O" Type="PushButton" X="100" Y="80" Width="56" Height="17" TabSkip="yes" Text="[Button_OK]">
<Publish Event="EndDialog" Value="ErrorOk">1</Publish>
</Control>
<Control Id="R" Type="PushButton" X="100" Y="80" Width="56" Height="17" TabSkip="yes" Text="[Button_Retry]">
<Publish Event="EndDialog" Value="ErrorRetry">1</Publish>
</Control>
</Dialog>
</UI>
</Fragment>
</Wix>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<?ifdef Enterprise?>
<UI Id="UI.prompt_invalid_cd_key">
<Dialog Id="PromptInvalidCdKey" Width="260" Height="85" Title="Invalid CD-Key?" NoMinimize="yes">
<Control Id="Icon" Type="Icon" X="15" Y="15" Width="24" Height="24" FixedSize="yes" IconSize="32" Text="error.ico" />
<Control Id="Text" Type="Text" X="48" Y="15" Width="194" Height="30">
<Text>The CD-Key entered is not a valid CD-Key for [ProductName]. Please check and try again.</Text>
</Control>
<Control Id="Okay" Type="PushButton" X="100" Y="57" Width="56" Height="17" TabSkip="no" Default="yes" Text="[Button_OK]">
<Publish Event="EndDialog" Value="Return">1</Publish>
</Control>
</Dialog>
</UI>
<?endif?>
</Fragment>
</Wix>

Some files were not shown because too many files have changed in this diff Show More