freeWrap

History - current revision = 5.5

Changes for version 5.5

  1. The WINICO extension for Windows has been removed.  A similar Windows icon feature was added to the TK "wm iconbitmap" command in TK 8.3.3
  2. Special Makefiles for building static versions of TCL and TK under Windows are no longer included in the freeWrap package. As of TCL/TK 8.4.0 static TCL and TK libraries can be built using the OPTS=static option on the NMAKE command line.
  3. Compiled with newer version of ZLIB library (revision 1.1.4).
  4. FreeWrap 5.5 is based on TCL/TK 8.4.1

Changes for version 5.4

  1. Corrected problems that occurred when storing the executable file in directory paths that included spaces.
  2. The generated executable output file is now placed in the current working directory.
  3. The [info script] command now returns the name of the called script when using freeWrap as a stand-alone TCLSH or WISH.
  4. Due to conflicts with antivirus software, under Windows freeWrap is no longer compressed using UPX or any other EXE compressor.
  5. FreeWrap 5.4 is based on TCL/TK 8.3.5

Changes for version 5.3

  1. Corrected problems that occurred when using spaces or backslashes (\) in the file-to-wrap path.

    This bug fix eliminates the following problems that would sometimes occur when wrapping an application.

o         A blank WISH main window displayed on screen but there was no program generated. 

o         A ZIP file was produced instead of an executable. 

o         The original source file was replaced with an encrypted version. 

o         An executable file was created but it would only display a blank main window and a console window.

Changes for version 5.2

  1. Removed replacement glob command. There were too many bugs in the replacement code.
  2. Fixed ::freewrap::unpack procedure to prevent addition of newline character at end of unpacked file.
  3. Double-clicking on the console window background no longer produces an error condition.
  4. For the BLT version of freeWrap: Added / blt to auto_path variable
  5. FreeWrap can now be built using TCL/TK 8.4.

Changes for version 5.1

  1. ::freewrap ::getStubSize command now returns correct value.
  2. Modified info command to return a value when using the [info script] command for wrapped files. This makes wrapping of TCL package libraries much simpler.
  3. freeWrapBLT will now properly decrypt its wrapped BLT script library.
  4. The Windows versions of freeWrap are now compressed using PEcompact instead of UPX. UPX compressed executables have serious incompatibility problems with some Windows-based anti-virus programs (e.g. Norton, McAfee). This incompatiblity expresses itself in slow listings for directories containing wrapped applications, slow startup of freeWrap and wrapped applications . The Linux versions of freeWrap are still compressed with UPX.
  5. Made minor adjustment to initialization of auto_path variable

Changes for version 5.0

  1. freeWrap 5.0 now compresses all wrapped files into a ZIP Virtual File System (ZVFS) archive attached to your executable. Bottom line: wrapped applications will be smaller.
  2. The file name referencing rules have changed slightly with the adoption of ZVFS for use in freeWrap.
  3. Some ::freewrap:: variables and procedures have been deleted and some new ones added.
  4. Encoding file cp1252.enc is now included as the default encoding for freeWrap.
  5. The freeWrap source code has been restructured to produce a simpler process for building different versions of freeWrap under different operating systems. The MKTCLAPP program is no longer needed.
  6. freeWrap 5.0 is based on TCL/TK release 8.3.4.
  7. "file stat" and "glob" now work on wrapped files.
  8. freeWrap will now complain and exit without producing an executable file if the filename specified with the -f switch cannot be found.
  9. freeWrap will now complain and exit if the executable file already exists and is open/running.
  10. The ZVFS used by freeWrap now preserves the case of file names under both UNIX and Windows.

Changes for version 4.4

  1. freeWrap 4.4 is based on TCL/TK 8.3.2
  2. Added a -w "wrap using" option to specify the file to use as the freeWrap stub. This allows cross-platform creation of wrapped applications without the use of the target computer system.
  3. All extensions compiled into freeWrap ( Blt, winico, dde, registry, Tk) are now statically loaded and are available for loading into TCL interpreters created with the interp command.
  4. Created ::freewrap namespace and moved all existing freewrap variables, commands and procedures into it.
  5. Added some commands to install new file types and associations into the Windows registry.
  6. Added a ::freewrap::shortcut command to create shortcuts under Windows.
  7. Added a ::freewrap::getSpecialDir command to find "Start Menu", "Desktop" and similar directory locations under Windows.

Changes for version 4.3

  1. freeWrap 4.3 is based on TCL/TK 8.3.1.
  2. Fixed a bug introduced by TCL/TK 8.3 that prevented the use of the "\" path separator on the freeWrap command line. Paths on the freeWrap command line can again use either the forward or backward slash character.

Changes for version 4.2

  1. Fixed a fatal bug that occurred when using the _ freewrap_pkgfilecopy procedure.

Changes for version 4.1

  1. freeWrap 4.1 is based on TCL/TK 8.3.0
  2. The Windows version of freeWrap now includes the tcl83pip.dll file from the normal TCL distribution. This file is necessary when running scripts that redirect stdin/stdout through pipes using the exec or open commands.
  3. The BLT version of freeWrap now correctly finds and outputs the postscript headers.
  4. The documentation now describes how to properly wrap and use character encoding files.
  5. The documentation includes an expanded description of referencing wrapped file names.
  6. Added a -b option for wrapping any type of binary file.
  7. freeWrap now operates properly even if it is run through a symbolic link under UNIX.

Changes for version 4.0

  1. freeWrap 4.0 is based on TCL/TK 8.2.2
  2. The freeWrap executable file is now much smaller. It has been compressd with UPX and now fits on a single floppy.
  3. Wrapped file paths can now include spaces.
  4. Wrapped binary files take less room than previous versions of freeWrap.
  5. Added a few features, procedure and variables to support my new application distribution program, freeDelivery .
  6. Added -p command line option to wrap application distribution packages
  7. Pressing the [x] on the root window under Windows95/98/NT now exits the program completely from memory. Several people were confused about Windows' default behavior which closed the root window but kept the program in memory. Programmer's can still intercept the WM_DELETE_WINDOW event themselves using the "wm protocol" command.

Changes for version 3.3

  1. freeWrap 3.3 is based on TCL./TK version 8.2.1
  2. TCL load command now works with stubs -enabled shared libraries.
  3. Using freeWrap's -f option, the list of files to wrap can be retrieved from a text file.
  4. The Windows version now includes the WINICO package to allow setting of toplevel window icons.

Changes for version 3.2

  1. Corrected code so the path to the executing copy of freeWrap is correctly determined. This eliminated the couldn't open " freewrap": no such file or directory error seen at wrap time on some operating systems (e.g. WindowsNT , Irix).
  2. Included a free license statement for freeWrap .
  3. Added _freewrap_patchLevel variable to indicate the freeWrap revision number.

Changes for version 3.1

  1. Corrected improper decryption of additional wrapped files.
  2. Corrected inability to access additional wrapped files under UNIX.
  3. Included BLT library files into freeWrapBLT version.
  4. Corrected handling of line continuations (\ character) under Windows.
  5. The TCL/TK interp command now works correctly under freeWrap.

Changes for version 3.0

  1. Can now wrap multiple scripts together
  2. Can now wrap binary image files into executable. (GIF, PPM, PGM)
  3. Automatic encryption of wrapped files.
  4. freeWrap 3.0 is based on TCL/TK 8.1.1

This page last updated November 26, 2002

Send comments to freewrapmgr@users.sourceforge.net