home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / SELDEL.ZIP / SELDEL.CMD
OS/2 REXX Batch file  |  1993-01-12  |  11KB  |  412 lines

  1. /* SELECTIVE DELETE OF OS/2 APPLETS */
  2. /* Jeff Elkins - 10/92  */
  3. /* Public domain selective delete */
  4.  
  5.  
  6.  
  7. CALL RxFuncAdd 'SysFileDelete', 'RexxUtil', 'SysFileDelete'
  8. call RxFuncAdd 'VInit', 'VREXX', 'VINIT'
  9.  
  10.  
  11. initcode = VInit()
  12. if initcode = 'ERROR' then signal CLEANUP
  13.  
  14. signal on failure name CLEANUP
  15. signal on halt name CLEANUP
  16. signal on syntax name CLEANUP
  17.  
  18. dloop  = 1
  19.  
  20. errmsg.1 = 'File not found'
  21. errmsg.2 = 'Path not found'
  22. errmsg.3 = 'Access denied'
  23. errmsg.4 = 'Not DOS disk'
  24. errmsg.5 = 'Sharing violation'
  25. errmsg.6 = 'Sharing buffer exceeded'
  26. errmsg.7 = 'Invalid parameter'
  27. errmsg.8 = 'Filename exceedes range error'
  28.  
  29. errnum.1 = 2
  30. errnum.2 = 3
  31. errnum.3 = 5
  32. errnum.4 = 26
  33. errnum.5 = 32
  34. errnum.6 = 36
  35. errnum.7 = 87
  36. errnum.8 = 206
  37.  
  38.  
  39.  
  40.  
  41. error_st = ' '
  42.  
  43.  
  44. list.0  = 28
  45. list.1  = 'Terminal emulation applet'
  46. list.2  = 'Enhanced PM editor'
  47. list.3  = 'System Editor'
  48. list.4  = 'PMChart applet'
  49. list.5  = 'Jigsaw Applet (Puzzle)'
  50. list.6  = 'Solitaire applet'
  51. list.7  = 'Cat and Mouse applet'
  52. list.8  = 'Chess applet'
  53. list.9  = 'Picture viewer'
  54. list.10 = 'Pulse CPU graph'
  55. list.11 = 'PM Seek'
  56. list.12 = 'Reversi'
  57. list.13 = 'Scramble applet'
  58. list.14 = 'PM alarms'
  59. list.15 = 'PM calculator'
  60. list.16 = 'PM calender'
  61. list.17 = 'PM planner archive'
  62. list.18 = 'PM Diary'
  63. list.19 = 'PM to-do archive'
  64. list.20 = 'PM to-do list'
  65. list.21 = 'PM tune editor'
  66. list.22 = 'PM activities list'
  67. list.23 = 'PM monthly planner'
  68. list.24 = 'PM cardfile'
  69. list.25 = 'PM database'
  70. list.26 = 'PM spreadsheet'
  71. list.27 = 'PM sticky notes'
  72. list.28 = 'ALL PM Diary applets'
  73.  
  74.  
  75. list.vstring = list.1          /* default selection */
  76.  
  77. DO WHILE dloop = 1
  78. call VDialogPos 25, 25
  79. rb =  VListBox('Selective delete of OS/2 applets', list, 35, 8, 3)
  80. IF rb = 'CANCEL' then
  81.  dloop = 0
  82.  ELSE
  83.  DO
  84.   call DISP_WIN
  85.  
  86.   IF list.vstring = list.1  then call KILLTERM
  87.   IF list.vstring = list.2  then call ENHANCED
  88.   IF list.vstring = list.3  then call SYSED
  89.   IF list.vstring = list.4  then call KILLCHRT
  90.   IF list.vstring = list.5  then call JIGSAW
  91.   IF list.vstring = list.6  then call KLONDIKE
  92.   IF list.vstring = list.7  then call NEKO
  93.   IF list.vstring = list.8  then call CHESS
  94.   IF list.vstring = list.9  then call PICVIEW
  95.   IF list.vstring = list.10 then call PULSE
  96.   IF list.vstring = list.11 then call PMSEEK
  97.   IF list.vstring = list.12 then call REVERSI
  98.   IF list.vstring = list.13 then call SCRAMBLE
  99.   IF list.vstring = list.14 then call PMDALARMS
  100.   IF list.vstring = list.15 then call PMDCALC
  101.   IF list.vstring = list.16 then call PMDCALEND
  102.   IF list.vstring = list.17 then call PMPARC
  103.   IF list.vstring = list.18 then call PMDIARY
  104.   IF list.vstring = list.19 then call PMTDARC
  105.   IF list.vstring = list.20 then call PMTDLIST
  106.   IF list.vstring = list.21 then call PMTUNE
  107.   IF list.vstring = list.22 then call PMACTLIST
  108.   IF list.vstring = list.23 then call PMMPLAN
  109.   IF list.vstring = list.24 then call PMCARD
  110.   IF list.vstring = list.25 then call PMDATA
  111.   IF list.vstring = list.26 then call PMSPREAD
  112.   IF list.vstring = list.27 then call PMSTICKY
  113.   IF list.vstring = list.28 then call ALLPMD
  114.  
  115.   
  116. IF rc <> 0 then
  117.    DO
  118.      call GETERR
  119.      msg.0 = 3
  120.      msg.1 = ' '
  121.      msg.2 = 'Error deleting ' list.vstring
  122.      msg.3 = 'Error = ' error_st
  123.      call VMsgBox 'File Error', msg, 1
  124.    END
  125.    VCloseWindow(id)
  126.  END
  127. END
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  END
  134.  
  135.  
  136.  
  137. CLEANUP:
  138.    call VExit
  139. exit
  140.  
  141.  
  142.  
  143. DISP_WIN:
  144.  
  145. win.left   = 20
  146. win.right  = 70
  147. win.top    = 80
  148. win.bottom = 40
  149.  
  150. id = VOpenWindow('Selective Delete', 'WHITE', win)
  151.  
  152. text.1 = 'Now deleting:'
  153. text.2 = list.vstring
  154.  
  155. call VForeColor id, 'BLACK'
  156. call VSetFont id, 'TIME', 24
  157.  
  158. x = 10
  159. y = 900
  160. do i = 1 to 2
  161.    call VSay id, x, y, text.i
  162.    y = y - 150
  163. end
  164.  
  165. RETURN
  166.  
  167.  
  168. GETERR:
  169.  IF rc = 2   THEN error_st = errmsg.1
  170.  IF rc = 3   THEN error_st = errmsg.2
  171.  IF rc = 5   THEN error_st = errmsg.3
  172.  IF rc = 26  THEN error_st = errmsg.4
  173.  IF rc = 32  THEN error_st = errmsg.5
  174.  IF rc = 36  THEN error_st = errmsg.6
  175.  IF rc = 87  THEN error_st = errmsg.7
  176.  IF rc = 206 THEN error_st = errmsg.8
  177. RETURN
  178.  
  179.  
  180.  
  181.  
  182.  
  183. KILLTERM:
  184. rc=SysFileDelete('\OS2\HELP\ANSI364.HLP')
  185. rc=SysFileDelete('\OS2\HELP\ANSIIBM.HLP')
  186. rc=SysFileDelete('\OS2\APPS\DLL\CTLSACDI.DLL')
  187. rc=SysFileDelete('\OS2\APPS\CTLSACDI.EXE')
  188. rc=SysFileDelete('\OS2\APPS\CUSTOM.MDB')
  189. rc=SysFileDelete('\OS2\HELP\IBM31011.HLP')
  190. rc=SysFileDelete('\OS2\HELP\IBM31012.HLP')
  191. rc=SysFileDelete('\OS2\HELP\IBMSIO.HLP')
  192. rc=SysFileDelete('\OS2\APPS\DLL\OACDISIO.DLL')
  193. rc=SysFileDelete('\OS2\APPS\DLL\OANSI.DLL')
  194. rc=SysFileDelete('\OS2\APPS\DLL\OANSI364.DLL')
  195. rc=SysFileDelete('\OS2\APPS\DLL\OCHAR.DLL')
  196. rc=SysFileDelete('\OS2\APPS\DLL\OCM.DLL')
  197. rc=SysFileDelete('\OS2\APPS\DLL\OCOLOR.DLL')
  198. rc=SysFileDelete('\OS2\APPS\DLL\OCSHELL.DLL')
  199. rc=SysFileDelete('\OS2\APPS\DLL\ODBM.DLL')
  200. rc=SysFileDelete('\OS2\APPS\DLL\OFMTC.DLL')
  201. rc=SysFileDelete('\OS2\APPS\DLL\OIBM1X.DLL')
  202. rc=SysFileDelete('\OS2\APPS\DLL\OIBM2X.DLL')
  203. rc=SysFileDelete('\OS2\APPS\DLL\OKB.DLL')
  204. rc=SysFileDelete('\OS2\APPS\DLL\OKBC.DLL')
  205. rc=SysFileDelete('\OS2\APPS\DLL\OKERMIT.DLL')
  206. rc=SysFileDelete('\OS2\APPS\DLL\OLPTIO.DLL')
  207. rc=SysFileDelete('\OS2\APPS\DLL\OMCT.DLL')
  208. rc=SysFileDelete('\OS2\APPS\DLL\OMRKCPY.DLL')
  209. rc=SysFileDelete('\OS2\APPS\DLL\OPCF.DLL')
  210. rc=SysFileDelete('\OS2\APPS\DLL\OPM.DLL')
  211. rc=SysFileDelete('\OS2\APPS\DLL\OPROFILE.DLL')
  212. rc=SysFileDelete('\OS2\APPS\DLL\ORSHELL.DLL')
  213. rc=SysFileDelete('\OS2\APPS\DLL\OSCH.DLL')
  214. rc=SysFileDelete('\OS2\APPS\DLL\OSIO.DLL')
  215. rc=SysFileDelete('\OS2\APPS\DLL\OSOFT.DLL')
  216. rc=SysFileDelete('\OS2\APPS\DLL\OTEK.DLL')
  217. rc=SysFileDelete('\OS2\APPS\DLL\OTTY.DLL')
  218. rc=SysFileDelete('\OS2\APPS\DLL\OVIO.DLL')
  219. rc=SysFileDelete('\OS2\APPS\DLL\OVM.DLL')
  220. rc=SysFileDelete('\OS2\APPS\DLL\OVT.DLL')
  221. rc=SysFileDelete('\OS2\APPS\DLL\OXMODEM.DLL')
  222. rc=SysFileDelete('\OS2\APPS\DLL\OXRM.DLL')
  223. rc=SysFileDelete('\OS2\APPS\DLL\SACDI.DLL')
  224. rc=SysFileDelete('\OS2\SYSTEM\SACDI.MSG')
  225. rc=SysFileDelete('\OS2\APPS\DLL\SAREXEC.DLL')
  226. rc=SysFileDelete('\OS2\APPS\SASYNCDA.SYS')
  227. rc=SysFileDelete('\OS2\APPS\SASYNCDB.SYS')
  228. rc=SysFileDelete('\OS2\APPS\SOFTERM.EXE')
  229. rc=SysFileDelete('\OS2\HELP\SOFTERM.HLP')
  230. rc=SysFileDelete('\OS2\HELP\VTTERM.HLP')
  231. rc=SysFileDelete('\OS2\HELP\XRM.HLP')
  232. rc=SysFileDelete('\OS2\APPS\ACSACDI.DAT')
  233. RETURN
  234.  
  235. KILLCHRT:
  236. rc=SysFileDelete('\OS2\APPS\FASHION.DAT')
  237. rc=SysFileDelete('\OS2\APPS\FASHION.GRF')
  238. rc=SysFileDelete('\OS2\APPS\GREEN.DAT')
  239. rc=SysFileDelete('\OS2\APPS\GREEN.GRF')
  240. rc=SysFileDelete('\OS2\APPS\INVEST.DAT')
  241. rc=SysFileDelete('\OS2\APPS\INVEST.GRF')
  242. rc=SysFileDelete('\OS2\APPS\DLL\MGXLIB.DLL')
  243. rc=SysFileDelete('\OS2\APPS\DLL\MGXVBM.DLL')
  244. rc=SysFileDelete('\OS2\APPS\PMCHART.EXE')
  245. rc=SysFileDelete('\OS2\HELP\PMCHART.HLP')
  246. rc=SysFileDelete('\OS2\APPS\DLL\PMFID.DLL')
  247. RETURN
  248.  
  249.  
  250. JIGSAW:
  251.  rc=SysFileDelete('\OS2\APPS\JIGSAW.EXE')
  252.  rc=SysFileDelete('\OS2\HELP\JIGSAW.HLP')
  253. RETURN
  254.  
  255. KLONDIKE:
  256. rc=SysFileDelete('\OS2\APPS\KLONDIKE.EXE')
  257. rc=SysFileDelete('\OS2\HELP\KLONDIKE.HLP')
  258. rc=SysFileDelete('\OS2\APPS\CARDSYM.FON')
  259. RETURN
  260.  
  261. ENHANCED:
  262. rc=SysFileDelete('\OS2\APPS\BOX.EX')
  263. rc=SysFileDelete('\OS2\APPS\DRAW.EX')
  264. rc=SysFileDelete('\OS2\APPS\E3EMUL.EX')
  265. rc=SysFileDelete('\OS2\APPS\EPM.EX')
  266. rc=SysFileDelete('\OS2\APPS\EPM.EXE')
  267. rc=SysFileDelete('\OS2\HELP\EPM.HLP')
  268. rc=SysFileDelete('\OS2\APPS\EPMHELP.QHL')
  269. rc=SysFileDelete('\OS2\APPS\EPMLEX.EX')
  270. rc=SysFileDelete('\OS2\APPS\DLL\ETKE550.DLL')
  271. rc=SysFileDelete('\OS2\APPS\DLL\ETKR550.DLL')
  272. rc=SysFileDelete('\OS2\APPS\DLL\ETKTHNK.DLL')
  273. rc=SysFileDelete('\OS2\APPS\EXTRA.EX')
  274. rc=SysFileDelete('\OS2\APPS\GET.EX')
  275. rc=SysFileDelete('\OS2\APPS\HELP.EX')
  276. RETURN
  277.  
  278.  
  279. SYSED:
  280.  rc=SysFileDelete('\OS2\E.EXE')
  281.  rc=SysFileDelete('\OS2\DLL\EHXDLMRI.DLL')
  282.  rc=SysFileDelete('\OS2\HELP\EHXHP.HLP')
  283. RETURN
  284.  
  285. SCRAMBLE:
  286.  rc=SysFileDelete('\OS2\APPS\DLL\SCRAMBLE.DLL')
  287.  rc=SysFileDelete('\OS2\APPS\SCRAMBLE.EXE')
  288.  rc=SysFileDelete('\OS2\HELP\SCRAMBLE.HLP')
  289.  rc=SysFileDelete('\OS2\APPS\DLL\SCRCATS.DLL')
  290.  rc=SysFileDelete('\OS2\APPS\DLL\SCRLOGO.DLL')
  291. RETURN
  292.  
  293. REVERSI:
  294.  rc=SysFileDelete('\OS2\APPS\DLL\REVERSI.DLL')
  295.  rc=SysFileDelete('\OS2\APPS\REVERSI.EXE')
  296.  rc=SysFileDelete('\OS2\HELP\REVERSI.HLP')
  297. RETURN
  298.  
  299. PMSEEK:
  300.  rc=SysFileDelete('\OS2\APPS\DLL\PMSEEK.DLL')
  301.  rc=SysFileDelete('\OS2\APPS\PMSEEK.EXE')
  302.  rc=SysFileDelete('\OS2\HELP\PMSEEK.HLP')
  303. RETURN
  304.  
  305. CHESS:
  306.  rc=SysFileDelete('\OS2\APPS\OS2CHESS.BIN')
  307.  rc=SysFileDelete('\OS2\APPS\OS2CHESS.EXE')
  308.  rc=SysFileDelete('\OS2\HELP\OS2CHESS.HLP')
  309.  rc=SysFileDelete('\OS2\APPS\DLL\CHESSAI.DLL')
  310. RETURN
  311.  
  312. NEKO:
  313.  rc=SysFileDelete('\OS2\APPS\DLL\NEKO.DLL')
  314.  rc=SysFileDelete('\OS2\APPS\NEKO.EXE')
  315.  rc=SysFileDelete('\OS2\HELP\NEKO.HLP')
  316. RETURN
  317.  
  318. PULSE:
  319.  rc=SysFileDelete('\OS2\APPS\PULSE.EXE')
  320.  rc=SysFileDelete('\OS2\HELP\PULSE.HLP')
  321. RETURN
  322.  
  323. PICVIEW:
  324.  rc=SysFileDelete('\OS2\DLL\PICV.DLL')
  325.  rc=SysFileDelete('\OS2\APPS\DLL\PICVIEW.DLL')
  326.  rc=SysFileDelete('\OS2\APPS\PICVIEW.EXE')
  327.  rc=SysFileDelete('\OS2\HELP\PICVIEW.HLP')
  328. RETURN
  329.  
  330. PMDALARMS:
  331.  rc=SysFileDelete('\OS2\APPS\PMDALARM.EXE')
  332. RETURN
  333.  
  334. PMDCALC:
  335.  rc=SysFileDelete('\OS2\APPS\PMDCALC.EXE')
  336. RETURN
  337.  
  338. PMDCALEND:
  339.  rc=SysFileDelete('\OS2\APPS\PMDCALEN.EXE')
  340. RETURN
  341.  
  342. PMPARC:
  343.  rc=SysFileDelete('\OS2\APPS\PMDDARC.EXE')
  344. RETURN
  345.  
  346. PMDIARY:
  347.  rc=SysFileDelete('\OS2\APPS\PMDDIARY.EXE')
  348. RETURN
  349.  
  350. PMTDARC:
  351.  rc=SysFileDelete('\OS2\APPS\PMDTARC.EXE')
  352. RETURN
  353.  
  354. PMTDLIST:
  355.  rc=SysFileDelete('\OS2\APPS\PMDTODO.EXE')
  356. RETURN
  357.  
  358. PMTUNE:
  359.  rc=SysFileDelete('\OS2\APPS\PMDTUNE.EXE')
  360. RETURN
  361.  
  362. PMACTLIST:
  363.  rc=SysFileDelete('\OS2\APPS\PMDLIST.EXE')
  364. RETURN
  365.  
  366. PMMPLAN:
  367.  rc=SysFileDelete('\OS2\APPS\PMDMONTH.EXE')
  368. RETURN
  369.  
  370. PMCARD:
  371.  rc=SysFileDelete('\OS2\APPS\PMDNOTE.EXE')
  372. RETURN
  373.  
  374. PMDATA:
  375. rc=SysFileDelete('\OS2\APPS\PMMBASE.EXE')
  376. RETURN
  377.  
  378. PMSPREAD:
  379.  rc=SysFileDelete('\OS2\APPS\PMSPREAD.EXE')
  380. RETURN
  381.  
  382. PMSTICKY:
  383.  rc=SysFileDelete('\OS2\APPS\PMSTICKY.EXE')
  384.  rc=SysFileDelete('\OS2\APPS\DLL\PMSTICKD.DLL')
  385. RETURN
  386.  
  387.  
  388. ALLPMD:
  389.  rc=SysFileDelete('\OS2\APPS\PMDALARM.EXE')
  390.  rc=SysFileDelete('\OS2\APPS\PMDCALC.EXE')
  391.  rc=SysFileDelete('\OS2\APPS\PMDCALEN.EXE')
  392.  rc=SysFileDelete('\OS2\APPS\PMDDARC.EXE')
  393.  rc=SysFileDelete('\OS2\APPS\PMDDIARY.EXE')
  394.  rc=SysFileDelete('\OS2\APPS\PMDLIST.EXE')
  395.  rc=SysFileDelete('\OS2\APPS\PMDMONTH.EXE')
  396.  rc=SysFileDelete('\OS2\APPS\PMDNOTE.EXE')
  397.  rc=SysFileDelete('\OS2\APPS\PMDTARC.EXE')
  398.  rc=SysFileDelete('\OS2\APPS\PMDTODO.EXE')
  399.  rc=SysFileDelete('\OS2\APPS\PMDTUNE.EXE')
  400.  rc=SysFileDelete('\OS2\APPS\PMMBASE.EXE')
  401.  rc=SysFileDelete('\OS2\APPS\PMSPREAD.EXE')
  402.  rc=SysFileDelete('\OS2\APPS\PMSTICKY.EXE')
  403.  rc=SysFileDelete('\OS2\APPS\DLL\PMSTICKD.DLL')
  404.  rc=SysFileDelete('\OS2\APPS\DLL\PMDIARYF.DLL')
  405.  rc=SysFileDelete('\OS2\APPS\PMDIARY.$$A')
  406.  rc=SysFileDelete('\OS2\APPS\DLL\PMDIARY.DLL')
  407.  rc=SysFileDelete('\OS2\HELP\PMDIARY.HLP')
  408.  rc=SysFileDelete('\OS2\APPS\DLL\PMDCTLS.DLL')
  409. RETURN
  410.  
  411.  
  412.