home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
BBS_UTIL
/
FILMG041.ZIP
/
FILEMGR.DOC
< prev
next >
Wrap
Text File
|
1994-03-06
|
13KB
|
303 lines
06 March 1994
File Manager for GT Power. Copyright 1993-1994, Paul Varner
All Rights Reserved
History behind File Manager:
File Manager is being written to fill the void that GT Power has in
the area of managing files. After trying just about every FILES.BBS
program that I could find and having them either not work properly or
have quirks that I didn't like, I decided to write my own. I have
decided to release File Manager into Beta testing through the GT
community early in its life, so that I can get feedback on what GT
Sysops would like to see in it.
How to run File Manager:
First since this is a Beta version, BACK UP your current FILES.BBS.
When run, File Manager will create a copy of the current FILES.BBS and
name it FILES.BAK, but please do not count on that as your backup.
While File Manager runs fine on my system, I cannot and will not be
responsible for any damage that this program may cause to your system.
Since, File Manager does not have the File Management functions
implemented (yet). It is very command line driven. The syntax for
running File Manager is:
filemgr [##] [/A | /AU] [/D] [/1] [/F] [/R] [/I] [/CD] [/NI] [/?]
[/Md:\path] [d:\path]
What these options do:
## - What column to start the descriptions in. File Manager defaults
to column 23. The allowable values are between 2 - 40. If you
specify, an invalid column number, File Manager will quietly
reset it to 23.
/A - Process all the directories listed in your GTDIR.BBS file. This
option must not be run with the /AU option.
/AU - Process all the directories listed in your GTUDIR.BBS file.
This option must not be run with the /A option.
/D - Do not reformat the description read in from either the
FILE_ID.DIZ or DESC.SDI files. This will preserve any special
formatting present in the FILE_ID.DIZ file. The Default for
File Manager is to reformat the descriptions read in from the
FILE_ID.DIZ file.
/1 - Assume that the FILES.BBS only has one line descriptions. With
this option, File Manager will not bother reading the
FILE_ID.DIZ file and will simply sort the directory and write
the new FILES.BBS and FILES.CBS out with a header. Do not use
this option on a FILES.BBS that has multiple line descriptions.
The results are very erratic.
/F - Assume that the first line in the description only contains a
File Name followed by a description of some sort. The default
is to assume that the first line has a format of File Name
followed by the File Size and then the description. Examples of
both are:
SOMEFILE.ZIP This is a a very important test file.
SOMEFILE.ZIP 1234 01-01-80 from: New User
In the first case, all File Manger looks for is the name of the
file. In the second case, it looks for the name and file size.
File Manager does not care what is after the File Name or File
Size respectively. It can be Dates, who from, the start of a
description, or whatever.
/R - Reformat all descriptions, both new and old. This is helpful, if
you decide to change from starting the description in one column
to another. The default is to not reformat old descriptions.
/I - Ignore the files database in the FILES_?.CTL files. This causes
File Manager to assume that all files in the directory are new.
/CD - The directory being processed is om a CD-ROM drive. This tells
File Manager to go to the GTDIR.BBS file to get the name and
path of the description file. The entry in the your GTDIR.BBS
file should look like the following in order for File Manager to
work properly.
z f:\002A,,C:\GT\CDROM\DIR2A.BBS,CD Software Creations
or
z f:\002A,,C:\GT\CDROM\DIR2A.BBS Software Creations
The only caveat is that the description file's file name should
end .BBS and that the description file cannot be on a CD-ROM
drive. This switch is not needed when using the /A or /AU
switches.
/NI - Do not import new files in the directory into the FILES.BBS
file. File Manager defaults to importing new files.
/Md:\path - Move the files listed in the file FILEMGR.MOV to the
directory pointed to by d:\path. The FILEMGR.MOV file is a list
of file names in the directory being processed with one file
name per line. As an example: Assume you are processing your
recent uploads directory and have created the FILEMGR.MOV file
with the list of files that you are moving to your games
directory. The syntax would be:
filemgr /Md:\gt\files\games d:\gt\files\uploads
Finally, note that there is not a space between the 'M' and the
path that the file is being moved to.
d:\path - The drive and path that points to the FILES.BBS file that
you would like processed. File Manager defaults to the current
drive and directory.
/? - Print a short summary of command line options.
The colors for the FILES.CBS file are modifiable. In order to
change the colors, create a text file called "COLORS.DAT". This file
can be placed in any of the following directories: Current Directory
(where File Manager is running from), your GTPATH directory, your
BBS/CBS files directory, your LAN path directory, or any directory in
your PATH statement. The format for this file is as follows: (Note:
Please type the color names only)
lightcyan <-- Color for the double lines.
lightgreen <-- Color for the Directory description.
white <-- Color for the File Manager Title.
lightmagenta <-- Color for the Totals Line.
yellow <-- Color for the File Name.
lightcyan <-- Color for the File Size.
lightgreen <-- Color for the description on the first line.
white <-- Color for the description on the second through last lines
of the description.
The allowable values for the colors are:
BLUE, GREEN, CYAN, RED, MAGENTA, BROWN, LIGHTGRAY, DARKGRAY,
LIGHTBLUE, LIGHTGREEN, LIGHTCYAN, LIGHTRED, LIGHTMAGENTA, YELLOW,
WHITE
Spelling of the colors is important, however case is not.
Finally, File Manager makes extensive use of the file database
created by the FILES_DB program to reduce the run time of the program.
What it does is read the file names of the files listed in the
database and uses that to determine if a description is old or new.
If it finds the name in the database, it does not try to extract a
FILE_ID.DIZ file or reformat the description. If you would like for
File Manager to process an entire directory, you need to use the /I
switch when running File Manager. This effectively tells File Manager
that every file that it reads is new. This is slow, but it ensures
that all the files with a FILE_ID.DIZ have been processed. Also,
because it depends on the database, you should keep the database
updated, by running FILES_DB after running File Manager. File Manager
does not modify the files database files in anyway, it just reads
them.
Planned Additions to File Manager:
* Bulletin Generation for New files uploaded.
* Virus Scanning and Archive Conversion.
* Movement of Files between directories.
* Editing of descriptions.
Movement of files:
I realize that the current method of moving files is a kludge. I am
currently working on an interface to File Manager that will allow you
to "point and shoot" to move files around the different directories.
The only reason for this temporary solution is that I am becoming
tired of moving my files and descriptions around completely by hand.
Technical Information:
For those of you who are interested, File Manager is written in the
Ada language using the Meridian OpenAda compiler. Whenever File
Manager crashes and gives you an exception message it means that I
messed something up in the programming of File Manager. The most
likely exception messages are Constraint Error and Storage Error. A
constraint error is caused whenever the range of a variable is
exceeded. A common cause is trying to stuff a 100 character string
into a variable that I have declared to be an 80 character string.
The storage error occurs when you run out of memory. I am working on
this and in the future hope to have either EMS/XMS usage or swap to
disk available.
Bug Reports and Comments:
I can be reached via GT Netmail at 081/002 and FIDO Netmail at
1:109/244, also I read the GT Utilities Hotline E10/116. When sending
me a bug report, report the exact error message and send me extracts
of your current FILES.BBS and GTDIR.BBS
Getting the Latest Copy of File Manager:
File Manager is File Requestable from my board (081/002) as
filemgr.zip. It is also Freq'able via FIDO at 1:109/244 with the
Magic name FILEMGR. As I release new versions, I will upload them
onto The Capital Area Network (033/000), Jack's Board (081/001), and
Infostation (032/001). File Manager is also available as a file echo
from Jack's Board and The Capital Area Network.
Registration:
Registration for File Manager is $10. However, the registration fee
is waived for all people who participate in the initial Beta Test.
Please send me a Netmail message using the order.frm to receive your
registration key.
Revision History:
0.41ß: 06 March 1994
* Fixed a bug in the string comparison routines.
* Fixed File Manager so that it will no longer give a constraint error
when the FILES.BBS contains lines longer than 80 characters.
* Added registration information to File Manager. A valid FILEMGR.KEY
file must exist somewhere in your path for File Manager to be
registered.
* Changed the algorithm used to load and search the file names listed
in the FILES_?.CTL Files. This should speed things up for those BBS's
that have a CD-ROM online.
* Changed File Manager's logic to skip CD-ROM directories where the
"FILES.BBS" file resides on the CD-ROM drive.
0.40ß: 22 November 1993
* Added /I switch to tell File Manager to ignore the FILES*.CTL files.
* File Manager will create a FILES.BBS/CBS file when the directory
being processed does not have one.
* File Manager will import Files not listed in the FIlES.BBS file that
are located in the directory being processed. File Manager will
attempt to extract a FILE_ID.DIZ from these files and if none
exists, it will import a description that states that the
Description is not available. When importing new files, File
Manager ignores all FILES.* and FILEMGR.* files. Added the /NI
switch to tell File Manager to not import new files.
* Added the /CD switch and support for CD-ROM drives.
* Improved memory management.
0.34ß: 02 October 1993
* Fixed bug that cause File Manager to bomb when the LAN path was empty.
* Fixed bug that caused File Manager not to work correctly when being run
without a specified path.
0.33ß: 26 September 1993
* The colors.dat file can be located in the current directory, the GTPATH,
the BBS/CBS directory, or your system path.
* Added the LAN path to directories searched for the system files.
* Added limited movement of files between directories.
0.32ß: 31 July 1993
* Add support to read GT system files from the current directory,
the GTPATH, the BBS/CBS directory, or your system path. This means
that the GTDIR.BBS and GTUDIR.BBS files can be in any of those
locations.
0.31ß: 17 July 1993
* Fixed a major bug that caused File Manager to crap out on
FILES.BBS files that had file names that were similar (i.e. 10
and 10.CBS).
* Fixed a minor bug where File Manager reread the FILES.CTL file
every time it processed a new directory with the /A or /AU switch.
0.30ß: 12 July 1993
(This is a total rewrite from previous versions. I simplified a
lot of the string processing algorithms and tried to make my
assumptions fit a reasonable lowest common denominator concerning
the FILES.BBS format.)
* Added options to process all directories in the GTDIR.BBS or
GTUDIR.BBS Files.
* Added customization of colors used in the FILES.CBS file.
* Added the ability to not reformat descriptions from
FILE_ID.DIZ's.
* Added support for one-line FILES.BBS files.
* Hopefully squashed a lot of minor and not so minor bugs.
0.21ß: 31 May 1993
(I decided to make this a quick turnaround for an added feature as
Jack Hazel seemed disappointed by the lack of support for the
FILES.CBS and Headers.)
* Added Creation of FILES.CBS and Headers for the FILES.CBS and
FILES.BBS. The colors are hardwired, but I plan on having
customizable colors by the next release.
0.2ß: 30 May 1993
* Added support for .LZH and .ARJ archives.
* Added support for reformatting to different columns
* Cleaned up the code.
* First Public Beta Release.
0.1α:
* Initial conception and coding.