home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 11 Util / 11-Util.zip / inied090.zip / INInst.cmd < prev    next >
OS/2 REXX Batch file  |  1999-02-01  |  9KB  |  226 lines

  1. /* INInst - Install / UnInstall for INIedit */
  2.  
  3. PARSE ARG action
  4.  
  5. IF RxFuncQuery('SysLoadFuncs') THEN DO
  6.     CALL RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
  7.     CALL SysLoadFuncs
  8. END
  9. CALL RxFuncAdd  'FastIniStart','FastIni','FastIniStart'
  10. CALL RxFuncAdd  'FastIniEnd','FastIni','FastIniEnd'
  11.  
  12. CALL SysCls
  13.  
  14. SELECT
  15.         WHEN TRANSLATE(STRIP(action)) = 'I' THEN CALL InstallMe
  16.         WHEN TRANSLATE(STRIP(action)) = 'U' THEN CALL UnInstallMe
  17.         OTHERWISE CALL WhatAction
  18. END
  19. Exit /* End of INInst */
  20.  
  21. /* WhatAction - no action selected */
  22.  
  23. WhatAction:     PROCEDURE
  24.  
  25. CALL SysCls
  26. SAY '┌─────────────────────────────────────────────────────────────────────────────┐'
  27. SAY '│No installation parameter specified. Correct parameter is:                   │'
  28. SAY '│     I = Install,     U = UnInstall,      any other key = Exit.              │'
  29. SAY '└─────────────────────────────────────────────────────────────────────────────┘'
  30. SAY ' Please try again with correct parameter '
  31. PARSE PULL action
  32. SELECT
  33.         WHEN TRANSLATE(STRIP(action)) = 'I' THEN CALL InstallMe
  34.         WHEN TRANSLATE(STRIP(action)) = 'U' THEN CALL UnInstallMe
  35.         OTHERWISE CALL NoAction
  36. END
  37. RETURN /* End of WhatAction */
  38.  
  39. /* NoAction - abort Install */
  40.  
  41. NoAction:   PROCEDURE
  42.  
  43. CALL SysCls
  44. SAY '┌─────────────────────────────────────────────────────────────────────────────┐'
  45. SAY '│Error! No installation parameter specified. Leaving INInst.  Press any key...│'
  46. SAY '└─────────────────────────────────────────────────────────────────────────────┘'
  47. PULL answer
  48. CALL SysCls
  49. Exit /* End of NoAction */
  50.  
  51. /* InstallMe - procedura za instalaciju programa INIedit */
  52.  
  53. InstallMe:  PROCEDURE
  54.  
  55. CALL ChkCfg
  56. CALL SysCls
  57.  
  58. SAY '┌─────────────────────────────────────────────────────────────────────────────┐'
  59. SAY '│Welcome to INIedit Installation procedure!                                   │'
  60. SAY '│Your files are in directory: '||LEFT(DIRECTORY(),48)||                      '│'
  61. SAY '│This program will do following:                                              │'
  62. SAY '│     Create Folder and Program Objects for INIedit files on your Desktop,    │'
  63. SAY '│     Associate INIedit with *.INI files,                                     │'
  64. SAY '│     Create custom Configuration file (INIEDIT.INI),                         │'
  65. SAY '│     Add some entries to your OS2.INI file, in Application ToolsByGoran.     │'
  66. SAY '│Note: if INIedit is already installed, this procedure will erase old         │'
  67. SAY '│     entries, and create new (allways use this procedure after moving        │'
  68. SAY '│     INIedit to another drive or directory).                                 │'
  69. SAY '│After Installation is complete, start INIedit, and configure it as you wish. │'
  70. SAY '└─────────────────────────────────────────────────────────────────────────────┘'
  71. SAY ' Press "Y" (and Enter) to start Installation, any other key to exit '
  72. PARSE PULL answer
  73. IF TRANSLATE(STRIP(answer)) <> "Y" THEN DO
  74.         CALL NoAction
  75. END
  76.  
  77. SAY ' Writing entries in OS2.INI'
  78. CALL SysIni 'USER','ToolsByGoran','INIeditWorkDir',DIRECTORY()
  79. CALL SysIni 'USER','ToolsByGoran','INIeditINIfile',DIRECTORY()||'\INIEDIT.INI'
  80. CALL SysIni 'USER','ToolsByGoran','INIeditVersion','0.90'
  81. myinifileRC = FastIniStart('INIEDIT.INI','mylangfileHandle')
  82. SAY ' Writing INIEDIT.INI'
  83. /* Application: Language */
  84. CALL SysIni 'INIEDIT.INI','Language','CROATIAN','1'
  85. CALL SysIni 'INIEDIT.INI','Language','ENGLISH','1'
  86. CALL SysIni 'INIEDIT.INI','Language','FRENCH','1'
  87. CALL SysIni 'INIEDIT.INI','Language','GERMAN','1'
  88. CALL SysIni 'INIEDIT.INI','Language','ITALIAN','1'
  89. CALL SysIni 'INIEDIT.INI','Language','SPANISH','1'
  90. /* Application: ProportionalFont */
  91. CALL SysIni 'INIEDIT.INI','ProportionalFont','9.WarpSans','1'
  92. CALL SysIni 'INIEDIT.INI','ProportionalFont','10.Helvetica','1'
  93. CALL SysIni 'INIEDIT.INI','ProportionalFont','10.System Proportional','1'
  94. /* Application: MonospacedFont */
  95. CALL SysIni 'INIEDIT.INI','MonospacedFont','10.System VIO','1'
  96. CALL SysIni 'INIEDIT.INI','MonospacedFont','10.Courier','1'
  97. CALL SysIni 'INIEDIT.INI','MonospacedFont','10.System Monospaced','1'
  98. /* Application: General */
  99. CALL SysIni 'INIEDIT.INI','General','Workdir',DIRECTORY()
  100. CALL SysIni 'INIEDIT.INI','General','CurrLang','ENGLISH'
  101. CALL SysIni 'INIEDIT.INI','General','SafeMode','YES'
  102. CALL SysIni 'INIEDIT.INI','General','ShowAll','NO'
  103. CALL SysIni 'INIEDIT.INI','General','FastHex','NO'
  104. CALL SysIni 'INIEDIT.INI','General','FileList','YES'
  105. CALL SysIni 'INIEDIT.INI','General','Position','100 60 500 456'
  106. CALL SysIni 'INIEDIT.INI','General','PosComp','150 50 483 488'
  107. CALL SysIni 'INIEDIT.INI','General','PosFind','150 130 501 345'
  108. CALL SysIni 'INIEDIT.INI','General','Misc','2'||DATE('B')||'110'
  109. CALL SysIni 'INIEDIT.INI','General','ProportionalFont','9.WarpSans'
  110. CALL SysIni 'INIEDIT.INI','General','MonospacedFont','10.System VIO'
  111. CALL FastIniEnd myinifileHandle
  112. SAY 'INIEDIT.INI created!'
  113. SAY ' '
  114. CALL SysDestroyObject '<INITOOLS090FOLDER>'
  115. FolderTitle = 'INI Tools'||'0D0A'x||'Version 0.90'
  116. ProgTitle = 'INI editor'
  117. CompTitle = 'INI compare'
  118. FindTitle = 'INI find'
  119. InsTitle = 'Install/ReInstall/UnInstall'
  120. EXE1 = 'INIedit.exe'
  121. EXE2 = 'INIcomp.exe'
  122. EXE3 = 'INIfind.exe'
  123. CMD1 = 'INInst.cmd'
  124. InstallDir = DIRECTORY()
  125. WorkDir = DIRECTORY()
  126. Assoc = '*.INI'
  127. Setup1 = 'EXENAME='InstallDir'\'EXE1';ASSOCFILTER='Assoc';STARTUPDIR='WorkDir''
  128. Setup2 = 'EXENAME='InstallDir'\'EXE2';STARTUPDIR='WorkDir''
  129. Setup3 = 'EXENAME='InstallDir'\'EXE3';STARTUPDIR='WorkDir''
  130. Setup5 = 'EXENAME='InstallDir'\'CMD1';STARTUPDIR='WorkDir''
  131. Action = Replace
  132. SAY 'Creating Folder - INIedit'
  133. CALL  SysCreateObject 'WPFolder',FolderTitle,'<WP_DESKTOP>','OBJECTID=<INITOOLS090FOLDER>'
  134. SAY 'Creating Program object - INIedit'
  135. CALL SysCreateObject 'WPProgram',ProgTitle,'<INITOOLS090FOLDER>',Setup1,Action
  136. SAY 'Creating Program object - INIcomp'
  137. CALL SysCreateObject 'WPProgram',CompTitle,'<INITOOLS090FOLDER>',Setup2,Action
  138. SAY 'Creating Program object - INIfind'
  139. CALL SysCreateObject 'WPProgram',FindTitle,'<INITOOLS090FOLDER>',Setup3,Action
  140. SAY 'Creating Program object - Install'
  141. CALL SysCreateObject 'WPProgram',InsTitle,'<INITOOLS090FOLDER>',Setup5,Action
  142. SAY 'Creating WPS object - documentation'
  143. CALL SysCreateShadow Workdir||'\INIedit.htm','<INITOOLS090FOLDER>'
  144. SAY ' WPS object (Folder and Program objects) created! Press any key to exit...'
  145. PULL answer
  146. CALL SysCls
  147. RETURN /* End of InstallMe */
  148.  
  149. /* UnInstallMe - uninstall INIedit */
  150.  
  151. UnInstallMe: PROCEDURE
  152.  
  153. CALL SysCls
  154. SAY '┌─────────────────────────────────────────────────────────────────────────────┐'
  155. SAY '│This is INIedit UnInstallation procedure!                                    │'
  156. SAY '│Your files are in directory: '||LEFT(DIRECTORY(),48)||                      '│'
  157. SAY '│This program will do following:                                              │'
  158. SAY '│     Destroy Folder and Program Objects for INIedit files on your Desktop,   │'
  159. SAY '│     Remove entries in your OS2.INI file, in Application ToolsByGoran.       │'
  160. SAY '│Note: if you want to ReInstall INIedit, start (INInst I) again.              │'
  161. SAY '└─────────────────────────────────────────────────────────────────────────────┘'
  162. SAY ' Press "Y" (and Enter) to start UnInstall, any other key to exit '
  163. PULL answer
  164. IF answer <> "Y" THEN DO
  165.         CALL NoAction
  166. END
  167. SAY ' Destroying INIedit Folder'
  168. CALL SysDestroyObject '<INITOOLS090FOLDER>'
  169. SAY ' Removing entries from OS2.INI'
  170. CALL SysIni 'USER','ToolsByGoran','INIeditWorkDir','DELETE:'
  171. CALL SysIni 'USER','ToolsByGoran','INIeditINIfile','DELETE:'
  172. CALL SysIni 'USER','ToolsByGoran','INIeditVersion','DELETE:'
  173. SAY ' '
  174. SAY ' UnInstallation complete.'
  175. SAY ' You can delete files in directory: '||DIRECTORY()
  176. SAY ' If you want to ReInstall INIedit, start INInst I.Press any key to exit...'
  177. PULL answer
  178. RETURN /* End of UnInstallMe */
  179.  
  180. /* ChkCfg - check configuration */
  181.  
  182. ChkCfg:     PROCEDURE
  183.  
  184. CALL SysCls
  185. SAY 'Please wait. Checking configuration...'
  186. SAY ' '
  187. myver = SysOS2Ver()
  188. IF myver = "2.30" THEN DO
  189.     myver = "OS/2 Warp - Version 3"
  190.     SAY 'OS Version is: '||myver||'     '||'OK'
  191.     SAY ' '
  192.     SAY 'Checking default font ...'
  193.     defFont = SysIni('USER','PM_SystemFonts','DefaultFont')
  194.     IF defFont = "9.WarpSans"||"00"x THEN DO
  195.         SAY 'Default font is: '||defFont||'             '||'OK'
  196.         SAY ' '
  197.         SAY 'Your configuration is OK.'
  198.         SAY ' '
  199.     END
  200.     IF defFont <> "9.WarpSans"||"00"x THEN DO
  201.         SAY ' '
  202.         SAY 'Default font is: '||defFont
  203.         SAY ' '
  204.         SAY '    Alert! Warp 3 user.'
  205.         SAY '    We have problem here. >> Default font for INIedit is be 9.WarpSans.'
  206.         SAY '    Set your default font to 9.WarpSans or Helvetica if you do not have'
  207.         SAY '    WarpSans installed on your machine.'
  208.         SAY '    Read Warp3 section ini INIedit.htm file for more information.'
  209.         SAY ' '
  210.         BEEP(500,250)
  211.     END
  212. END
  213. IF myver = "2.40" THEN DO
  214.     myver = 'OS/2 Warp - Version 4'
  215.     SAY 'Operating System Version is: '||myver||'     '||'OK'
  216.     SAY ' '
  217.     SAY 'Your configuration is OK.'
  218.     SAY ' '
  219. END
  220. SAY 'Press any key to continue...'
  221. PULL answer
  222. CALL SysCls
  223.  
  224. RETURN /* End of ChkCfg */
  225.  
  226.