Copyright: CoderPad © 1996 by Lou A. Moccia


CoderPad

for 32-bit Windows

Version 1.0 Preview

Copyright © 1996 by Lou A. Moccia

Introduction

CoderPad is designed to be a very versatile decoder and encoder.  It can decode all of the popular encoding schemes:  UU code (and its less common cousin, XX code); Base64 code (MIME formatted or not); and Macintosh BinHex.  CoderPad can handle most encoded files without requiring any editing beforehand, making it ideal for processing messages straight from newsgroups and email.  CoderPad offers a slew of options for controlling the behavior of file decoding and encoding, and makes the handling of decoded and encoded files quick and easy.

Requirements

CoderPad requires the Microsoft Visual Basic 4.0 32-bit runtime file set, not just the vb40032.dll file alone.  Besides the vb40032.dll file, the next most important files are msvcrt40.dll, msvcrt.dll, and msvcirt.dll.  The remaining files are actually part of Windows 95 (and I assume Windows NT 4.0 too now), but if you are using Windows NT 3.51 then msvcrt20.dll, olepro32.dll, and ctl3d32.dll are required.  If you already have these files, most often located in the Windows System folder, then you don’t need to get them again (unless you want to check for newer versions).  Otherwise, the full runtime set is available from the CoderPad home page (see below), as well as a few other places on the web like the great www.windows95.com.

Also needed is the mfc40.dll file, which is required by .ocx support files.  Chances are you already have this file since it is used by many Microsoft products.  But please do be sure to double-check your Windows System folder for it.  If it’s missing, you can get it from the CoderPad home page as well.

Setup

Of course, first confirm that you have or installed the Microsoft Visual Basic 4.0 32-bit runtime file set.  Then depending on the archive file you have downloaded or received, either:

•	Run the CoderPad-sfx.exe self-extractor which will run a Setup program automatically after decompressing the archive files.  It will also delete the decompressed archive files automatically when the setup is ended.    Or…

•	Copy the files in the CoderPad.zip archive to a folder of your choice manually, as in previous versions of CoderPad.  This archive is much smaller than the one with the Setup program, but you may have to put the support files in the Windows System folder if CoderPad or Windows complains, and you have to do your own version checking before possibly replacing the same support files you may already have from other apps.

Summary of Special Features

Rather than try to put together a complete help file now that would only delay the release of CoderPad and probably just state the obvious for most users, I have decided to summarize the not-so-obvious special features of CoderPad for this Preview release (basically why it is called Preview).  Most things in CoderPad should be self-explanatory, or at least better understood once experimented with.  Don’t be afraid!  So here now are special points to note:

•	There are several ways that CoderPad can handle files to decode and encode them:

Decoding and encoding:

♦	Select one or more files from a file selection dialog.

♦	Select single files from a file list display.

♦	Drop one or more files on the CoderPad window.

♦	Drop one or more files on the CoderPad application icon or shortcut icon.

♦	Supply one or more file names on the CoderPad command line (not really convenient, though – see info later below).

Decoding only:

♦	Paste text from the Windows Clipboard.

♦	Double-click on an encoded file, or right-click on an encoded file and select the Decode command (if you used the Associate Encoded Files option in CoderPad).

•	In the CoderPad window, the display under the buttons shows the path where decoded or encoded files will be saved.  Clicking on the letter box will toggle between the decode and encode path display.  Clicking the path display will show and hide the file list display for that path.  Right-clicking on the left half of the path display will bring up the Decode path selection dialog, and right-clicking on the right half will bring up the Encode path selection dialog.

•	Right-clicking in the file list display will present a pop-up menu of the “File List Selection” submenu of the File menu.  Double-clicking a file or pressing the Enter key when a file is highlighted in the file list display will attempt to open it.  Holding the Shift key when opening a file allows you to select an application to use for opening it (probably won’t work on versions of Windows NT earlier than 4.0), and holding the Ctrl key will attempt to open it with Notepad (note this usually causes CoderPad to remain in the foreground, because of the way Windows treats holding the Ctrl key when launching an app).  When a file is highlighted, pressing the Delete key will delete it (the use of delete confirmation and the Recycle Bin are controlled by those system settings), pressing the F12 key offers to rename it, and pressing the Insert key will get file info about it.  File date and size information will appear in the file count display when a file is selected in the file list.  Right-clicking in the file count display will present a pop-up menu of the “File List Display” submenu of the Options menu.  Pressing the F5 key or double-clicking the file count display will manually refresh the file list (refreshing is taken care of automatically when file name and date changes are detected in the save path, so you’ll probably never have to do this yourself unless you use the Disable Auto Refresh option).

