[otrs-cvs]
CVS: otrs4win32 AdvancedReplace.nsh, 1.1.1.1, 1.2 CGI.pm, NONE, 1.1
ChangeSlash.nsh, 1.1.1.1, 1.2 Install.txt, 1.1.1.1, 1.2 InstallCron.bat, NONE,
1.1 OTRS.NSI, 1.1.1.1, 1.2 OTRS_Restart.bat, 1.1.1.1, 1.2 OTRS_Start.bat,
1.1.1.1, 1.2 OTRS_Stop.bat, 1.1.1.1, 1.2 RegSearch.nsh, NONE,
1.1 UninstallCron.bat, NONE, 1.1 Update_Components_in_OTRS_Installer.txt,
NONE, 1.1 Version.nsh, NONE, 1.1 conf.nsh, 1.1.1.1, 1.2 httpd-win.conf,
1.1.1.1, 1.2 install-win32.txt, NONE, 1.1 packages.bat, 1.1.1.1, 1.2
cvs-log at otrs.org
cvs-log at otrs.org
Mon Aug 8 16:26:55 CEST 2005
Update of /home/cvs/otrs4win32
In directory osser:/tmp/cvs-serv6766
Modified Files:
AdvancedReplace.nsh ChangeSlash.nsh Install.txt OTRS.NSI
OTRS_Restart.bat OTRS_Start.bat OTRS_Stop.bat conf.nsh
httpd-win.conf packages.bat
Added Files:
CGI.pm InstallCron.bat RegSearch.nsh UninstallCron.bat
Update_Components_in_OTRS_Installer.txt Version.nsh
install-win32.txt
Log Message:
new otrs 2.0.1 win-installer source
--- NEW FILE ---
package CGI;
require 5.004;
use Carp 'croak';
# See the bottom of this file for the POD documentation. Search for the
# string '=head'.
# You can run this file through either pod2man or pod2html to produce pretty
# documentation in manual or html file format (these utilities are part of the
# Perl 5 distribution).
# Copyright 1995-1998 Lincoln D. Stein. All rights reserved.
# It may be used and modified freely, but I do request that this copyright
# notice remain attached to the file. You may modify this module as you
# wish, but if you redistribute a modified version, please attach a note
# listing the modifications you have made.
# The most recent version and complete docs are available at:
# http://stein.cshl.org/WWW/software/CGI/
[...7491 lines suppressed...]
}
sub print_tail {
print <<END;
<hr>
<address>Lincoln D. Stein</address><br>
<a href="/">Home Page</a>
END
}
=head1 BUGS
Please report them.
=head1 SEE ALSO
L<CGI::Carp>, L<CGI::Fast>, L<CGI::Pretty>
=cut
Index: ChangeSlash.nsh
===================================================================
RCS file: /home/cvs/otrs4win32/ChangeSlash.nsh,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** ChangeSlash.nsh 9 May 2005 11:56:46 -0000 1.1.1.1
--- ChangeSlash.nsh 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 38,42 ****
StrCpy $R4 "\"
StrCmp $R3 "/" loop
! StrCpy $R4 "/"
loop:
StrCpy $R7 $R1 1
--- 38,42 ----
StrCpy $R4 "\"
StrCmp $R3 "/" loop
! StrCpy $R4 "/"
loop:
StrCpy $R7 $R1 1
Index: Install.txt
===================================================================
RCS file: /home/cvs/otrs4win32/Install.txt,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** Install.txt 9 May 2005 11:56:46 -0000 1.1.1.1
--- Install.txt 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 25,31 ****
Please install the OTRS 2.0 Wininstaller only at new and clean OS.
! And the following components might be install:
! - OTRS 2.*
- Apache 2
- Mysql 4.1
--- 25,31 ----
Please install the OTRS 2.0 Wininstaller only at new and clean OS.
! The following components might be install:
! - OTRS 2.0.0-beta2
- Apache 2
- Mysql 4.1
***************
*** 39,44 ****
# OTRS Start, Stop, Restart
! If you need to stop, start or restart OTRS, please use the shortcuts or
OTRS_Start.bat, OTRS_Stop.bat and OTRS_Restart.bat.
-
- Apache2, CRONw, Mysql would be updated, start, stopped.
\ No newline at end of file
--- 39,42 ----
# OTRS Start, Stop, Restart
! If you need to stop, start or restart OTRS, please use the shortcuts or
OTRS_Start.bat, OTRS_Stop.bat and OTRS_Restart.bat.
--- NEW FILE ---
@echo off
REM OTRS_Restart.bat - a script to restart cron and Apache2
REM Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
REM --
REM $Id: InstallCron.bat,v 1.1 2005/08/08 13:26:52 sr Exp $
REM --
REM This program is free software; you can redistribute it and/or modify
REM it under the terms of the GNU General Public License as published by
REM the Free Software Foundation; either version 2 of the License, or
REM (at your option) any later version.
REM
REM This program is distributed in the hope that it will be useful,
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
REM GNU General Public License for more details.
REM
REM You should have received a copy of the GNU General Public License
REM along with this program; if not, write to the Free Software
REM Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
REM --
REM NSISTESTS
Index: OTRS.NSI
===================================================================
RCS file: /home/cvs/otrs4win32/OTRS.NSI,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** OTRS.NSI 9 May 2005 11:56:46 -0000 1.1.1.1
--- OTRS.NSI 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 23,30 ****
!include "MUI.nsh"
! !include "conf.nsh"
! !include "version.nsh"
!include "ChangeSlash.nsh"
!include "AdvancedReplace.nsh"
;--------------------------------
--- 23,32 ----
!include "MUI.nsh"
! !include "Conf.nsh"
! !include "Version.nsh"
!include "ChangeSlash.nsh"
!include "AdvancedReplace.nsh"
+ !include "RegSearch.nsh"
+ !include "CheckServices.nsh"
;--------------------------------
***************
*** 42,72 ****
!define MUI_ABORTWARNING
!
;Link to Installer.
! !define MUI_FINISHPAGE_LINK "Viel Spa? mit OTRS 2.0!"
!define MUI_FINISHPAGE_LINK_LOCATION "http://localhost/otrs/index.pl"
!
;--------------------------------
;Pages
!
! !insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE "${SCRIPTHOME}\OTRS_License.txt"
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!
!insertmacro MUI_UNPAGE_WELCOME
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH
!
;--------------------------------
;Languages
-
- !insertmacro MUI_LANGUAGE "OTRS_English"
;--------------------------------
;Installer Sections
Section "-MakeDeinstaller"
--- 44,90 ----
!define MUI_ABORTWARNING
!
;Link to Installer.
! !define MUI_FINISHPAGE_LINK "Have fun with OTRS 2.0 and thanks for your help!"
!define MUI_FINISHPAGE_LINK_LOCATION "http://localhost/otrs/index.pl"
!
;--------------------------------
;Pages
!
! !insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE "${SCRIPTHOME}\OTRS_License.txt"
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!
!insertmacro MUI_UNPAGE_WELCOME
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH
!
;--------------------------------
;Languages
+ ; !insertmacro MUI_LANGUAGE "OTRS_English"
+ !insertmacro MUI_LANGUAGE "English"
;--------------------------------
;Installer Sections
+
+ ;Check registry for installed components
+ Function .onInit
+
+ ${RegSearch} "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services" "/F=K" "CheckIfServiceInstalled"
+
+ IfErrors 0 +2
+ MessageBox MB_OK "Error" IDOK +2
+
+ ${RegSearch} "HKEY_LOCAL_MACHINE\Software\" "/F=K" "CheckIfOTRSInstalled"
+
+ IfErrors 0 +2
+ MessageBox MB_OK "Error" IDOK +2
+
+ FunctionEnd
+
Section "-MakeDeinstaller"
***************
*** 80,84 ****
WriteRegStr HKLM "${UNINSTKEY}" \
"UninstallString" "$INSTDIR\uninstall.exe"
!
NoRegLink:
--- 98,102 ----
WriteRegStr HKLM "${UNINSTKEY}" \
"UninstallString" "$INSTDIR\uninstall.exe"
!
NoRegLink:
***************
*** 98,109 ****
File /r "${DEVHOME}\ActivePerl"
File /r "${DEVHOME}\mysql"
! File /r "${DEVHOME}\OTRS_Winscript\PerlInstaller.bat"
! File /r "${DEVHOME}\OTRS_Winscript\packages.bat"
! File /r "${DEVHOME}\OTRS_Winscript\OTRS_Start.bat"
! File /r "${DEVHOME}\OTRS_Winscript\OTRS_Stop.bat"
! File /r "${DEVHOME}\OTRS_Winscript\OTRS_Restart.bat"
! File /r "${DEVHOME}\CRONw"
File /r "${DEVHOME}\otrs"
!
; change the "\" in / and put the path into $RO
Push $INSTDIR
--- 116,129 ----
File /r "${DEVHOME}\ActivePerl"
File /r "${DEVHOME}\mysql"
! File /r "${SCRIPTHOME}\UninstallCron.bat"
! File /r "${SCRIPTHOME}\InstallCron.bat"
! File /r "${SCRIPTHOME}\PerlInstaller.bat"
! File /r "${SCRIPTHOME}\packages.bat"
! File /r "${SCRIPTHOME}\OTRS_Start.bat"
! File /r "${SCRIPTHOME}\OTRS_Stop.bat"
! File /r "${SCRIPTHOME}\OTRS_Restart.bat"
! File /r "${DEVHOME}\CRONw"
File /r "${DEVHOME}\otrs"
!
; change the "\" in / and put the path into $RO
Push $INSTDIR
***************
*** 114,120 ****
;Copy httpd.conf
SetOutPath $INSTDIR\Apache2\conf
! File /r "${DEVHOME}\OTRS_Winscript\httpd-win.conf"
SetOutPath $INSTDIR
!
;rename httpd-win.conf to httpd.conf
Rename $INSTDIR\Apache2\conf\httpd-win.conf $INSTDIR\Apache2\conf\httpd.conf
--- 134,146 ----
;Copy httpd.conf
SetOutPath $INSTDIR\Apache2\conf
! File /r "${SCRIPTHOME}\httpd-win.conf"
! SetOutPath $INSTDIR
!
! ;Copy CGI
! SetOutPath $INSTDIR\otrs\Kernel\cpan-lib
! File /r "${SCRIPTHOME}\CGI.pm"
! File /r "${SCRIPTHOME}\CGI"
SetOutPath $INSTDIR
!
;rename httpd-win.conf to httpd.conf
Rename $INSTDIR\Apache2\conf\httpd-win.conf $INSTDIR\Apache2\conf\httpd.conf
***************
*** 124,138 ****
Call EditPerlConf
Call EditMySQLConf
!
! ;register Apache as Service
! ExecWait '"$INSTDIR\Apache2\bin\Apache.exe" -k install' $0
! DetailPrint "Apache 2 returned $0"
!
;Now I change the my.ini and insert the MySQL path. I require $RO instead $INSTDIR, because *.ini files need "/"
WriteIniStr "$INSTDIR\mysql\my.ini" "Mysqld-nt" "basedir" "$R0/mysql"
FlushIni "$INSTDIR\mysql\my.ini"
!
;register MySQL as Service
! ExecWait '"$INSTDIR\mysql\bin\mysqld-nt.exe" --install OTRS_DB --defaults-file=$INSTDIR\mysql\my.ini'
DetailPrint "MySQL returned $0"
--- 150,161 ----
Call EditPerlConf
Call EditMySQLConf
! Call EditCRONwConf
!
;Now I change the my.ini and insert the MySQL path. I require $RO instead $INSTDIR, because *.ini files need "/"
WriteIniStr "$INSTDIR\mysql\my.ini" "Mysqld-nt" "basedir" "$R0/mysql"
FlushIni "$INSTDIR\mysql\my.ini"
!
;register MySQL as Service
! ExecWait '"$INSTDIR\mysql\bin\mysqld-nt.exe" --install MySQL --defaults-file=$INSTDIR\mysql\my.ini'
DetailPrint "MySQL returned $0"
***************
*** 145,149 ****
CreateShortCut "$SMPROGRAMS\${PRODUCT}\OTRS_RESTART.pif" \
"$INSTDIR\OTRS_Restart.bat"
!
;install Perl
ExecWait '"$INSTDIR\PerlInstaller.bat"' $0
--- 168,172 ----
CreateShortCut "$SMPROGRAMS\${PRODUCT}\OTRS_RESTART.pif" \
"$INSTDIR\OTRS_Restart.bat"
!
;install Perl
ExecWait '"$INSTDIR\PerlInstaller.bat"' $0
***************
*** 151,176 ****
Call EditOTRSConf
! Call EditCRONwConf
;Copy packages to Perl
SetOutPath $INSTDIR\Perl
! File /r "${DEVHOME}\OTRS_Winscript\Source\packages"
SetOutPath $INSTDIR
!
;install Perl modules
ExecWait '"$INSTDIR\packages.bat"' $0
DetailPrint "Perlmodules returned $0"
!
;register CRONw as Service
! ExecWait '"$INSTDIR\CRONw\cronHelper.pl" --install' $0
DetailPrint "CRONw returned $0"
!
;start Apache2, Mysql und CRONw the first time
ExecWait '"$INSTDIR\OTRS_Start.bat"' $0
! DetailPrint "CRONw returned $0"
!
;delete not used ActiveState directory
RMDir /r "$INSTDIR\ActivePerl"
!
;open installer.pl against installation
ExecShell "open" "http://localhost/otrs/installer.pl"
--- 174,203 ----
Call EditOTRSConf
! ; Call EditCRONwConf
;Copy packages to Perl
SetOutPath $INSTDIR\Perl
! File /r "${SCRIPTHOME}\Source\packages"
SetOutPath $INSTDIR
!
;install Perl modules
ExecWait '"$INSTDIR\packages.bat"' $0
DetailPrint "Perlmodules returned $0"
!
;register CRONw as Service
! ExecWait '"$INSTDIR\InstallCron.bat"' $0
DetailPrint "CRONw returned $0"
!
! ;register Apache as Service
! ExecWait '"$INSTDIR\Apache2\bin\Apache.exe" -k install' $0
! DetailPrint "Apache 2 returned $0"
!
;start Apache2, Mysql und CRONw the first time
ExecWait '"$INSTDIR\OTRS_Start.bat"' $0
! DetailPrint "Start Apache, MySQL, CRONw returned $0"
!
;delete not used ActiveState directory
RMDir /r "$INSTDIR\ActivePerl"
!
;open installer.pl against installation
ExecShell "open" "http://localhost/otrs/installer.pl"
***************
*** 181,189 ****
Section "Uninstall"
!
;reinstall Perl
ExecWait '"$INSTDIR\PerlInstaller.bat" --remove' $0
DetailPrint "Perl returned $0"
!
;stop CRONw, Mysql und Apache2
ExecWait '"$INSTDIR\OTRS_Stop.bat"' $0
--- 208,216 ----
Section "Uninstall"
!
;reinstall Perl
ExecWait '"$INSTDIR\PerlInstaller.bat" --remove' $0
DetailPrint "Perl returned $0"
!
;stop CRONw, Mysql und Apache2
ExecWait '"$INSTDIR\OTRS_Stop.bat"' $0
***************
*** 191,203 ****
;deregister MySQL as Service
! ExecWait '"$INSTDIR\mysql\bin\mysqld-nt" --remove OTRS_DB' $0
DetailPrint "MySQL returned $0"
!
;deregister Apache as Service
ExecWait '"$INSTDIR\Apache2\bin\Apache.exe" -k uninstall' $0
DetailPrint "Apache 2 returned $0"
!
;deregister CRONw as Service
! ExecWait '"$INSTDIR\CRONw\cronHelper.pl" --remove' $0
;delete registry key
DeleteRegKey HKLM "${UNINSTKEY}"
--- 218,230 ----
;deregister MySQL as Service
! ExecWait '"$INSTDIR\mysql\bin\mysqld-nt" --remove MySQL' $0
DetailPrint "MySQL returned $0"
!
;deregister Apache as Service
ExecWait '"$INSTDIR\Apache2\bin\Apache.exe" -k uninstall' $0
DetailPrint "Apache 2 returned $0"
!
;deregister CRONw as Service
! ExecWait '"$INSTDIR\UninstallCron.bat"' $0
;delete registry key
DeleteRegKey HKLM "${UNINSTKEY}"
Index: OTRS_Restart.bat
===================================================================
RCS file: /home/cvs/otrs4win32/OTRS_Restart.bat,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** OTRS_Restart.bat 9 May 2005 11:56:46 -0000 1.1.1.1
--- OTRS_Restart.bat 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 21,25 ****
! NET STOP CRON
NET START CRON
--- 21,26 ----
! NET STOP CRON
! C:\OTRS\otrs\bin\Cron4Win32.pl
NET START CRON
***************
*** 27,30 ****
C:\OTRS\Apache2\bin\Apache.exe -k start
! NET STOP OTRS_DB
! NET START OTRS_DB
\ No newline at end of file
--- 28,31 ----
C:\OTRS\Apache2\bin\Apache.exe -k start
! NET STOP MySQL
! NET START MySQL
\ No newline at end of file
Index: OTRS_Start.bat
===================================================================
RCS file: /home/cvs/otrs4win32/OTRS_Start.bat,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** OTRS_Start.bat 9 May 2005 11:56:46 -0000 1.1.1.1
--- OTRS_Start.bat 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 20,27 ****
REM --
! Perl NSISCronplfile
NET START CRON
C:\OTRS\Apache2\bin\Apache.exe -k start
! NET START OTRS_DB
\ No newline at end of file
--- 20,27 ----
REM --
! C:\OTRS\otrs\bin\Cron4Win32.pl
NET START CRON
C:\OTRS\Apache2\bin\Apache.exe -k start
! NET START MySQL
\ No newline at end of file
Index: OTRS_Stop.bat
===================================================================
RCS file: /home/cvs/otrs4win32/OTRS_Stop.bat,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** OTRS_Stop.bat 9 May 2005 11:56:46 -0000 1.1.1.1
--- OTRS_Stop.bat 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 1,3 ****
! @echo off
REM OTRS_Stop.bat - a script to stop cron and Apache2
REM Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
--- 1,3 ----
! @echo off
REM OTRS_Stop.bat - a script to stop cron and Apache2
REM Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
***************
*** 27,29 ****
REM stop MySQL service
! NET STOP OTRS_DB
\ No newline at end of file
--- 27,29 ----
REM stop MySQL service
! NET STOP MySQL
\ No newline at end of file
--- NEW FILE ---
# Regsearch.nsh - search the registry for existing components.
# Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
# --
# $Id: RegSearch.nsh,v 1.1 2005/08/08 13:26:52 sr Exp $
# --
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# --
Function RegSearch
!define RegSearch `!insertmacro RegSearchCall`
!macro RegSearchCall _PATH _OPTIONS _FUNC
Push $0
Push `${_PATH}`
Push `${_OPTIONS}`
GetFunctionAddress $0 `${_FUNC}`
Push `$0`
Call RegSearch
Pop $0
!macroend
Exch $2
Exch
Exch $1
Exch
Exch 2
Exch $0
Exch 2
Push $3
Push $4
Push $5
Push $6
Push $7
Push $8
Push $R5
Push $R6
Push $R7
Push $R8
Push $R9
ClearErrors
StrCpy $3 ''
StrCpy $4 ''
StrCpy $5 ''
StrCpy $6 ''
StrCpy $7 0
StrCpy $R9 $0 1 -1
StrCmp $R9 '\' 0 +3
StrCpy $0 $0 -1
goto -3
StrCpy $R8 0
StrCpy $R9 $0 1 $R8
StrCmp $R9 '' +4
StrCmp $R9 '\' +3
IntOp $R8 $R8 + 1
goto -4
StrCpy $R9 $0 $R8
IntOp $R8 $R8 + 1
StrCpy $0 $0 '' $R8
StrCmp $R9 'HKLM' +2
StrCmp $R9 'HKEY_LOCAL_MACHINE' 0 +3
SetShellVarContext all
goto ifkeyexists
StrCmp $R9 'HKCU' +2
StrCmp $R9 'HKEY_CURRENT_USER' 0 error
SetShellVarContext current
ifkeyexists:
; ReadRegStr $R9 SHCTX $0 ''
; IfErrors error
option:
StrCpy $R9 $1 1
StrCpy $1 $1 '' 1
StrCmp $R9 ' ' -2
StrCmp $R9 '' default
StrCmp $R9 '/' 0 -4
StrCpy $R7 -1
IntOp $R7 $R7 + 1
StrCpy $R9 $1 1 $R7
StrCmp $R9 '' +2
StrCmp $R9 '/' 0 -3
StrCpy $R8 $1 $R7
StrCpy $R8 $R8 '' 2
StrCpy $R9 $R8 '' -1
StrCmp $R9 ' ' 0 +3
StrCpy $R8 $R8 -1
goto -3
StrCpy $R9 $1 2
StrCpy $1 $1 '' $R7
StrCmp $R9 'F=' 0 mask
StrCpy $3 $R8
StrCmp $3 '' +6
StrCmp $3 'VSK' +5
StrCmp $3 'VS' +4
StrCmp $3 'V' +3
StrCmp $3 'K' +2
StrCmp $3 'D' 0 error
goto option
mask:
StrCmp $R9 'N=' 0 gotosubdir
StrCpy $4 $R8
goto option
gotosubdir:
StrCmp $R9 'G=' 0 banner
StrCpy $5 $R8
StrCmp $5 '' +3
StrCmp $5 '1' +2
StrCmp $5 '0' 0 error
goto option
banner:
StrCmp $R9 'B=' 0 error
StrCpy $6 $R8
StrCmp $6 '' +3
StrCmp $6 '1' +2
StrCmp $6 '0' 0 error
goto option
default:
StrCmp $3 '' 0 +2
StrCpy $3 'VSK'
StrCmp $5 '' 0 +2
StrCpy $5 '1'
StrCmp $6 '' 0 +2
StrCpy $6 '0'
StrCpy $7 1
Push $0
SetDetailsPrint textonly
popkey:
StrCmp $7 '0' end
IntOp $7 $7 - 1
Pop $R9
StrCpy $R5 ''
StrCpy $R6 ''
StrCpy $R7 ''
StrCpy $R8 ''
StrCmp $6 '0' +3
GetLabelAddress $1 readdefault
goto call
DetailPrint 'Search in: $R9'
readdefault:
StrCmp $3 'V' enumvalue
StrCmp $3 'K' enumkey
ReadRegStr $R6 SHCTX $R9 ''
StrCpy $R5 STR
IfErrors 0 +5
ReadRegDWORD $R6 SHCTX $R9 ''
StrCpy $R5 DWORD
IfErrors 0 +2
StrCpy $R5 BIN
StrCmp $3 'D' 0 +3
GetLabelAddress $1 enumkey
goto +2
GetLabelAddress $1 enumvalue
StrCmp $R6 '' $1
StrCmp $4 '' call
StrCmp $4 $R6 call $1
enumvalue:
StrCpy $0 0
nextvalue:
EnumRegValue $R7 SHCTX $R9 $0
ClearErrors
StrCmp $R7 '' enumkey
IntOp $0 $0 + 1
StrCmp $4 '' +3
StrCmp $4 $R7 +2
StrCmp $3 'V' nextvalue
ReadRegStr $R6 SHCTX $R9 $R7
StrCpy $R5 STR
IfErrors 0 +5
ReadRegDWORD $R6 SHCTX $R9 $R7
StrCpy $R5 DWORD
IfErrors 0 +2
StrCpy $R5 BIN
StrCmp $3 'V' +4
StrCmp $4 '' +3
StrCmp $4 $R7 +2
StrCmp $4 $R6 0 nextvalue
GetLabelAddress $1 nextvalue
goto call
enumkey:
StrCmp $5 '0' end
StrCpy $R5 KEY
StrCpy $R6 ''
StrCpy $R7 ''
StrCpy $0 0
nextkey:
EnumRegKey $R8 SHCTX $R9 $0
ClearErrors
StrCmp $R8 '' popkey
IntOp $0 $0 + 1
IntOp $7 $7 + 1
StrCmp $R9 '' 0 +3
Push $R8
goto +2
Push '$R9\$R8'
StrCmp $3 'VSK' +2
StrCmp $3 'K' 0 nextkey
StrCmp $4 '' +2
StrCmp $R8 $4 0 nextkey
GetLabelAddress $1 nextkey
call:
Push $0
Push $1
Push $2
Push $3
Push $4
Push $5
Push $6
Push $7
Push $R5
Push $R9
Call $2
Pop $8
Pop $R9
Pop $R5
Pop $7
Pop $6
Pop $5
Pop $4
Pop $3
Pop $2
Pop $1
Pop $0
IfErrors error
StrCmp $8 'StopRegSearch' clearstack
StrCpy $R6 ''
StrCpy $R7 ''
StrCpy $R8 ''
goto $1
error:
SetErrors
clearstack:
StrCmp $7 0 end
IntOp $7 $7 - 1
Pop $R9
goto clearstack
end:
SetShellVarContext current
SetDetailsPrint both
Pop $R9
Pop $R8
Pop $R7
Pop $R6
Pop $R5
Pop $8
Pop $7
Pop $6
Pop $5
Pop $4
Pop $3
Pop $2
Pop $1
Pop $0
FunctionEnd
--- NEW FILE ---
@echo off
REM OTRS_Restart.bat - a script to restart cron and Apache2
REM Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
REM --
REM $Id: UninstallCron.bat,v 1.1 2005/08/08 13:26:52 sr Exp $
REM --
REM This program is free software; you can redistribute it and/or modify
REM it under the terms of the GNU General Public License as published by
REM the Free Software Foundation; either version 2 of the License, or
REM (at your option) any later version.
REM
REM This program is distributed in the hope that it will be useful,
REM but WITHOUT ANY WARRANTY; without even the implied warranty of
REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
REM GNU General Public License for more details.
REM
REM You should have received a copy of the GNU General Public License
REM along with this program; if not, write to the Free Software
REM Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
REM --
REM NSISTESTS
--- NEW FILE ---
# OTRS_Winscript/Update - a help script to update OTRS, Perl, Apache2, CronW, MySQL
# Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
# --
# $Id: Update_Components_in_OTRS_Installer.txt,v 1.1 2005/08/08 13:26:52 sr Exp $
# --
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# --
# Update OTRS and first Installer installation
1.) Install NSIS from OTRS_Winscript or download a new version from
http://nsis.sourceforge.net/download/
2.) Generate a new directory C:/OTRSWin (If you need another path, please update at the
file OTRS_Winscript\conf.nsh "DEVHOME".
3.) Please download the new cvs Version and insert it to the Installation directory.
4.) Copy the new OTRS version into C:\OTRSWin\ (otrs)
5.) Copy Mysql, Apache2, ActivePerl, Cron to C:\OTRSWin (Please use the update describtion
from the different parts)
# Update Active Perl
1.) Please download the new "ActivePerl 4win23 without installer".
2.) Extract the File to the OTRS directory named ActivePerl and delete the old on.
3.) If a Error occures, please Update the ppm files in packages,
the file packages.bat and Perlinstaller.bat.
# Update Mysql
1.) Download the new MySQL4Win binary packet (.zip without installer).
2.) Rename the package to mysql and move ist to the OTRS directory.
3.) Compile the new Installer and hope that all run again.
# Update Apache2
1.) Download the new Apache4Win binary packet (msi or exe).
2.) Install the Apache to a directory of your choice.
3.) Copy the directory content to the OTRS directory.
4.) reinstall Apache.
5.) Compile the new Installer and hope that all run again.
If some problems occours, please Update httpd-win.conf. You find this file in a Apache source paket
(please use the same version, like the used binary file)
If you Update this file, please insert in the last line
#------------@@Changes for OTRS@@-------------
# @@OTRS1@@
# @@OTRS2@@
# @@OTRS3@@
# Update Cronw
1.) Download the new Cron files
2.) Rename the Package to CRONw and save it to C:\OTRSWin
At the end your NSIS DEVHOME looks like this:
C:\OTRSWin\otrs
C:\OTRSWin\ActiveState
C:\OTRSWin\mysql
C:\OTRSWin\CRONw
C:\OTRSWin\Apache2
C:\OTRSWin\OTRS_Winscript
C:\OTRSWin\OTRS Start.bat
C:\OTRSWin\OTRS Stop.bat
C:\OTRSWin\OTRS Restart.bat
C:\OTRSWin\Perlinstaller.bat
C:\OTRSWin\packages.bat
--- NEW FILE ---
; Simple Version Management
; Copyright (c) 2004, Mathias Simmack
!define ISALREADYINSTALLED "$(^Name) ist bereits installiert"
!define ISNEWER "Eine aktuellere Version von $(^Name) ist bereits installiert"
;!define SIMPLECHECK
!macro CreateDWord HIWORD LOWORD RESULT
StrCpy ${RESULT} 0
IntOp ${RESULT} ${HIWORD} * 0x10000
IntOp ${RESULT} ${RESULT} + ${LOWORD}
!macroend
; "PRODUCT_WRITE_VERSIONINFO"
!macro PRODUCT_WRITE_VERSIONINFO RootKey RegString MajorVer MinorVer Release Build
!insertmacro CreateDWord ${MajorVer} ${MinorVer} $0
!insertmacro CreateDWord ${Release} ${Build} $1
WriteRegDword ${RootKey} ${RegString} "MajorVer" $0
WriteRegDword ${RootKey} ${RegString} "MinorVer" $1
!macroend
; "PRODUCT_COMPARE_VERSIONINFO"
!macro PRODUCT_COMPARE_VERSIONINFO RootKey RegString MajorVer MinorVer Release Build
!insertmacro CreateDWord ${MAJOR} ${MINOR} $0
!insertmacro CreateDWord ${RELEASE} ${BUILD} $1
ReadRegDword $R0 ${RootKey} ${RegString} "MajorVer"
ReadRegDword $R1 ${RootKey} ${RegString} "MinorVer"
!ifdef SIMPLECHECK
IntCmp $R0 $0 0 VerInfoEnd +3
IntCmp $R1 $1 0 VerInfoEnd +2
goto VerInfoEnd
MessageBox MB_OK|MB_ICONEXCLAMATION "${ISNEWER}"
Abort
!else
IntCmp $R0 $0 0 VerInfoEnd +4
IntCmp $R1 $1 0 VerInfoEnd +3
MessageBox MB_OK|MB_ICONEXCLAMATION "${ISALREADYINSTALLED}"
Abort
MessageBox MB_OK|MB_ICONEXCLAMATION "${ISNEWER}"
Abort
!endif
VerInfoEnd:
!macroend
; "PRODUCT_REMOVE_VERSIONINFO"
!macro PRODUCT_REMOVE_VERSIONINFO RootKey RegString
DeleteRegValue ${RootKey} ${RegString} "MajorVer"
DeleteRegValue ${RootKey} ${RegString} "MinorVer"
DeleteRegKey /ifempty ${RootKey} ${RegString}
!macroend
; "PRODUCT_CHECK_VERSIONINFO"
!macro PRODUCT_CHECK_VERSIONINFO RootKey RegString MajorVer MinorVer Release Build RESULT
StrCpy ${RESULT} ""
!insertmacro CreateDWord ${MajorVer} ${MinorVer} $0
!insertmacro CreateDWord ${Release} ${Build} $1
ReadRegDword $R0 ${RootKey} ${RegString} "MajorVer"
ReadRegDword $R1 ${RootKey} ${RegString} "MinorVer"
IntCmp $R0 $0 0 Less High
IntCmp $R1 $1 0 Less High
StrCpy ${RESULT} "0"
goto CheckInfoEnd
Less:
StrCpy ${RESULT} "-1"
goto CheckInfoEnd
High:
StrCpy ${RESULT} "1"
CheckInfoEnd:
!macroend
Index: conf.nsh
===================================================================
RCS file: /home/cvs/otrs4win32/conf.nsh,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** conf.nsh 9 May 2005 11:56:46 -0000 1.1.1.1
--- conf.nsh 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 1,3 ****
! # conf.nsh - a script tp generate the config settings for the installer prozess
# Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
# --
--- 1,3 ----
! # Conf.nsh - a script tp generate the config settings for the installer prozess
# Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
# --
***************
*** 26,31 ****
!define MAJOR "2"
!define MINOR "0"
! !define RELEASE "0"
! !define BUILD "beta"
!define VERSION "${MAJOR}.${MINOR}.${RELEASE}-${BUILD}"
--- 26,31 ----
!define MAJOR "2"
!define MINOR "0"
! !define RELEASE "1"
! !define BUILD "1"
!define VERSION "${MAJOR}.${MINOR}.${RELEASE}-${BUILD}"
***************
*** 42,48 ****
!define DEVHOME "C:\OTRSWin"
!
! !define SCRIPTHOME "C:\OTRSWin\OTRS_Winscript"
!
;----------------------------------------------------------------------------------
--- 42,48 ----
!define DEVHOME "C:\OTRSWin"
!
! !define SCRIPTHOME "C:\OTRSWin\otrs4win32"
!
;----------------------------------------------------------------------------------
***************
*** 57,91 ****
;OTRS shabangs anpassen
! Push "NSISShabang" #-- text to be replaced within the " "
! Push "$R0/Perl/bin/perl5.8.6.exe -w" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\bin\cgi-bin\installer.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "NSISShabang" #-- text to be replaced within the " "
! Push "$R0/Perl/bin/perl5.8.6.exe -w" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\bin\cgi-bin\index.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "NSISShabang" #-- text to be replaced within the " "
! Push "$R0/Perl/bin/perl5.8.6.exe -w" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\bin\cgi-bin\customer.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "NSISShabang" #-- text to be replaced within the " "
! Push "$R0/Perl/bin/perl5.8.6.exe -w" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\bin\cgi-bin\faq.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
;Check if Config.pm exist
! IfFileExists $INSTDIR\otrs\Kernel\Config.pm 0 +2
! CopyFiles $INSTDIR\otrs\Kernel\Config.pm.dist $INSTDIR\otrs\Kernel\Config.pm
;OTRS Config.pm changes
--- 57,93 ----
;OTRS shabangs anpassen
! Push "#!/usr/bin/perl -w" #-- text to be replaced within the " "
! Push "#!$R0/Perl/bin/perl.exe -w" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\bin\cgi-bin\installer.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "#!/usr/bin/perl -w" #-- text to be replaced within the " "
! Push "#!$R0/Perl/bin/perl.exe -w" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\bin\cgi-bin\index.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "#!/usr/bin/perl -w" #-- text to be replaced within the " "
! Push "#!$R0/Perl/bin/perl.exe -w" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\bin\cgi-bin\customer.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "#!/usr/bin/perl -w" #-- text to be replaced within the " "
! Push "#!$R0/Perl/bin/perl.exe -w" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\bin\cgi-bin\faq.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
;Check if Config.pm exist
! ; IfFileExists $INSTDIR\otrs\Kernel\Config.pm 0 +2
! ; CopyFiles $DEVHOME\otrs\Kernel\Config.pm.dist $INSTDIR\otrs\Kernel\Config.pm
! ; Rename $INSTDIR\otrs\Kernel\Config.pm.dist $INSTDIR\otrs\Kernel\Config.pm
!
;OTRS Config.pm changes
***************
*** 96,107 ****
Push $INSTDIR\otrs\Kernel\Config.pm #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "# $$DIBI$$" #-- text to be replaced within the " "
! Push "$$Self->{'LogModule'} = 'Kernel::System::Log::File';$\r$\n $$Self->{'LogModule::LogFile'} = '$R0/otrs/log/otrs.log';$\r$\n NSISSetDibi$\r$\n" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\Kernel\Config.pm #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "NSISSetDibi" #-- text to be replaced within the " "
Push "# $$DIBI$$" #-- "Serverroot"
--- 98,109 ----
Push $INSTDIR\otrs\Kernel\Config.pm #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "# $$DIBI$$" #-- text to be replaced within the " "
! Push "$$Self->{LogModule} = 'Kernel::System::Log::File';$\r$\n $$Self->{LogModule::LogFile} = '$R0/otrs/var/log/otrs.log';$\r$\n NSISSetDibi$\r$\n" #-- "Serverroot"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\otrs\Kernel\Config.pm #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "NSISSetDibi" #-- text to be replaced within the " "
Push "# $$DIBI$$" #-- "Serverroot"
***************
*** 129,133 ****
Push $INSTDIR\Apache2\conf\httpd.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "@@ServerAdmin@@" #-- text to be replaced within the " "
Push "admin at your-domain.com" #-- replace with anything within the " "
--- 131,135 ----
Push $INSTDIR\Apache2\conf\httpd.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "@@ServerAdmin@@" #-- text to be replaced within the " "
Push "admin at your-domain.com" #-- replace with anything within the " "
***************
*** 136,140 ****
Push $INSTDIR\Apache2\conf\httpd.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "@@ServerName@@" #-- text to be replaced within the " "
Push "www.somenet.com" #-- replace with anything within the " "
--- 138,142 ----
Push $INSTDIR\Apache2\conf\httpd.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "@@ServerName@@" #-- text to be replaced within the " "
Push "www.somenet.com" #-- replace with anything within the " "
***************
*** 143,149 ****
Push $INSTDIR\Apache2\conf\httpd.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "# @@OTRS1@@" #-- text to be replaced within the " "
! Push "Alias /otrs-web/ $\"$R0/otrs/var/httpd/htdocs/$\"$\r$\n ScriptAlias /otrs/ $\"$R0/otrs/bin/cgi-bin/$\"$\r$\n" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
--- 145,151 ----
Push $INSTDIR\Apache2\conf\httpd.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "# @@OTRS1@@" #-- text to be replaced within the " "
! Push "LoadFile $\"$R0/Perl/bin/perl58.dll$\"$\r$\n LoadModule perl_module modules/mod_perl.so $\r$\n Include $\"$R0/otrs/scripts/apache2-httpd-new.include.conf$\"$\r$\n"
Push all #-- replace all occurrences
Push all #-- replace all occurrences
***************
*** 151,168 ****
Call AdvReplaceInFile #-- Call the Function
! Push "# @@OTRS2@@" #-- text to be replaced within the " "
! Push "<Location /otrs>$\r$\n Options ExecCGI$\r$\n Order deny,allow$\r$\n Deny from all$\r$\n allow from 127.0.0.1$\r$\n SetHandler cgi-script$\r$\n </Location>$\r$\n" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\Apache2\conf\httpd.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "# @@OTRS3@@" #-- text to be replaced within the " "
! Push "MaxRequestsPerChild 400$\r$\n" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\Apache2\conf\httpd.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
;Apache start script
Push "C:\OTRS\Apache2\bin\Apache.exe -k start" #-- text to be replaced within the " "
--- 153,206 ----
Call AdvReplaceInFile #-- Call the Function
! Push "ScriptAlias /otrs/ $\"/opt/otrs/bin/cgi-bin/$\"" #-- text to be replaced within the " "
! Push "ScriptAlias /otrs/ $\"$R0/otrs/bin/cgi-bin/$\"" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\otrs\scripts\apache2-httpd-new.include.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "Alias /otrs-web/ $\"/opt/otrs/var/httpd/htdocs/$\"" #-- text to be replaced within the " "
! Push "Alias /otrs-web/ $\"$R0/otrs/var/httpd/htdocs/$\"" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\otrs\scripts\apache2-httpd-new.include.conf #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "Perlrequire /opt/otrs/scripts/apache2-perl-startup.pl" #-- text to be replaced within the " "
! Push "Perlrequire $R0/otrs/scripts/apache2-perl-startup.pl"
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\otrs\scripts\apache2-httpd-new.include.conf #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "/opt/otrs/bin/cgi-bin/" #-- text to be replaced within the " "
! Push "$R0/otrs/bin/cgi-bin/" #-- replace with anything within the " "
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\otrs\scripts\apache2-httpd-new.include.conf #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "/opt/otrs/var/httpd/htdocs/" #-- text to be replaced within the " "
! Push "$R0/otrs/var/httpd/htdocs/"
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\otrs\scripts\apache2-httpd-new.include.conf #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "use lib $\"/opt/otrs/$\";" #-- text to be replaced within the " "
! Push "use lib $\"$R0/otrs/$\";" #-- replace with anything within the " "
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\otrs\scripts\apache2-perl-startup.pl #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "use lib $\"/opt/otrs/Kernel/cpan-lib$\";" #-- text to be replaced within the " "
! Push "use lib $\"$R0/otrs/Kernel/cpan-lib$\";"
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\otrs\scripts\apache2-perl-startup.pl #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
!
;Apache start script
Push "C:\OTRS\Apache2\bin\Apache.exe -k start" #-- text to be replaced within the " "
***************
*** 172,176 ****
Push $INSTDIR\OTRS_Start.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "C:\OTRS\Apache2\bin\Apache.exe -k stop" #-- text to be replaced within the " "
Push "$INSTDIR\Apache2\bin\Apache.exe -k stop" #-- replace with anything within the " "
--- 210,214 ----
Push $INSTDIR\OTRS_Start.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "C:\OTRS\Apache2\bin\Apache.exe -k stop" #-- text to be replaced within the " "
Push "$INSTDIR\Apache2\bin\Apache.exe -k stop" #-- replace with anything within the " "
***************
*** 198,202 ****
Push $INSTDIR\PerlInstaller.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "NSISPerlInt" #-- text to be replaced within the " "
Push "$INSTDIR\Perl\bin\" #-- replace with anything within the " "
--- 236,240 ----
Push $INSTDIR\PerlInstaller.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "NSISPerlInt" #-- text to be replaced within the " "
Push "$INSTDIR\Perl\bin\" #-- replace with anything within the " "
***************
*** 205,209 ****
Push $INSTDIR\packages.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "NSISOTRSPackages" #-- text to be replaced within the " "
Push "$INSTDIR\Perl\packages" #-- replace with anything within the " "
--- 243,247 ----
Push $INSTDIR\packages.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "NSISOTRSPackages" #-- text to be replaced within the " "
Push "$INSTDIR\Perl\packages" #-- replace with anything within the " "
***************
*** 212,233 ****
Push $INSTDIR\packages.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
FunctionEnd
Function EditCRONwConf
!
;CRONw changes
! Push "NSISCronplfile" #-- text to be replaced within the " "
! Push "$R0/otrs/var/tmp/cron.pl" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\OTRS_Start.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "NSISINSTDIR" #-- text to be replaced within the " "
! Push "$INSTDIR\CRONw" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\OTRS_Stop.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
--- 250,292 ----
Push $INSTDIR\packages.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "C:\OTRS\Perl\packages\scripts\mod_perl.so" #-- text to be replaced within the " "
! Push "$INSTDIR\Perl\packages\scripts\mod_perl.so" #-- "Serverroot"
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\packages.bat #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "C:\OTRS\Apache2\modules\mod_perl.so" #-- text to be replaced within the " "
! Push "$INSTDIR\Apache2\modules\mod_perl.so" #-- "Serverroot"
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\packages.bat #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
FunctionEnd
Function EditCRONwConf
!
;CRONw changes
! Push "C:\OTRS\otrs\bin\Cron4Win32.pl" #-- text to be replaced within the " "
! Push "$INSTDIR\Perl\bin\perl.exe $INSTDIR\otrs\bin\Cron4Win32.pl" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
Push $INSTDIR\OTRS_Start.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "C:\OTRS\otrs\bin\Cron4Win32.pl" #-- text to be replaced within the " "
! Push "$INSTDIR\Perl\bin\perl.exe $INSTDIR\otrs\bin\Cron4Win32.pl" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\OTRS_Restart.bat #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "my $$PerlExe = $\"$\";" #-- text to be replaced within the " "
! Push "my $$PerlExe = $\"$R0/Perl/bin/perl.exe$\";" #-- replace with anything within the " "
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\otrs\bin\Cron4Win32.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
***************
*** 236,247 ****
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\otrs\var\tmp\cron.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "my $$CronTab = $\"$\";" #-- text to be replaced within the " "
Push "my $$CronTab = $\"$R0/CRONw/crontab.txt$\";" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\otrs\var\tmp\cron.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
--- 295,320 ----
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\otrs\bin\Cron4Win32.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
Push "my $$CronTab = $\"$\";" #-- text to be replaced within the " "
Push "my $$CronTab = $\"$R0/CRONw/crontab.txt$\";" #-- replace with anything within the " "
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\otrs\bin\Cron4Win32.pl #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "REM NSISTESTS" #-- text to be replaced within the " "
! Push "$\r$\n $INSTDIR\Perl\bin\perl.exe $INSTDIR\CRONw\cronHelper.pl --install $\r$\n"
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\InstallCron.bat #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "REM NSISTESTS" #-- text to be replaced within the " "
! Push "$\r$\n $INSTDIR\Perl\bin\perl.exe $INSTDIR\CRONw\cronHelper.pl --remove $\r$\n"
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\UninstallCron.bat #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
***************
*** 250,254 ****
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\otrs\var\tmp\cron.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
--- 323,334 ----
Push all #-- replace all occurrences
Push all #-- replace all occurrences
! Push $INSTDIR\otrs\bin\Cron4Win32.pl #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
! Push "#!/usr/bin/perl -w" #-- text to be replaced within the " "
! Push "#!$R0/Perl/bin/perl.exe -w" #-- replace with anything within the " "
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\otrs\bin\Cron4Win32.pl #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
***************
*** 256,263 ****
Function EditMySQLConf
!
;Mysql changes
CopyFiles $INSTDIR\mysql\my-small.cnf $INSTDIR\mysql\my.ini
!
Push "[mysqld]" #-- text to be replaced within the " "
Push "[mysqld-nt]$\r$\nbasedir = $R0/mysql" #-- replace with anything within the " "
--- 336,343 ----
Function EditMySQLConf
!
;Mysql changes
CopyFiles $INSTDIR\mysql\my-small.cnf $INSTDIR\mysql\my.ini
!
Push "[mysqld]" #-- text to be replaced within the " "
Push "[mysqld-nt]$\r$\nbasedir = $R0/mysql" #-- replace with anything within the " "
***************
*** 266,269 ****
Push $INSTDIR\mysql\my.ini #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
FunctionEnd
\ No newline at end of file
--- 346,356 ----
Push $INSTDIR\mysql\my.ini #-- file to replace in
Call AdvReplaceInFile #-- Call the Function
!
! Push "max_allowed_packet = 1M" #-- text to be replaced within the " "
! Push "max_allowed_packet = 20M" #-- replace with anything within the " "
! Push all #-- replace all occurrences
! Push all #-- replace all occurrences
! Push $INSTDIR\mysql\my.ini #-- file to replace in
! Call AdvReplaceInFile #-- Call the Function
!
FunctionEnd
\ No newline at end of file
Index: httpd-win.conf
===================================================================
RCS file: /home/cvs/otrs4win32/httpd-win.conf,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** httpd-win.conf 9 May 2005 11:56:46 -0000 1.1.1.1
--- httpd-win.conf 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 9,13 ****
# Do NOT simply read the instructions in here without understanding
# what they do. They're here only as hints or reminders. If you are unsure
! # consult the online docs. You have been warned.
#
# The configuration directives are grouped into three basic sections:
--- 9,13 ----
# Do NOT simply read the instructions in here without understanding
# what they do. They're here only as hints or reminders. If you are unsure
! # consult the online docs. You have been warned.
#
# The configuration directives are grouped into three basic sections:
***************
*** 99,103 ****
##
## Server-Pool Size Regulation (MPM specific)
! ##
# WinNT MPM
--- 99,103 ----
##
## Server-Pool Size Regulation (MPM specific)
! ##
# WinNT MPM
***************
*** 114,118 ****
# directive.
#
! # Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
--- 114,118 ----
# directive.
#
! # Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
***************
*** 207,211 ****
#
# If your host doesn't have a registered DNS name, enter its IP address here.
! # You will have to access it by its address anyway, and this will make
# redirections work in a sensible way.
#
--- 207,211 ----
#
# If your host doesn't have a registered DNS name, enter its IP address here.
! # You will have to access it by its address anyway, and this will make
# redirections work in a sensible way.
#
***************
*** 213,217 ****
#
! # UseCanonicalName: Determines how Apache constructs self-referencing
# URLs and the SERVER_NAME and SERVER_PORT variables.
# When set "Off", Apache will use the Hostname and Port supplied
--- 213,217 ----
#
! # UseCanonicalName: Determines how Apache constructs self-referencing
# URLs and the SERVER_NAME and SERVER_PORT variables.
# When set "Off", Apache will use the Hostname and Port supplied
***************
*** 231,238 ****
# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
! # directory (and its subdirectories).
#
! # First, we configure the "default" to be a very restrictive set of
! # features.
#
<Directory />
--- 231,238 ----
# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
! # directory (and its subdirectories).
#
! # First, we configure the "default" to be a very restrictive set of
! # features.
#
<Directory />
***************
*** 316,320 ****
#
# The index.html.var file (a type-map) is used to deliver content-
! # negotiated documents. The MultiViews Option can be used for the
# same purpose, but it is much slower.
#
--- 316,320 ----
#
# The index.html.var file (a type-map) is used to deliver content-
! # negotiated documents. The MultiViews Option can be used for the
# same purpose, but it is much slower.
#
***************
*** 323,327 ****
#
# AccessFileName: The name of the file to look for in each directory
! # for additional configuration directives. See also the AllowOverride
# directive.
#
--- 323,327 ----
#
# AccessFileName: The name of the file to look for in each directory
! # for additional configuration directives. See also the AllowOverride
# directive.
#
***************
*** 329,334 ****
#
! # The following lines prevent .htaccess and .htpasswd files from being
! # viewed by Web clients.
#
<Files ~ "^\.ht">
--- 329,334 ----
#
! # The following lines prevent .htaccess and .htpasswd files from being
! # viewed by Web clients.
#
<Files ~ "^\.ht">
***************
*** 376,380 ****
# EnableMMAP: Control whether memory-mapping is used to deliver
# files (assuming that the underlying OS supports it).
! # The default is on; turn this off if you serve from NFS-mounted
# filesystems. On some systems, turning it off (regardless of
# filesystem) can improve performance; for details, please see
--- 376,380 ----
# EnableMMAP: Control whether memory-mapping is used to deliver
# files (assuming that the underlying OS supports it).
! # The default is on; turn this off if you serve from NFS-mounted
# filesystems. On some systems, turning it off (regardless of
# filesystem) can improve performance; for details, please see
***************
*** 384,390 ****
#
! # EnableSendfile: Control whether the sendfile kernel support is
# used to deliver files (assuming that the OS supports it).
! # The default is on; turn this off if you serve from NFS-mounted
# filesystems. Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#enablesendfile
--- 384,390 ----
#
! # EnableSendfile: Control whether the sendfile kernel support is
# used to deliver files (assuming that the OS supports it).
! # The default is on; turn this off if you serve from NFS-mounted
# filesystems. Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#enablesendfile
***************
*** 454,459 ****
#
# Optionally add a line containing the server version and virtual host
! # name to server-generated pages (internal error documents, FTP directory
! # listings, mod_status and mod_info output etc., but not CGI generated
# documents or custom error documents).
# Set to "EMail" to also include a mailto: link to the ServerAdmin.
--- 454,459 ----
#
# Optionally add a line containing the server version and virtual host
! # name to server-generated pages (internal error documents, FTP directory
! # listings, mod_status and mod_info output etc., but not CGI generated
# documents or custom error documents).
# Set to "EMail" to also include a mailto: link to the ServerAdmin.
***************
*** 463,473 ****
#
! # Aliases: Add here as many aliases as you need (with no limit). The format is
# Alias fakename realname
#
# Note that if you include a trailing / on fakename then the server will
# require it to be present in the URL. So "/icons" isn't aliased in this
! # example, only "/icons/". If the fakename is slash-terminated, then the
! # realname must also be slash terminated, and if the fakename omits the
# trailing slash, the realname must also omit it.
#
--- 463,473 ----
#
! # Aliases: Add here as many aliases as you need (with no limit). The format is
# Alias fakename realname
#
# Note that if you include a trailing / on fakename then the server will
# require it to be present in the URL. So "/icons" isn't aliased in this
! # example, only "/icons/". If the fakename is slash-terminated, then the
! # realname must also be slash terminated, and if the fakename omits the
# trailing slash, the realname must also omit it.
#
***************
*** 598,602 ****
#
# HeaderName is the name of a file which should be prepended to
! # directory indexes.
ReadmeName README.html
HeaderName HEADER.html
--- 598,602 ----
#
# HeaderName is the name of a file which should be prepended to
! # directory indexes.
ReadmeName README.html
HeaderName HEADER.html
***************
*** 609,622 ****
#
! # DefaultLanguage and AddLanguage allows you to specify the language of
! # a document. You can then use content negotiation to give a browser a
# file in a language the user can understand.
#
# Specify a default language. This means that all data
! # going out without a specific language tag (see below) will
# be marked with this one. You probably do NOT want to set
# this unless you are sure it is correct for all cases.
#
! # * It is generally better to not mark a page as
# * being a certain language than marking it with the wrong
# * language!
--- 609,622 ----
#
! # DefaultLanguage and AddLanguage allows you to specify the language of
! # a document. You can then use content negotiation to give a browser a
# file in a language the user can understand.
#
# Specify a default language. This means that all data
! # going out without a specific language tag (see below) will
# be marked with this one. You probably do NOT want to set
# this unless you are sure it is correct for all cases.
#
! # * It is generally better to not mark a page as
# * being a certain language than marking it with the wrong
# * language!
***************
*** 629,634 ****
# avoid the ambiguity with the common suffix for perl scripts.
#
! # Note 2: The example entries below illustrate that in some cases
! # the two character 'Language' abbreviation is not identical to
# the two character 'Country' code for its country,
# E.g. 'Danmark/dk' versus 'Danish/da'.
--- 629,634 ----
# avoid the ambiguity with the common suffix for perl scripts.
#
! # Note 2: The example entries below illustrate that in some cases
! # the two character 'Language' abbreviation is not identical to
# the two character 'Country' code for its country,
# E.g. 'Danmark/dk' versus 'Danish/da'.
***************
*** 726,730 ****
# for a list of sorts. But browsers support few.
#
! AddCharset GB2312 .gb2312 .gb
AddCharset utf-7 .utf7
AddCharset utf-8 .utf8
--- 726,730 ----
# for a list of sorts. But browsers support few.
#
! AddCharset GB2312 .gb2312 .gb
AddCharset utf-7 .utf7
AddCharset utf-8 .utf8
***************
*** 814,818 ****
#
# We use Alias to redirect any /error/HTTP_<error>.html.var response to
! # our collection of by-error message multi-language collections. We use
# includes to substitute the appropriate text.
#
--- 814,818 ----
#
# We use Alias to redirect any /error/HTTP_<error>.html.var response to
! # our collection of by-error message multi-language collections. We use
# includes to substitute the appropriate text.
#
***************
*** 823,827 ****
#
# which allows you to create your own set of files by starting with the
! # @exp_errordir@/include/ files and copying them to /your/include/path/,
# even on a per-VirtualHost basis. The default include files will display
# your Apache version number and your ServerAdmin email address regardless
--- 823,827 ----
#
# which allows you to create your own set of files by starting with the
! # @exp_errordir@/include/ files and copying them to /your/include/path/,
# even on a per-VirtualHost basis. The default include files will display
# your Apache version number and your ServerAdmin email address regardless
***************
*** 876,881 ****
#
# The following directive disables redirects on non-GET requests for
! # a directory that does not include the trailing slash. This fixes a
! # problem with Microsoft WebFolders which does not appropriately handle
# redirects for folders with DAV methods.
# Same deal with Apple's DAV filesystem and Gnome VFS support for DAV.
--- 876,881 ----
#
# The following directive disables redirects on non-GET requests for
! # a directory that does not include the trailing slash. This fixes a
! # problem with Microsoft WebFolders which does not appropriately handle
# redirects for folders with DAV methods.
# Same deal with Apple's DAV filesystem and Gnome VFS support for DAV.
***************
*** 926,930 ****
# IP addresses. This is indicated by the asterisks in the directives below.
#
! # Please see the documentation at
# <URL:http://httpd.apache.org/docs-2.0/vhosts/>
# for further details before you try to setup virtual hosts.
--- 926,930 ----
# IP addresses. This is indicated by the asterisks in the directives below.
#
! # Please see the documentation at
# <URL:http://httpd.apache.org/docs-2.0/vhosts/>
# for further details before you try to setup virtual hosts.
***************
*** 954,958 ****
#------------@@Changes for OTRS@@-------------
# @@OTRS1@@
! # @@OTRS2@@
! # @@OTRS3@@
--- 954,957 ----
#------------@@Changes for OTRS@@-------------
# @@OTRS1@@
!
--- NEW FILE ---
Install OTRS on Win32
_________________________________________________________
0) Run the .exe installer. You probably did so, as you can read
this. The installer created a Directory after your wish,
containing all the software and additionally installed the
servers as system services. Best, it already started them.
If not, please be sure to have the webserver and the database
running before you continue.
Use the links in the Start Menu to control the servers.
_________________________________________________________
1) Where to go from now?
Visit:
http://localhost/otrs/installer.pl
to complete the Web installer, which will create and populate
the database. Afterwards you're guided to the login page:
http://localhost/otrs/index.pl
The install document is here:
http://localhost/xampp/install-win32.html
The complete documentation is here:
http://doc.otrs.org/
The customer frontend is here:
http://localhost/otrs/customer.pl
2) How To Stop The Servers (if ever...)
If you installed the servers as system services, you may use
the system's service control area to stop them, although you
don't need to, because they will be terminated at shutdown
time properly. Additionally, they need not be shut down if you
actually do not work in OTRS, but should be kept running to
let the maintenance scripts perform their actions at their
given times.
Regarding the Standalone versions of the servers: To safely
shut down MySQL, Apache, and CRON use the OTRS Start Menu
entry or issue the script OTRS_Stop.bat.
_________________________________________________________
3) Uninstallation Instructions
If you ever want to remove otrs4win32 from your box, simply
stop all of the servers, uninstall all of their eventually
installed services and delete the directory holding the
application. For all this we provide an uninstaller, found in
the installation directory. You may perform some of the
required steps manually via the Start Menu, if you want to.
The uninstall process will guide you through what will be
uninstalled. No Reboot should be required.
Additionally, it provides some means to actually REinstall
some aspects of the software. This were the service, the Start
menu entries and the entries in Windows' Registry.
_________________________________________________________
Index: packages.bat
===================================================================
RCS file: /home/cvs/otrs4win32/packages.bat,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -r1.1.1.1 -r1.2
*** packages.bat 9 May 2005 11:56:46 -0000 1.1.1.1
--- packages.bat 8 Aug 2005 13:26:52 -0000 1.2
***************
*** 1,3 ****
! @echo off
REM packages.bat - a script to install Perl ppm modules
REM Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
--- 1,3 ----
! @echo off
REM packages.bat - a script to install Perl ppm modules
REM Copyright (C) 2001-2005 Stefan Rother <sr at otrs.de>
***************
*** 22,25 ****
--- 22,28 ----
call cd NSISPerlInt
+ call ppm install -force -nofollow NSISOTRSPackages\mod_perl.ppd
+ copy /Y C:\OTRS\Perl\packages\scripts\mod_perl.so C:\OTRS\Apache2\modules\mod_perl.so
+
call ppm install -noforce -follow NSISOTRSPackages\DBI.ppd
call ppm install -noforce -follow NSISOTRSPackages\DBD-mysql.ppd
***************
*** 35,47 ****
call ppm install -noforce -follow NSISOTRSPackages\Convert-ASN1.ppd
call ppm install -noforce -follow NSISOTRSPackages\perl-ldap.ppd
- REM call ppm install NSISOTRSPackages\Net_SSLeay.pm.ppd
- REM copy /Y ssleay32.dll NSISPerlInt.
- REM copy /Y libeay32.dll NSISPerlInt.
- REM call ppm install -noforce -follow NSISOTRSPackages\IO-Socket-SSL.ppd
-
- rem call ppm install http://theoryx5.uwinnipeg.ca/ppms/mod_perl-1.ppd
-
-
-
rem #CRONw Packages installieren
--- 38,41 ----
More information about the cvs-log
mailing list