home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 11 Util
/
11-Util.zip
/
belongs2.zip
/
B2Remove.Cmd
< prev
next >
Wrap
OS/2 REXX Batch file
|
1995-08-26
|
6KB
|
168 lines
/***************************************************************************/
/* B2REMOVE.CMD */
/* */
/* Removes the "Belongs2" program, directory, and folder. */
/* */
/* Revisions: */
/* 08/26/95 1.1 - Added "SysIni" to remove INI file entries. */
/* 12/20/93 1.0 - Created. */
/***************************************************************************/
targetdir = 'Belongs 2'
FATdir = 'BELONGS2'
/* Load REXX Utility Functions */
if AddRexxUtil( 'SysDestroyObject' ) then signal ERROR
if AddRexxUtil( 'SysSetObjectData' ) then signal ERROR
if AddRexxUtil( 'SysIni' ) then signal ERROR
/* Get arguments */
parse upper arg targetdrive extra
/* Verify target drive argument */
do forever
if LENGTH( targetdrive ) > 2 then
say 'Too many characters - enter a drive letter'
else if LENGTH( targetdrive ) > 0 then do
if DATATYPE( SUBSTR( targetdrive, 1, 1 ), 'Mixed case' ) = 0 then
say 'First character must be a drive letter'
else do
if LENGTH( targetdrive ) = 1 then do
targetdrive = targetdrive':'
leave
end /* Do */
else do
if SUBSTR( targetdrive, 2, 1 ) = ':' then
leave
else do
say 'Second character must be : or omitted'
end /* Do */
end /* Do */
end /* Do */
end /* Do */
say 'Enter drive where program executable was installed:'
pull targetdrive
end /* do */
/* Suppress command display */
'@echo off'
/* See if directory exists */
curdir = directory()
newdir = targetdrive'\'targetdir
if directory( newdir ) = newdir then do
/* Change to the root directory so directory can be deleted */
newdir = targetdrive'\'
call directory newdir
/* Change back to original directory */
call directory curdir
/* Delete all programs in directory */
'del "'targetdrive'\'targetdir'\*.exe"'
if rc = 0 then
say 'All programs in "'targetdrive'\'targetdir'" directory have been deleted'
else
say 'No programs in "'targetdrive'\'targetdir'" directory'
/* Delete directory */
'rd "'targetdrive'\'targetdir'"'
if rc = 0 then
say 'Directory "'targetdrive'\'targetdir'" deleted'
else do
say 'Unable to delete directory "'targetdrive'\'targetdir'"'
signal ERROR
end /* Do */
end /* Do */
else do
/* Try FAT file system */
targetdir = FATdir
newdir = targetdrive'\'targetdir
if directory( newdir ) = newdir then do
/* Change to the root directory so directory can be deleted */
newdir = targetdrive'\'
call directory newdir
/* Change back to original directory */
call directory curdir
/* Delete all programs in directory */
'del "'targetdrive'\'targetdir'\*.exe"'
if rc = 0 then
say 'All programs in "'targetdrive'\'targetdir'" directory have been deleted'
else
say 'No programs in "'targetdrive'\'targetdir'" directory'
/* Delete directory */
'rd "'targetdrive'\'targetdir'"'
if rc = 0 then
say 'Directory "'targetdrive'\'targetdir'" deleted'
else do
say 'Unable to delete directory "'targetdrive'\'targetdir'"'
signal ERROR
end /* Do */
end /* Do */
else
say 'Directory does not exist on' targetdrive
end /* Do */
/* Make the program object deletable */
setup = 'NODELETE=NO;'
result = SysSetObjectData( '<BELONGS2_PROGRAM>', setup );
/* Delete the program object */
result = SysDestroyObject( '<BELONGS2_PROGRAM>' )
/* Make sure object no longer exists */
if SysSetObjectData( '<BELONGS2_PROGRAM>', setup ) = 1 /* updated */ then do
say 'Unable to delete program object'
signal ERROR
end /* Do */
else do
/* Display what happened with SysDestroyObject */
if result = 1 /* deleted */ then
say 'Program object deleted'
else
say 'Program object does not exist'
end /* Do */
/* Delete hidden Startup folder */
result = SysDestroyObject( '<HIDDEN_STARTUP>' )
/* Make sure folder no longer exists */
setup = 'OBJECTID=<HIDDEN_STARTUP>;'
if SysSetObjectData( '<HIDDEN_STARTUP>', setup ) = 1 /* updated */ then do
say 'Unable to delete hidden Startup folder'
signal ERROR
end /* Do */
else do
/* Display what happened with SysDestroyObject */
if result = 1 /* deleted */ then
say 'Hidden startup folder deleted'
else
say 'Hidden Startup folder does not exist'
end /* Do */
/* Delete any INI file entries */
call SysIni 'USER', 'Belongs2', 'DELETE:'
ERROR:
exit
/* AddRexxUtil procedure */
AddRexxUtil: procedure
parse arg name
if RxFuncQuery( name ) \= 0 /* not registered */ then do
if RxFuncAdd( name, 'RexxUtil', name ) \= 0 /* not successful */ then do
say 'Unable to register REXX Utility Function' name
return 1 /* failure */
end /* Do */
end /* Do */
return 0 /* success */