•	The Disable Auto Refresh option was provided to allow those with slow computers and who work with big file lists to avoid the list updating delay, but I do not recommend using it.  Note that when this option is used, attempting to access files in the list that no longer exist on disk will cause an error to be displayed.  Of course, refreshing the list when desired will clean things up again.

•	To avoid multiple file list updates in a row, CoderPad works like Windows Explorer in that there is a short wait before updating the list after a change is detected.  This allows multiple changes to be “cached” and then taken care of by a single list refresh.  The color of the letter box will change to red when there is a list update pending, so you will know the most likely reason for an error caused by a list entry (such as when another app deleted a file in the save path).  In CoderPad, the file list is immediately refreshed when you delete or rename a file, before being prompted to delete or move source files, and after source files are deleted or moved (or after decoding and encoding of files if not prompted to delete or move source files).

•	The decode and encode file selection dialogs remember the last folder you selected files from.  If you hold down the Shift key while the file selection dialog is called up, it will present the folder currently displayed in the file list display instead of the remembered one.

•	The Open Notepad and Open WordPad commands will open the highlighted file in the file list display when the Ctrl key is used.  For example, pressing Ctrl+N and Ctrl+W, and when holding down Ctrl while selecting from the Edit menu.  Selecting these commands from the Edit menu without holding Ctrl will open the apps empty.

•	When the file list display is showing, all single alphanumeric keys affect its list selection.  When it is not showing, single keys can be used for most menu commands (no need for Ctrl, and numbers work for the Window menu).

•	When the Sort by Date option is on, the list selection is moved to the top of the file list display whenever it is refreshed.  This is by design, making it easy to quickly open newly decoded files.

•	When the Overwrite existing files and Decode silently decoding options are selected, and the Notify on errors option is not selected, the color of the CoderPad icon becomes red as a reminder of these settings.  The color of the CoderPad icon becomes yellow when the Overwrite existing files option is selected otherwise.  And when the options to delete source files with no confirmation are selected, the CoderPad icon displays a red circle around it.  (Note the CoderPad icon will probably look weird on versions of Windows NT earlier than 4.0.)  The right side of the CoderPad menu bar will show the state of various other important decoding and encoding options.

•	When the Decode silently option is selected in the Coding Options window, the Notify on errors option becomes deselected automatically in order to truly decode silently.  So you are aware this was done, the Notify on errors option caption remains underlined until you toggle it yourself.  On the other hand, when the Silent button is used in the main window, it only toggles the Decode silently option and does not affect the Notify on errors option.  The Silent button simply toggles the Decode silently option by design.

•	Source file deletion after decode:  Please be aware that it is up to you to confirm if source files were processed properly, because there is no way for CoderPad to determine if they were other than reporting decoding errors.  When the Delete after decode option is selected, source files are always set for deletion even if there was no attempt to decode them (skipped or canceled).  It’s a good idea to only use the No confirmation option if you usually get error-free source files (or at least be sure to use the Recycle Bin).

•	Even when the No Recycle Bin option is off, it has no effect when the “Do not move files to the Recycle Bin” system setting is on in “Recycle Bin Properties” (the No Recycle Bin option has no effect at all on versions of Windows NT earlier than 4.0, which do not feature the Recycle Bin).  CoderPad always ignores the “Display delete confirmation dialog” system setting in “Recycle Bin Properties” (and similar option on versions of Windows NT earlier than 4.0), because it provides its own independent delete confirmation.

•	The Run as a Tray Icon option will only work on Windows 95 and NT 4.0.  When CoderPad is running as an icon in the tray area, the following mouse actions are available:

Left click:	Displays the File menu

Right click:	Displays the Edit menu

Hold Ctrl key & Left click:	Displays the Options menu

Hold Ctrl key & Right click:	Displays the About menu

Hold Shift key & any click,

or any double-click:	Turns off the Run as a Tray Icon option

•	Don’t forget the special features of the Windows interface itself!  For example, in CoderPad you can still use Shift+Insert for Paste, and you can hold the Shift key when selecting a delete command to bypass use of the Recycle Bin.

•	The Associate Encoded Files option allows you to associate encoded file types with CoderPad.  This means you will be able to run or activate CoderPad by double-clicking on an encoded file (or right-clicking and selecting Decode).  File types associated are:  .uue, .uu, .xxe, .xx, .mim, .mme, .b64, .hqx, .bhx, .bh, and .001 to .009 (multi-parts).

