home *** CD-ROM | disk | FTP | other *** search
/ Media Share 13 / mediashare_13.zip / mediashare_13 / ZIPPED / UTILS / INI_EDT.ZIP / INIEDIT.TXT < prev    next >
Text File  |  1993-08-30  |  23KB  |  697 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10. INIEDIT - Version 1.08
  11.  
  12. Copyright (C) 1991-1993  Richard R. Sands CIS 70274,103
  13. All rights reserved
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40. Documentation last updated August 30, 1993
  41.  
  42.  
  43. OVERVIEW
  44.  
  45. If you often find yourself editing your WIN.INI, SYSTEM.INI, or any ther INI file before 
  46. you start Windows, then this program is for you!
  47.  
  48. INIEDIT provides batch file editing of your INI files so you can start up Windows with 
  49. mnemonic commands.  This program reads a text file of editing commands that instruct it 
  50. to modify the various .INI files by section and keywords.  You can change the contents of 
  51. a line, delete lines, comment, and uncomment them.  You may include several labeled 
  52. sections in your INIEDIT script so you can have all of your various Windows 
  53. configurations in one text file.
  54.  
  55. Why did I write this program?  I have a portable that, at work, is connected to a network, 
  56. at home it's not.  When on the network, I have several utilities I need to load, and 
  57. although at home, they detect the lack of the network, I end up having to click a bunch of 
  58. OK buttons (This was back in Windows 3.0 days).  I have customized system fonts that I 
  59. like to use, but as a programmer, I  like to boot windows with the "standard" font to check 
  60. the dialog box metrics.  Sometimes, I want to just start windows without having to load 
  61. up all my favorite utilities - get in quick - get out quick.  I use different "shell" programs 
  62. depending on what "type" of environment I want to be in.  You get the picture.  With 
  63. INIEDIT all of these actions are easily (read I-Don't-Have-To-Remember-Anything) 
  64. written into a menu or batch file.
  65.  
  66. Over time, IniEdit has evolved into a very useful Windows On Network utility.  By using 
  67. environment variables and IniEdit, Windows can be configured on the fly.
  68.  
  69. This program is best used in a batch file, or with your favorite Menuing Program.
  70.  
  71.  
  72. SYSTEM  REQUIREMENTS
  73.  
  74. Microsoft Windows 3.0 or 3.1
  75.  
  76. INIEDIT has been tested with all DOS Versions 2.11 through 5.0.  It's memory 
  77. requirements depend on the size of your largest INI file (but limited to 4000 lines of text 
  78. or your available memory).
  79.  
  80.  
  81.  
  82. STARTING INIEDIT
  83.  
  84. IniEdit requires at least 1 parameter: The Script Filename.  This is a normal ascii file that 
  85. contains the commands you want to be executed.
  86.  
  87. In addition you may place some Switch Options that modify the way INIEDIT behaves.
  88.  
  89. The formal syntax for starting INIEDIT is as follows:
  90.  
  91.      INIEDIT     <-- This will display version & help screen
  92.     or
  93.     INIEDIT filename.ext [labels] [options]
  94.  
  95. where
  96.  
  97.  
  98. filename.ext
  99.  
  100. is the name of the text file that contains your editing commands.
  101.  
  102.  
  103.  
  104. [labels]
  105.  
  106. are optional. A label designates one or more sections of your 
  107. INIEDIT script to be executed.  Yu may have more than 1 label on 
  108. the command line.
  109.  
  110.  
  111.  
  112. [options]
  113.  
  114. are optional, and must be preceded with a "/" character.
  115.  
  116.  
  117. The [options] are defined as
  118.  
  119. /?    Displays version and help screen.
  120.  
  121. /B-        Disable backup files.  Normally, INIEDIT will always backup your file up 
  122.     before making any edits.
  123.  
  124.     /C+    Clears the screen when execution starts.
  125.  
  126.     /D+        Enable "Debug" mode.  This will display each line as it is executed with     
  127.         additional information so you can track down any errors in your (or my)     
  128.         logic.  When debug mode is on, then after each statement is displayed, the     
  129.         message "Press any key..." is displayed.
  130.  
  131.     /L+    Show a list of all labels found in the INIEDIT script file.  This is useful if     
  132.         your file requires a user-label entered on the command line.  Your batch     
  133.         file can check for a parameter, and if not found then issue  this switch.      
  134.         This switch returns a DOS Errorlevel of 1.
  135.  
  136.     /P-    Don't pause for a key when an error occurs.  This is on by default.  You     
  137.         can check for errors in your batch file with the DOS errorlevel variable.
  138.  
  139.     /W+    Show warnings and wait for a key to proceed.  This is off by default.      
  140.         Warnings are  ususally available only in Debug Mode.
  141.  
  142. The special combination of "/D+ /P-" will show debug code, but not pause for a key to be 
  143. pressed.
  144.  
  145.  
  146. EDITING COMMANDS
  147.  
  148. All commands to INIEDIT are entered into a regular ascii text file created with your 
  149. favorite TEXT editor (or WP w/Text Out).
  150.  
  151. There are six basic commands:
  152.  
  153.  
  154. APPEND
  155. Adds a keyword to the section regardless 
  156. if it exists
  157.  
  158.  
  159.  
  160. COMMENT     
  161. This will make a keyword entry into a 
  162. comment.
  163.  
  164.  
  165.  
  166. DELETE      
  167. This can delete a whole section or just one 
  168. keyword.
  169.  
  170.  
  171.  
  172. EDIT        
  173. This will change the contents of a 
  174. keyword entry.
  175.  
  176.  
  177.  
  178. EXIT        
  179. Quit processing the script file
  180.  
  181.  
  182.  
  183. INI         
  184. Opens an .INI file for editing
  185.  
  186.  
  187.  
  188. UNCOMMENT   
  189. This changes a commented line into a 
  190. regular line.
  191.  
  192.  
  193.  
  194. Each command is written on it's own line.  Lines may not wrap, but may be up to 255 
  195. characters (including leading blanks) long.  For each command, you may write the whole  
  196. command (eg. COMMENT) or just the first three letters (eg. COM).
  197.  
  198. For all commands except ECHO, EXIT and INI, the syntax is identical.  You include the 
  199. command, the DOS Ini filename (path & .ext not required), the section name enclosed in 
  200. square brackets, and, the keyword/value pair separated with an equal sign ("=").
  201.  
  202.  
  203.  
  204. For example:
  205.  
  206.         EDIT WIN [Windows] Beep=No
  207.  
  208. This command will change the BEEP keyword under the [Windows] section of the 
  209. WIN.INI file to NO.
  210.  
  211. Comments are lines starting with a semi-colon.  The line does not have to start in column 
  212. one.  Comments must be on their own line.  This is a remark in the INIEDIT script file:
  213.  
  214.         ; This is a valid remark
  215.  
  216. Labels are used to "tag" sections of the INIEDIT script to be used with a parameter sent 
  217. from the command line.  This way you can have several different configurations without 
  218. having to have them in separate files (as in INIEDIT Version 1.01).  Given a INIEDIT 
  219. script with these two sections:
  220.  
  221. ; This is TEST.MOD  (the .MOD means MODifications)
  222. :FAST
  223.     EDIT Win Load=
  224.     EDIT Win Run=
  225.     EXIT
  226. :SLOW
  227.     EDIT Win Load=C:\AFTRK\AD NWSEND EMAIL RESGUAGE BIGDESK
  228.     EDIT Win Run=SkeyWin YaClock
  229.     EXIT
  230.  
  231. Then having your batch file (or Menu) give this command:
  232.  
  233.     INIEDIT Test.Mod SLOW
  234.  
  235. Will execute the section listed under ":SLOW" and this command:
  236.  
  237.     INIEDIT test.mod fast
  238.  
  239. would execute the section listed under ":FAST".  Note the EXIT commands at the end of 
  240. each section.  If you don't have one, it will "fall" through to the next section (which could 
  241. be construed as a feature!). 
  242.  
  243. You can place more than one label on the command line.  This has the effect of executing 
  244. each section.  This command will execute two sections:
  245.  
  246.     INIEDIT test.mod slow fast
  247.  
  248.  
  249.  
  250. You may also have descriptions attached to your labels.  This is very useful when the 
  251. Show Labels switch is used (/L+):
  252.  
  253. :FAST - Don't load any utilities
  254. :SLOW - Load all utilities
  255.  
  256. There are no flow-control statements.  The sequence of execution is essentially linear.  I 
  257. was tempted to put in a CALL/GOTO command but I found it -really- wasn't needed.  So 
  258. far, no one has complained.  If you can give me a good situation where you would want 
  259. one, I'll consider it for the next release.
  260.  
  261.  
  262. A MOMENT OF REFLECTION
  263.  
  264. As I wrote this program, I considered adding commands for creating and executing some 
  265. kind of menu system.  After some reflection, I decided that the last thing the world needs 
  266. is a new menu system.  If you really need one, I can provide a simple DOS Batch File 
  267. based system with color, nested menus, etc. with all commands using regular batch file 
  268. commands and one small utility.  Again, if you think there is an overriding reason for 
  269. including these type of commands let me know and I'll consider it for the next release.
  270.  
  271.  
  272. COMMAND ABBREVIATIONS
  273.  
  274. INIEDIT Version 1.01 allowed the first three characters of the command to be used rather 
  275. than the whole command (eg. COM for COMMENT).  This is still enabled, but in lieu of 
  276. future versions, you are encouraged to use the whole command.
  277.  
  278.  
  279.  
  280.  
  281. SAMPLE BATCH FILES
  282.  
  283. This batch file will start Windows after modifying the various INI files that I need.  It 
  284. first checks for no parameters, and if none, displays all the labels in the file.  Otherwise it 
  285. executes the INIEDIT program and checks for any errors.  If no errors then windows is 
  286. started.
  287.  
  288. @Echo Off
  289. C:
  290. cd C:\WIN
  291. if %1!==! GOTO Error          (check for required params)
  292.   INIEDIT WinBoot.Mod %1 %2 %3 (allow user labels)
  293.   if ERRORLEVEL 1 GOTO Done    (check for any errors)
  294.   Win                          (start Windows)
  295.   GOTO Done                    (and quit)
  296. :Error
  297.   INIEDIT WinBoot.Mod /L+      (display list of labels)
  298. :Done
  299.  
  300. Alternatively, I prefer the following batch file since it allows me to set the Windows 
  301. initialization I want by giving the INIEDIT command but until I need to change the 
  302. Windows startup, I just type WIN.  
  303.  
  304. For example:
  305.  
  306. @Echo Off
  307. C:
  308. cd C:\WIN
  309. if %1!==! GOTO Windows      (no params, just execute win)
  310.   INIEDIT WinBoot.Mod %1 %2 %3 (allow user labels)
  311.   if ERRORLEVEL 1 GOTO Done    (check for any errors)
  312. :Windows
  313.   Win                          (start Windows)
  314. :Done
  315.  
  316.  
  317.  
  318.  
  319. THE FUTURE OF INIEDIT
  320.  
  321. I don't think INI files are going to go away, so this program should be useful for the next 
  322. few versions of Windows, although it may not be needed on 
  323.  
  324. Some suggestions that I have not implemented (yet) are some control commands (eg. 
  325. GOTO or CALL), some substring handling for modifing portions of a keyword (eg. 
  326. remove "clock" from LOAD=Calc Clock Bye),  some screen handling commands for 
  327. creating prompts/menus,
  328.  
  329. I've even had a request for an OS/2 version. 
  330.  
  331. Depending on additional interest, these types of commands, or other commands could 
  332. very well appear on future releases of INIEDIT.
  333.  
  334.  
  335. COMMAND REFERENCE
  336.  
  337. Manual Conventions
  338.  
  339. Because the use of the [] symbols to denote sections, I will write required values in 
  340. uppercase.
  341.  
  342.     EDIT win [section] KEYWORD=value
  343.  
  344.  
  345. All keywords must have an equal sign after them even if nothing follows.
  346.  
  347.     EDIT Win [Windows] Run=
  348.  
  349.  
  350. APPEND
  351. APPEND ini [section] KEYWORD=value
  352.  
  353. Appends (or adds) the contents of the keyword under the [section] heading.  If no 
  354. [section] is provided, then it appends the keyword to the first section that keyword 
  355. appears under.  Otherwise, it appends the keyword after the last keyword matching in the 
  356. section.
  357.  
  358. This is provided mostly to handle adding new DEVICE entries in the SYSTEM.INI file.  
  359. To edit these kind of entries, you need to first try to delete the keyword, then append it:
  360.  
  361.     INI System
  362.     DELETE [386Enh] DEVICE = vnetware.drv
  363.     APPEND [386Enh] DEVICE = v3com.drv
  364.  
  365. APPEND will not add duplicate lines.  I cannot think of any reason why any 
  366. keyword=value" would be duplicated exactly.
  367.  
  368. While in debug mode (/D+) you may see "warnings" like "keyword not found".  These 
  369. are "soft" errors, INIEDIT will add the keyword AND section if it does not exist.
  370.  
  371. NOTE: The "value" portion of the syntax may contain references to the DOS
  372. environment ala batch file syntax: eg. %NETNAME% would look up the variable 
  373. "NETNAME" and substitute the text on the right side for it.  If 
  374. NETNAME=RICKS then the RICKS gets substituted for %NETNAME% 
  375. whenever it is encountered.  See DOS ENVIRONMENT VARIABLES in your 
  376. favorite DOS how-to manuals.
  377.  
  378. Example:
  379.  
  380.     APPEND system [386Enh] device=special.drv
  381.  
  382.  
  383. COMMENT
  384. COMMENT ini [section] KEYWORD=value
  385.  
  386. Changes the section/line containing the keyword to be a comment.  This is a non-
  387. destructive way of "deleting" keyword entries.  If the VALUE entry is present, then an 
  388. exact match made.  This is useful when using COMMENT with the "device" keywords in 
  389. the SYSTEM.INI file since there are multiple occurences of this keyword.
  390.  
  391. If no [section] is provided, then it changes the value of the first keyword under -any- 
  392. section that matches.  See the EDIT entry. 
  393.  
  394. Keywords not found are "soft" errors and ignored by INIEDIT. 
  395.  
  396. Examples:
  397.  
  398.     COMMENT System [boot.description] network.drv=
  399.     COMMENT System [386Enh] network=*vnetbios, netware.386 
  400.     COMMENT Win [Clock]
  401.  
  402.  
  403. DELETE
  404. DELETE ini [SECTION] KEYWORD=value
  405.  
  406. Deletes a keyword from the active ini file.  If the keyword is not given, then it deletes the 
  407. whole section from the ini file.  Note that you must supply [section] AND/OR keyword.   
  408. If you supply a value entry, then an exact match is performed.  This is useful for the 
  409. SYSTEM.INI's device=  values which can appear more than once in each section.
  410.  
  411. NOTE: This is a hold-over from INIEDIT Version 1.01.  It is best that you use 
  412.     COMMENT/UNCOMMENT rather than DELETE.  However, I will continue to 
  413.     keep this command. 
  414.  
  415. If no [section] is provided, then it changes the value of the first keyword under -any- 
  416. section that matches.  See the EDIT entry.
  417.  
  418. Examples:
  419.  
  420.     DELETE Win [Clock]
  421.     DELETE Win [Clock] iFormat=
  422.     DELETE Win [Clock] iFormat=1
  423.     DELETE Win iFormat=1
  424.  
  425.  
  426. ECHO
  427. ECHO any text at all
  428.  
  429. Display all text following ECHO and performs a carriage-return linefeed.  This is  
  430. provided for optionally notifying the user while long edit commands are being executed.
  431.  
  432. An ECHO command by itself, just writes a blank line.
  433.  
  434. Examples:
  435.  
  436.     Echo Please wait, modifing WIN.INI
  437.     Echo Please wait, modifying SYSTEM.INI
  438.     Echo
  439.  
  440.  
  441. EDIT
  442. EDIT ini [section] KEYWORD=value
  443.  
  444. Changes (or adds) the contents of the keyword under the [section] heading.  If no  
  445. section] is provided, then it changes the value of the first keyword under -any- section 
  446. that matches.  You might be safe saying:
  447.  
  448.     EDIT Win Load=Clock
  449.  
  450. But you might have problems with a command like:
  451.  
  452.     EDIT Win iFormat=0
  453.  
  454. Because several programs use the iFormat keyword, and you could be sure that the 
  455. iFormat you meant was changed.  It would be better to write a statement like:
  456.  
  457.     EDIT win [Clock] iFormat=0
  458.  
  459. While in debug mode (/D+) you may see "warnings" like "keyword not found".  These 
  460. are "soft" errors, INIEDIT will add the keyword AND section if it does not exist.
  461.  
  462. NOTE:  If you are trying to change the value of a keyword that appears more than once 
  463.     in a section (eg. SYSTEM.INI's DEVICE keywords) then this command will only 
  464.     edit the first item.  You should use COMMENT and UNCOMMENT to change 
  465.     those types of entries.
  466.  
  467. NOTE: The "value" portion of the syntax may contain references to the DOS 
  468.     environment ala batch file syntax: eg. %NETNAME% would look up the variable 
  469.     "NETNAME" and substitute the text on the right side for it.  If 
  470.     NETNAME=RICKS then the RICKS gets substituted for %NETNAME%  
  471.     whenever it is encountered.  There are no errors reported if the %VAR% is not 
  472.     found.
  473.  
  474. Examples:
  475.  
  476.     EDIT system [boot] shell=msdos.exe
  477.     EDIT win [desktop] WallPaper=G:\BITMAPS\MMONROE.BMP
  478.  
  479.  
  480. EXIT
  481. EXIT
  482.  
  483. Terminates the execution of the script.
  484.  
  485. This is typically used when you want only a certain portion of a script to be executed.  
  486. Script sections always have a label to designate the section (except, possibly, for the first 
  487. section).
  488.  
  489. EXIT is not required if the section is the last section in the file.
  490.  
  491. Example:
  492.  
  493.     :Label1
  494.         edit win [clock] iformat = 1
  495.         EXIT
  496.     :Label2
  497.         edit win [clock] iformat = 0
  498.  
  499.  
  500. INI
  501. INI
  502.  
  503. Opens an .INI file for editing.
  504.  
  505. This is typically used at the start of a section.  It is an optional command since you can 
  506. include the INI file on the line of each command.
  507.  
  508. Example:
  509.  
  510.     :Label1
  511.         INI Win
  512.         edit [clock] iformat = 1
  513.         edit [desktop] WallPaper = Cube.Bmp
  514.         EXIT
  515.  
  516.  
  517. UNCOMMENT
  518. UNCOMMENT ini [section] KEYWORD=value
  519.  
  520. Changes the commented line or section containing the section/keyword to be an active  
  521. statement.  This is the compliment of the COMMENT command. If the VALUE entry is  
  522. present, then an exact match made.  This is useful when using COMMENT with the 
  523. "device" keywords in the SYSTEM.INI file since there are multiple occurences of this 
  524. keyword.
  525.  
  526. If no [section] is provided, then it changes the value of the first keyword under -any- 
  527. section that matches.  See the EDIT entry.
  528.  
  529. Keywords not found are "soft" errors and ignored by INIEDIT.
  530.  
  531. Examples:
  532.  
  533.     UNCOMMENT System [boot.description] network.drv=
  534.     UNCOMMENT System [386Enh] network=*vnetbios
  535.     UNCOMMENT Win [Clock]
  536.  
  537.  
  538. ERROR MESSAGES
  539.  
  540. There are two levels of errors: Soft and Hard.  Soft errors are warnings.  Soft errors are 
  541. (ususally) ignored during normal execution of the program, they are only reported during 
  542. Debug Mode (/D+) or if you have the Show Warnings switch (/W+) active.  They do not 
  543. stop the program.  Hard errors will stop the program and won't make any changes to the 
  544. current INI file.  If a Hard Error occurs, then the program will wait for a key to be pressed  
  545. unless the user has specified No Pause On Error (/P-).
  546.  
  547. Entry Already Exists: [section] keyword=value
  548. This is reported by the APPEND command.  This merely means that the target 
  549. line already is present.
  550.  
  551. Exact Match to "[Section] Keyword=Value" not found
  552. This is reported as a warning by COMMENT/UNCOMMENT if an exact match  
  553. is specified but not found.
  554.  
  555. File not found: d:\path\filename.INI
  556. Attempt to open an .INI file that does not exist.  Check the path of  the filename 
  557. and spelling.
  558.  
  559. File not open: d:\path\filename.INI
  560. An attempt was made to write an INI file that was not opened.  Check the path of 
  561. the filename and spelling.
  562.  
  563. Label "xxxx" not found
  564. A label parameter supplied on the command line was not included in the INIEDIT 
  565. script file.
  566.  
  567. No INI file opened!
  568. A command is about to be executed (any command but EXIT) and there is no INI 
  569. file opened.  Include the INI filename, at least, on the first statement of each 
  570. section.
  571.  
  572. Parameter file not found: d:\path\filename.ext 
  573. This means you gave an incorrect filename to be used as the INIEDIT script.  
  574. INIEDIT makes no assumptions about the file extension you used.  Also, check 
  575. the path of the filename.
  576.  
  577. Too many lines in d:\path\filename.INI
  578. The INI file you have tried to edit has grown too large.  INIEDIT can only edit 
  579. files up to  4000 lines long.  (If you have a INI file that gets this error, I'd like to 
  580. see it!)
  581.  
  582. Too many user parameters
  583. You are allowed 15 "User Parameters" to the INIEDIT program.  I think this 
  584. should be sufficient for 99% of all uses<g>.
  585.  
  586. Unknown identifier: xxx
  587. An unknown command has been encountered in the INIEDIT script file.  Check 
  588. your spelling.
  589.  
  590. Unknown Switch: /x
  591. You have included a switch that INIEDIT does not understand on the command 
  592. line.  Check your batch file / Menu.
  593.  
  594. You must include a filename
  595. You must include a filename on the command line to INIEDIT.  INIEDIT does 
  596. not make any assumptions about what file extension you have used.
  597.  
  598. Runtime Errors 200-203
  599. These are Turbo Pascal errors and generally mean you have run out of  memory 
  600. for the program's data.  This should not happen if you are going into Windows.  If 
  601. it does, it would me that you really don't have enough memory to go into 
  602. Windows.  Check and make sure that you are not "shelled" out of another 
  603. program.
  604.  
  605.  
  606. INIEDIT HISTORY
  607.  
  608. Version 1.08 - August 30, 1993 
  609. Functionally identical to 1.07, except that registration procedures have been 
  610. changed to make it more convientient for the user.  Rereleased on CompuServe.
  611.  
  612. Version 1.07 - July 22, 1993 - User Suggested
  613. Added %ENV-VAR% syntax to the VALUE part of any statement.  Picks up the 
  614. value from the DOS environment.
  615.  
  616. Version 1.06 - April 15, 1992 - User Reported
  617. Bug fix: Exit reported an error if no INI file was edited and the program exited.
  618.  
  619. Version 1.05 - January 2, 1992 - User Suggested
  620. Made clear screen command at startup switch controlled (/C+)
  621. Made /P- effect /D+
  622. Fixed bug with small keywords names that were substrings of larger keywords. 
  623.     eg. abc= and abcde= were both considered the same.
  624. Added an ECHO command so users can be notified of lengthy processes.
  625.  
  626. Version 1.04  Nov. 17, 1991 - User Suggested
  627. Added: APPEND command
  628.  
  629. Version 1.03  Sept. 17, 1991 - User Found
  630. Bug Fix: DELETE, COMMENT, and UNCOMMENT performed their action 
  631. only on the first keyword in the section.  This error occured only  when a section 
  632. had multiple entries with the same keyword.
  633.  
  634. Version 1.02  Sept. 4, 1991
  635. Added some features:
  636. *    Multiple files combined into one via labels
  637. *    EXIT command
  638. *    Long command names for clarity
  639.      Released as shareware on CompuServe 09/09/91
  640.  
  641. Version 1.01 March 1991
  642.     Released for use at MCGNW, Inc.
  643.  
  644.  
  645. LEGAL & REGISTRATION STUFF
  646.  
  647. This program is supplied "As Is".  I make no claims about the suitability of this software 
  648. on your computer system.  I have made my best effort to keep bugs to a minimum.  I 
  649. cannot be held liable for any claims I've made that are not supported (bugs) nor for any 
  650. misuse of this program,  nor for any damage that may result of using this program.
  651.  
  652. You may freely distribute the INIEDIT.EXE and INIEDIT.TXT files as long as 
  653. INIEDIT.EXE is unregistered.   You may not modify any of the INIEDIT files.
  654.  
  655. This is User-Supported software.  A lot of work went into writing this package.  If you 
  656. find this program useful, please send us $20.00 per copy or $100 per 10 copies (other 
  657. deals can be made!).  Please send checks only,  I cannot accept Credit Card orders.  In 
  658. return, you will get the latest copy of the program, information to allow you to add your 
  659. name to the program and disable the "nag" screens, and documentation in Microsoft 
  660. Word 2.0 and Rich Text file formats.
  661.  
  662. Updates are available by request.  Any newer version downloaded from CompuServe is 
  663. automatically registered without having to go through me - See your licensing 
  664. instructions.
  665.  
  666. CORPORATE USERS - IF YOU CONTINUE TO USE INIEDIT, YOU MUST 
  667. HAVE A FULLY  REGISTERED VERSION - AN UNLIMITED-USER SITE 
  668. LICENSE IS AVAILABLE.
  669.  
  670. Whether you are registered or not, I am wide open to any enhancements you might offer, 
  671. bug reports (not MY programs!), or any comments about anything at all.  Best way to do 
  672. this is to Mail me via CIS.
  673.  
  674. Please send check to
  675.  
  676.                          Richard Sands
  677.                          P.O. Box 3917
  678.                          Portland, Oregon  97208
  679.  
  680. Please include the following information with your order:
  681.  
  682.     Your Name
  683.     Your Address
  684.     The Registration Name (eg. Company, Department, or Name)
  685.     Where you found the program (BBS, CIS, Shareware Publ., Friend, etc)
  686.     Your CIS number if applicable
  687.     Disk Size (3.5 or 5.25) All are high density
  688.  
  689. Thanks for your support!
  690.  
  691. -Rick Sands
  692.  
  693. <end>
  694. InitEdit Documentation    07/16/93    Page 23
  695.  
  696.  
  697.