home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CD Direkt 1995 #3
/
_.ISO
/
cdd
/
prodemo
/
se_khk
/
pckwd1.exe
/
SETUP.MST
< prev
next >
Wrap
Text File
|
1994-10-24
|
33KB
|
1,170 lines
'**************************************************************************
'* Project : KHK-Setup-Routinen
'*-------------------------------------------------------------------------
'* Module : Setup
'*-------------------------------------------------------------------------
'* File : PCKWIN.MST
'*-------------------------------------------------------------------------
'* Datum : 21/04/93
'*-------------------------------------------------------------------------
'* von : (C) 1993 KHK Software Klaus Klinger
'*-------------------------------------------------------------------------
'* Aufgabe : Installationsscript fⁿr den PC-Kaufmann
'*-------------------------------------------------------------------------
'* History : 21/04/93 Erstellt Klaus Klinger
'**************************************************************************
'* INCLUDES ---------------------------------------------------------------
'$INCLUDE 'setupapi.inc'
'$INCLUDE 'msdetect.inc'
'$INCLUDE 'khksetup.inc'
'* DEFINES ----------------------------------------------------------------
CONST KHKDRIVE1 = "Windows Laufwerk ('"
CONST KHKDRIVE2 = "') ist ungⁿltig."
CONST TRUE = 1
CONST FALSE = 0
CONST ABORT = -1
CONST HDMEMORY = -2
CONST ABORTALL = -3
CONST BASEDIR = "\DATA"
CONST DEMODATEN = "\1"
CONST STAMM = "\STAMM"
CONST QUESTION = MB_YESNOCANCEL+MB_TASKMODAL+MB_QUESTION
CONST OKMSG = MB_OK+MB_TASKMODAL+MB_ICONHAND
'* GLOBALS ----------------------------------------------------------------
GLOBAL szExecDir$
GLOBAL szDataDir$
GLOBAL szTempDir$
GLOBAL szWindDir$
GLOBAL szCountry$
GLOBAL szOldExecDir$
GLOBAL szOldDataDir$
GLOBAL szAppExec$
GLOBAL UseOption$ ''
GLOBAL szMsg$
GLOBAL nVersion%
GLOBAL nUpdate%
GLOBAL nUser%
GLOBAL nAppType%
GLOBAL bStation%
GLOBAL bAddOn%
GLOBAL bCrossUpdate%
GLOBAL szDllSer$
GLOBAL bKonvert%
GLOBAL bRenForm%
'* DECLARES ---------------------------------------------------------------
'*
'* Interne Deklarationen *****************************************************
'*
DECLARE SUB WriteSystemInfo
DECLARE FUNCTION Install AS INTEGER
DECLARE FUNCTION GetCompany(szUserName$,szCompany$,szSerial$) AS INTEGER
DECLARE FUNCTION TestPath (szDir$) AS INTEGER
DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
DECLARE FUNCTION GetProfileName (nType%) AS INTEGER
'*
'* Externe Deklarationen *****************************************************
'*
DECLARE FUNCTION GetFreeSpace LIB "kernel" (Dummy%) AS LONG
DECLARE FUNCTION ShowWindow LIB "user" (hWnd%,nType%) AS INTEGER
INIT:
nVersion%=0
bStation%=FALSE
bAddOn%=FALSE
bCrossUpdate%=FALSE
bKonvert%=FALSE
bRenForm%=FALSE
szDLLSer$=STRING$(32,32)
nAppType%=GetInstallState(VARPTR(nUpdate%),VARPTR(nUser%),szDLLSer$)
IF nUpdate% = VER_UPDATE THEN
szMsg$ = KHKUPDATEHDR
SetTitle "Installation des KHK-Updates"
ELSE
szStr$=STRING$(80,32)
bOk%=GetInstallFlags(OPT_TITLE,VTYPE_STR,szStr$)
SetTitle szStr$
SetBitmap RESDLL$,LOGOBITMAP+nUpdate%
END IF
SetAbout "KHK Setup","Version 1.1"
hWnd% = HwndFrame()
bOk% = ShowWindow(hWnd%,3)
'*
'* Test, ob vorhandener Speicher ausreichend ist *********************
'*
Memory&=GetFreeSpace(0)
IF Memory& < MINMEMORY& THEN
sz$ = UIStartDlg(CUIDLL$,IDD_OUTOFMEMORY,"InfoDlgProc",0,"")
UIPop 1
IF nUpdate% = VER_UPDATE THEN
ERR = IDD_EXITFAILURE_UPDATE
ELSE
ERR = IDD_EXITFAILURE
END IF
GOTO QUIT
END IF
'*
'* Verzeichnisse vorbelegen ******************************************
'*
szWindDir$ = GetWindowsDir
szTempDir$ = GetWindowsDir
szInfoFile$ = GetSymbolValue("STF_SRCINFPATH")
IF szInfoFile$ = "" THEN
szInfoFile$ = GetSymbolValue("STF_CWDDIR") + STDINFFILE
END IF
ReadInfFile szInfoFile$
szExecDir$ = STRING$(128,32)
szDataDir$ = STRING$(128,32)
szTempDir$ = STRING$(128,32)
KHKIniFile$ = MakePath(szWindDir$,"WIN.INI")
szCountry$ = GetIniKeyString(KHKIniFile$,"intl","iCountry")
'*
'* Alte Pfade ermitteln ...
'*
bOk%=GetProfileName(-1)
IF bOk% = FALSE THEN
bOk%=GetProfileName(nAppType%)
IF bOk% = FALSE THEN
bOk%=GetProfileName(APP_PCKWIN)
IF bOk% = FALSE THEN
bOk%=GetProfileName(APP_PROFIBU)
IF bOk% = FALSE THEN
bOk%=GetProfileName(APP_PROABF)
IF bOk% = FALSE THEN
'* bOk% = GetDefaultPath(szExecDir$,szDataDir$,szTempDir$)
IF nAppType% = APP_PCKWIN THEN
szExecDir$="C:\PCKWIN"
ELSEIF nAppType% = APP_PROFIBU THEN
szExecDir$="C:\PROFIBU"
ELSEIF nAppType% = APP_PROABF THEN
szExecDir$="C:\PROABF"
END IF
szDataDir$=szExecDir$+"\DATA"
bStation%=TRUE
END IF
END IF
END IF
END IF
END IF
'*
'* Installationsverzeichnis abfragen *********************************
'*
IF LEN(szExecDir$)=0 THEN
bStation%=TRUE
IF nAppType% = APP_PCKWIN THEN
szExecDir$="C:\PCKWIN"
ELSEIF nAppType% = APP_PROFIBU THEN
szExecDir$="C:\PROFIBU"
ELSEIF nAppType% = APP_PROABF THEN
szExecDir$="C:\PROABF"
END IF
szDataDir$=szExecDir$+"\DATA"
END IF
IF nAppType% = APP_NONE THEN
bAddOn%=TRUE
nAppType%=GetAppType(szExecDir$,VARPTR(nVersion%))
IF nAppType%=APP_NONE THEN
i% = DoMsgBox("Es wurde keine KHK-Anwendung gefunden!",szMsg$,OKMSG)
GOTO QUITALL
END IF
END IF
szOldExecDir$=szExecDir$
szOldDataDir$=szDataDir$
GETPATH:
SetSymbolValue "ExecDirInp",szExecDir$
SetSymbolValue "DataDirInp",szDataDir$
SetSymbolValue "CountryInp",szCountry$
SetSymbolValue "EditFocus","END"
GETPATHL1:
IF nUser% <> 1 THEN
nDlg%=IDD_GETPATH_UPDATE
ELSE
nDlg%=IDD_GETPATH
END IF
sz$ = UIStartDlg(CUIDLL$,nDlg%,"PathDlgProc",0,"")
szExecDir$ = GetSymbolValue("ExecDirOut")
szExecDir$ = UCASE$(szExecDir$)
szDataDir$ = GetSymbolValue("DataDirOut")
szDataDir$ = UCASE$(szDataDir$)
szCountry$ = GetSymbolValue("CountryOut")
SetSymbolValue "CountryInp",szCountry$
IF bStation% = TRUE THEN
szOldExecDir$=szExecDir$
szOldDataDir$=szDataDir$
END IF
IF sz$ = "CONTINUE" THEN
bOk% = TestPath(szExecDir$)
IF bOk% = TRUE THEN
UIPop 1
ELSE
GOTO GETPATHL1
END IF
bOk% = TestPath(szDataDir$)
IF bOk% = FALSE THEN
GOTO GETPATHL1
END IF
IF nUpdate = VER_UPDATE THEN
nApp%=GetAppType(szOldExecDir$,VARPTR(nVersion%))
IF nAppType% = APP_PCKWIN AND nApp% <> nAppType% THEN
bCrossUpdate%=TRUE
'* ELSEIF nAppType% <> nApp% THEN
'* i%=DoMsgBox("Im Programmverzeichnis wurde kein"+CHR$(13)+"KHK Programm zum updaten gefunden!",szMsg$,OKMSG)
'* GOTO GETPATHL1
END IF
END IF
ELSE
GOSUB ASKQUIT
GOTO GETPATH
END IF
'*
'* Installationsart abfragen *****************************************
'*
INSTALLTYPE:
UseOption$ = "UseOption"
IF nUpdate% = VER_UPDATE OR bAddOn% = TRUE THEN
sz$ = "STANDARD"
ELSE
sz$ = UIStartDlg(CUIDLL$,IDD_INSTALLTYPE,"InstallDlgProc",0,"")
UIPop 1
END IF
IF sz$ = "STANDARD" THEN
IF nUpdate% = VER_UPDATE OR bAddOn% = TRUE THEN
bOk%=GetAppType(szExecDir$,VARPTR(nVersion%))
bKonvert%=FALSE
bOk%=GetOptionList(szCountry$,0,TRUE)
bOk%=GetOptionList(szCountry$,1,FALSE)
IF nVersion% < 103 THEN
sz1$ = UIStartDlg(CUIDLL$,IDD_INSTFRF,"KonvertDlgProc",0,"")
UIPop 1
bOk%=GetOptionList(szCountry$,80,FALSE)
bRenForm%=TRUE
ELSEIF nVersion% >= 103 THEN
'*
bLoop%=TRUE
WHILE bLoop%
sz1$ = UIStartDlg(CUIDLL$,IDD_COPYFRF,"KonvertDlgProc",0,"")
bLoop%=FALSE
IF sz1$="NEWFRF" THEN
bRenForm%=TRUE
bOk%=GetOptionList(szCountry$,80,FALSE)
ELSEIF sz1$="OLDFRF" THEN
bOk%=GetOptionList(szCountry$,85,FALSE)
ELSEIF sz1$="FRTCVT" THEN
bOk%=GetOptionList(szCountry$,85,FALSE)
bKonvert%=TRUE
ELSE
bLoop%=TRUE
END IF
WEND
UIPo