•	The Maintain File Associations option causes CoderPad to ensure its file associations are always current on startup.  You may want to turn on this option if you have another application that likes to always reset certain file associations.

•	The File Drop Action option also applies to dropping files on the CoderPad application icon or shortcut icon (and when specifying only short file names and no quotes on the command line – see below).  Note that depending on the file manager you are using, files may be passed to CoderPad in a way that makes CoderPad not handle the files properly (such as ignoring them).  This has to do with how such a file manager builds a command line, especially for multiple files (see below).  It works for Windows Explorer, so if it doesn’t work for another file manager, then guess who’s fault that is. *

* Um…The other file manager. Like, duh!

•	You can specify files on the CoderPad command line, but certain rules apply.  If specifying a long file name, then it must be enclosed in quotes.  You can specify multiple files, but even if just one is a long file name, then each one must be enclosed in quotes or some files will not be found (ignored).  If each file is a short file name, then you can separate each one with a space and not use quotes.  Noting the previous statements, note that files will be opened for only decoding when quotes are used on the command line.  When no quotes are used (short file names), then the files will be handled according to the File Drop Action option.  In order to support encoded file type associations, it has to work this way because that’s how Windows Explorer specifies files when starting an app (quotes mean a single file was opened by double-clicking or similar way, and no quotes and short file names mean a file(s) was dropped on an app or shortcut icon).  Finally, the command line is limited to about 127 characters, so some files will be ignored beyond that mark (also applies to dropping files on a CoderPad icon).

•	The Ask on File Open option applies to opening files by double-clicking (or right-clicking and selecting Decode), and when passing long file names on the command line.  The Ask on File Open option applies to dropping files on the CoderPad application icon or shortcut icon (and when specifying only short file names and no quotes on the command line) when the File Drop Action option is not set to Ask.

•	For registered users:   Holding the Shift key when selecting the Back Color command will present the Color dialog in its full open state, and the state will be remembered if the dialog is not canceled.  Holding the Shift key the next time will present the Color dialog in its normal open state and remembered if not canceled.

Troubleshooting

•	If you encounter any display weirdness, the first thing to do is see if it occurs again after rebooting Windows.  If it eventually does, and you are using a display driver that did not come with Windows, then the best thing to do is check for the latest version of your display driver.  Most display card companies have web sites where you can download current versions.  If you are using a display driver that came with Windows, then any display anomalies that appear may simply be due to Windows itself (you know Windows, a lot of times it is unpredictable after running a long time, or after running many apps or certain apps together, etc.).  What I’m trying to say is that there is nothing special in CoderPad concerning the display -- it uses standard screen scaling, and the display functions are built into the Visual Basic runtime shell, not done in any CoderPad programming itself.

•	It’s not a good idea to try to “decode” binary files, such as .exe files.  The UUDeview library may lock up if such an attempt is made, requiring killing of the CoderPad app (using End Task in the Ctrl+Alt+Del list, or by some other utility).  This usually occurs with very large binary files, like over 2 Mb.  Source files for decoding should be true text-only files, but processing a binary file (either by accident or mixed in a group of selected or dropped files) usually will just have no encoded data found in it, or if something does happen to be found it will be useless text.

Conclusion

Should you wish to discuss anything about CoderPad, I can be contacted at the following e-mail addresses (in order of preference):

lamprog@aol.com	(fastest response)

scree@msn.com

scree@freemark.com

The latest versions of CoderPad and the runtime support files can be found at:

http://users.aol.com/lamprog/coderpad.html

ftp://users.aol.com/lamprog	(CoderPad)

ftp://users.aol.com/lamprog2	(runtime)

CoderPad should also be accessible from the great 32-bit shareware web site www.windows95.com (an older version number will most likely appear there, but the links are indeed connected to the most recent version).

Please report any problems or suggestions.  Also, please consider registering!  CoderPad is fully functional in that it does not restrict the main functions of the application (I hate “nagware” and “crippleware” myself!).  Registration is not required to enable any major features.  However, registering does enable a few useful features, personalizes your copy, and makes the world a slightly better place!  (You feel better, I feel better, there’s incentive to continue developing the app…)

To register, please send $ 20.00 (that’s twenty even -- no shipping, tax, multiple license fee, or other junk) in U.S. funds to:

Lou A. Moccia

109 Apple Lane

Mt. Laurel, NJ 08054

(USA)

Be sure to state the name you would like to use to register.  Also state your e-mail address for the fastest response!

Thank you, and enjoy using CoderPad!