Table of content

License Agreement

Welcome to Stuff ToolKit !

  Overview of features

  System requirements

    Operating System

    Stuffit Engine

  Getting Help - Technical Support

  Version History

Installing Stuff ToolKit

  Demo Version

  License numbers

Using Stuff ToolKit

  Initialization and version checking

    SE_Init

    SE_GetVers

    SE_Registered

  Stuffing and unstuffing

    SE_Stuff

    SE_Unstuff

    SE_ZIP

    SE_BZip

    SE_SIT2SEA

    SE_ConvToEXE

    SE_ConvFromEXE

    SE_Verify

  Encode and expand

    SE_Encode

    SE_GetFormat

    SE_Expand

  Stuffit segments

    SE_CountSeg

    SE_MakeSeg

    SE_IsFirstSeg

    SE_JoinSeg

   Disk images

    SE_MountImage

    SE_UnmountImage

   Tables

    Table 1 - Option flags

    Table 2 - File formats

 

License Agreement

Stuff ToolKit for 4D
Developper Software License and Limited Warranty

PLEASE READ THIS LICENSE CAREFULLY BEFORE USING THE SOFTWARE. BY USING THE SOFTWARE AND ENTERING THE LICENSE NUMBER, YOU (LICENSEE) AGREE TO BECOME BOUND BY THE TERMS OF THIS AGREEMENT, WHICH INCLUDES THE SOFTWARE LICENSE AND WARRANTY DISCLAIMER (collectively referred to herein as the "Agreement"). THIS AGREEMENT CONSTITUTES THE COMPLETE AGREEMENT BETWEEN YOU AND THE AUTHOR. IF YOU DO NOT AGREE TO THE TERMS OF THIS AGREEMENT, DO NOT USE THE SOFTWARE AND PROMPTLY RETURN IT FOR A FULL REFUND.

1.Definitions.
COMPILED: A set of high level language instructions as been transformed into a set of processor level instructions which.
APPLICATION: Software developed by the LICENSEE intended to be used in a Compiled form with the Program and which should never allow use of the Program outside the scope of the Application.
DEVELOPMENT LICENSE: Annual renewable license granted to the LICENSEE to allow him to use the SOFTWARE in his developments. This license includes a limited DEPLOYMENT LICENSE.
DEPLOYMENT LICENSE: License required for each deployment (installation and use) of COMPILED APPLICATIONS by the LICENSEE.

2.Ownership of Software.
The enclosed manual and computer programs ("THE SOFTWARE") were developed and are copyrighted by Christian Quest, the author of Stuff ToolKit for 4D ("THE AUTHOR") and are licensed, not sold, to you by THE AUTHOR for use under the following terms, and THE AUTHOR reserves any rights not expressly granted to you. You own the disk(s) on which any software is recorded, but THE AUTHOR retains ownership of all copies of THE SOFTWARE itself. Neither the manual nor THE SOFTWARE may be copied in whole or in part except as explicitly stated below.

3.Intellectual Property.
THE SOFTWARE and its manual is intellectual property of THE AUTHOR and/or its suppliers protected as such by French copyright law, international treaty provisions, and applicable laws of the country in which it is being used.
Trademarks, logos and trade-names quoted in this Agreement, on or in THE SOFTWARE are the property of their respective owners.
Any reproduction of THE SOFTWARE is only granted on the absolute condition that it contains all the legal specifications of THE SOFTWARE property.

4.License granted.
4.1 Software License. THE AUTHOR hereby grants to the LICENSEE, a non-exclusive, non-transferable license (the "License") to use and distribute THE SOFTWARE, for the purpose of distributing LICENSEE's own computer software (the "Licensee's Software") and to copy and distribute the SOFTWARE which are automatically embedded into Licensee's Software, either on a commercial or non-commercial basis, as defined here, subject to the terms and conditions set forth herein. THE AUTHOR, as Licensor, grants to you, the LICENSEE, a non-exclusive, non-transferable right to use this SOFTWARE, subject to the terms of the license as described below:

LICENSEE may:

  • Install and use the SOFTWARE on any computer during the annual license subcription, provided that the software cannot be used by more than one developper at a time,
  • make backup copies of the SOFTWARE for its use provided they bear THE AUTHOR copyright notice,
  • use the SOFTWARE in custom or commercial COMPILED APPLICATIONS created by the original LICENSEE as long as the LICENSEE geys additional deployment licenses.

LICENSEE may not:

  • use the SOFTWARE for development after expiration of the annual development license subscription,
  • distribute copies of the SOFTWARE to others (except as an integral part of a COMPILED APPLICATION within the terms of this License) or electronically transfer the SOFTWARE from one computer to another over a network,
  • distribute copies of the SOFTWARE as an integral part of a development shell or non COMPILED APPLICATION,
  • decompile, reverse engineer, disassemble, or otherwise reduce the SOFTWARE to a human perceivable form, as the SOFTWARE contains trade secrets,
  • modify, alter or remove any copyright notice, trademarks, logos, or any of THE AUTHOR marks of intelectual property,
  • use backup copies of the SOFTWARE (or allow any third party to do so) for any other purpose than replacing the orginal SOFTWARE.
  • MODIFY, ADAPT, TRANSLATE, RENT, LEASE, LOAN OR RESELL FOR PROFIT THE SOFTWARE OR ANY PART THEREOF.

LICENSEE must:

  • get additional development license to ensure that they have appropriate number of development licenses for the number of developers using THE SOFTWARE in their developments,
  • get additional deployment licenses to ensure that they have the appropriate number of deployment license each time they deploy the SOFTWARE on more than the number of computers included in the annual developper license.

4.2. Initial Term. The term of the DEVELOPPER LICENSE shall commence upon payment of the first annual developper license fee for the period of one (1) year, unless terminated sooner pursuant to the provisions of this Agreement.

4.3. Renewal Terms. This Agreement shall be automatically renewed for additional one (1) year periods unless either party notifies the other, in writing, of their desire to discontinue this Agreement at least thirty (30) days prior to the expiration of a term of this Agreement. The license fee for each renewal term shall be THE AUTHOR's then current fees for the SOFTWARE. THE LICENSEE shall pay his license renewal thru one of the authorized distributor of the SOFTWARE. The license fee for each such renewal term shall be raised no more than twenty-five (25%) percent from the previous year's licensing fee.

5.Termination.
This license is effective until terminated. This license will terminate immediately without notice from THE AUTHOR if you fail to comply with any of its provisions. Upon termination you must destroy the SOFTWARE and all copies thereof, and you may terminate this license at any time by doing so.

6.Update Policy.
THE AUTHOR may create, from time to time, produce updated versions of the SOFTWARE. At its option, THE AUTHOR will make such updates available to the Licensee. Updated versions will constitute one an only product with the SOFTWARE subject of this agreement. All updates (minor or major) will be free of charge during Initial Term and Renewel Terms.

7.Warranty Disclaimer.
THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED , INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHOR DOES NOT WARRANT, GUARANTEE, OR MAKE ANY REPRESENTATIONS REGARDING THE USE, OR THE RESULTS OF THE USE, OF THE SOFTWARE OR WRITTEN MATERIALS IN THE TERMS OF CORRECTNESS, ACCURACY, RELIABILITY, CURRENTNESS OR OTHERWISE. THE ENTIRE RISK AS TO THE RESULTS AND PERFORMANCE OF THE SOFTWARE IS ASSUMED BY YOU. IF THE SOFTWARE OR WRITTEN MATERIALS ARE DEFECTIVE YOU, AND NOT THE AUTHOR OR IT'S DEALERS,
DISTRIBUTORS, AGENTS, OR EMPLOYEES, ASSUME THE ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. However, if the software has been sold to you on disk(s), THE AUTHOR warrants to the original Licensee that the disk(s) on which the Software is recorded is free from defects in materials and workmanship under normal use and service for a period of thirty (30) days from the date of delivery as evidenced by a copy of the receipt.
THIS IS THE ONLY WARRANT OF ANY KIND, EITHER EXPRESS OR IMPLIED, THAT IS MADE BY THE AUTHOR ON THIS SOFTWARE PRODUCT. NO ORAL OR WRITTEN INFORMATION OR ADVICE GIVEN BY THE AUTHOR, IT'S DEALERS, DISTRIBUTORS, AGENTS, OR EMPLOYEES SHALL CREATE A WARRANTY OR IN ANY WAY INCREASE THE SCOPE OF THIS WARRANTY, AND YOU MAY NOT RELY ON SUCH INFORMATION OR ADVICE. THIS WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS. YOU MAY HAVE OTHER RIGHTS, WHICH VARY FROM STATE TO STATE.

8.Miscellaneous Provisions.
LICENSEE shall not directly or indirectly transfer the SOFTWARE to any country to which such transfer would be prohibited by any applicable export control laws.
No change or modification to this Agreement will be valid unless it is in writing and is signed by a duly authorized representative of each party.
If any provision of this Agreement is held to be unenforceable, the remainder of this Agreement shall continue in full force and effect.
The waiver by THE AUTHOR of one breach or default hereunder shall not constitute the waiver of any subsequent breach or default.
This is the entire agreement between THE AUTHOR and LICENSEE relating to the contents of the SOFTWARE and supersedes any other communications with respect to the SOFTWARE.
The relationship between THE AUTHOR and the LICENSEE is that of LICENSOR/LICENSEE. In all matters regarding to the present Agreement, the LICENSEE shall act as an independent contractor.

9.Licensee's status.
The terms and conditions of the present license regarding THE AUTHOR's liability cannot exclude any other legal warranty arising from a legislation of the user's country and takes precedence over the contravening provision.
Equally, some countries forbid the limitation and exclusion of liabilities mentioned above for the consecutive or incidental damages, consequently the present limitation of liability might not be applicable in this case.

10.Non-Disclosure.
The LICENSEE undertakes to respect the confidentiality of information and document which are prensented as such by THE AUTHOR, particularly the present Agreement and the results of any benchmark tests, without prior written consent of THE AUTHOR.

11.Governing Law.
This agreement shall be governed by the french laws.

YOU ACKNOWLEDGE TO HAVE READ, UNDERSTOOD AND AGREED TO BE BOUND BY THE TERMS AND CONDITIONS OF THE CONTRACT INDICATED ABOVE.
Should you have any questions, please contact THE AUTHOR or the nearest distributor.

* Notice to United States Government end users:
Use, duplication or disclosure by the US Government is subject to restrictions stated in paragraph (c) (1) (ii) of the Rights in Technical Data and Computer Software clause at 252.227-7013.

Stuff ToolKit for 4D and the Stuff ToolKit Logo are trademarks of Christian Quest

Stuff ToolKit ©1999-2000 Christian Quest - All rights reserved

Portions of Stuff ToolKit are Copyright © 1990-99 Aladdin Systems, Inc.


Welcome to Stuff ToolKit™ !

Stuff ToolKit™ is a 4th Dimension plug-in that allow to use Aladdin Systems Stuffit Engine directly from 4th Dimension programming language.

 


Overview of features

With Stuff ToolKit you can:
  • stuff and unstuff files using Stuffit, ZIP or BZip compression algorithms
  • encrypt stuffed files
  • verify stuffed and/or encrypted files
  • mount and unmount disk images in several formats
  • decompress other non Stuffit compressed files
  • decode most encoded files

The full list of file formats recognized by Stuff ToolKit depend on the version of the Stuffit Engine you've installed on your system. Please refer to your Stuffit Engine documentation or readme files for more details.

Stuff ToolKit comes in two versions, a "light" version not including the Stuffit Engine, and a "Pro" version including Stuffit Engine.


 

System requirements

Operating System

The current version of Stuff ToolKit only works on Macintosh computer running System 7.5 and above.

 

A Windows version of Stuff ToolKit is under development. For more info, please contact stuff-toolkit-windows@cquest.org

 

Stuffit Engine™ requirement

Stuff ToolKit comes in two versions, a "light" version not including the Stuffit Engine, and a "Pro" version including Stuffit Engine.

Stuff ToolKit Light cannot run without the help of Stuffit Engine from Aladdin Systems, Inc.

If Stuffit Engine is not installed on your computer, we recommand you to install one of Aladdin's products (like "DropStuff") which will install an unregistered version of Stuffit Engine.

Stuff ToolKit Pro doesn't need that Stuffit Engine be installed because Stuffit Engine is integrated directly in Stuff ToolKit Pro plugin.

 


Getting help - Technical support

All technical support regarding Stuff ToolKit is done exclusively by email: stuff-toolkit-support@cquest.org

A dedicated mailing list is also available. To subscribe to this mailing list, just send an email to: stuff-toolkit-talk-on@ lists.cquest.org

Stuff ToolKit web site is available at: http://www.cquest.org/stuff-toolkit/

 


Version History

v1.1 (24-Mar-2000)
  • fixed problems in most option flags that where not recognized as described by the manual.
  • added support for Stuffit Engine 5.5 new features including ZIP and BZip compression, Windows self extracting Stuffit and ZIP files with the following new routines:

 


Installing Stuff ToolKit

Just copy the "StuffToolKit-Light.4DX" or 'StuffToolKit-Pro.4DX" file into the Mac4DX folder of the 4th Dimension Database in which you want to use Stuff ToolKit.

There's nothing more to do !

Demo version

Stuff ToolKit Light will run for a 30 minute period if no valid licence number is provided. After that evaluation or demonstration period, Stuff ToolKit Light will not run anymore. You'll have to quit your 4D database then relaunch it to be able to use it for an additionnal evaluation/demonstration period of 30 minutes.

Stuff ToolKit Pro can't be used for evaluation or demonstration. Stuff ToolKit Pro will only run with a valid Stuff ToolKit Pro license number.

 

License numbers

The license number you received after purchasing Stuff ToolKit Light or Stuff ToolKit Pro must be passed to Stuff ToolKit using the SE_Init command.

Stuff ToolKit Light license numbers are starting with "ZTKL", Stuff ToolKit Pro license numbers are starting with "ZTKP".

Stuff ToolKit Light will recognize Stuff ToolKit Pro license numbers, but Stuff ToolKit Pro will not recognize Stuff ToolKit Light license numbers.

The first 4 chars are uppercase letters (A..Z), all other chars are digits (0..9).

 


Using Stuff ToolKit

The following section of this document will review each Stuff ToolKit command, the parameters you can pass to it, the optional flags values and the error it may return.

 

Initialization and version checking

SE_Init

Syntax: err := SE_Init(part1; part2)

Parameters:

-> part1 (alpha) first part of Stuff ToolKit license number

-> part2 (longint) second part of Stuff ToolKit license number

<- err (longint) negatives values indicate that an error occured

 

Note:

See "License numbers" for more details on Stuff ToolKit license numbers.


SE_GetVers

Syntax: err := SE_GetVers(pluginVers; libVers; engineVers)

Parameters:

<- pluginVers (longint) encoded in hexadecimal (ex: 16781057 = $01000F01 = v1.0 F 1)

<- libVers (longint)

<- engineVers (longint)

<- err (longint) negatives values indicate that an error occured


SE_Registered

Syntax: registered := SE_Registered

<- registered (longint) 1= Stuffit Engine is registered


Stuffit and Unstuffing files

SE_Stuff

SE_Stuff will compress the source file using the Stuffit algorithm and produce the destination file.

 

Syntax: err := SE_Stuff(source; destination; flags)

-> source (Alpha) indicate the full pathname of the file or folder to compress

-> destination (Alpha) indicates the full pathname of the compressed file

-> flags (longint) is a list of options (see valid options in table#1)

<- err (longint) MacOS error code

 

Example:

` compress a single file
myErr := SE_Stuff("Macintosh HD:OriginalFile";"Macintosh HD:Archive.sit";SE_Conflict_Replace+SE_DeleteOriginal)

` compress a folder
myErr := SE_Stuff("Macintosh HD:MyFolder:";"Macintosh HD:CompressedFolder.sit";SE_Conflict_Replace+SE_DeleteOriginal)


SE_Unstuff

SE_Unstuff will unstuff (decompress) the source file.

 

Syntax: err := SE_Unstuff(source; destination; flags)

-> source (Alpha) indicate the full pathname of the file to decompress

-> destination (Alpha) indicates the full pathname of the uncompressed file

-> flags (longint) is a list of options (see valid options in table#1)

<- err (longint) MacOS error code

 

Example:

myErr := SE_Unstuff("Macintosh HD:Archive.sit";"Macintosh HD:";SE_PromptForDestination+SE_DeleteOriginal)


SE_ZIP (new in v1.1, needs Engine 5.5 or above)

SE_ZIP will compress using the ZIP algorithm the source file and produce the destination "ZIP" file.

 

Syntax: err := SE_ZIP(source; destination; flags; compLevel; pass)

-> source (Alpha) indicate the full pathname of the file or folder to compress

-> destination (Alpha) indicates the full pathname of the compressed file

-> flags (longint) is a list of options (see valid options in table#1)

-> compLevel (longint) is a value between 1 and 9 (1 = faster compression, 6 = normal, 9 = slower but better compression)

-> pass (Alpha) is a password used to encrypt the resulting ZIP file (not implemented in Stuffit Engine v5.5)

<- err (longint) MacOS error code

 

Example:

` compress a single file
myErr := SE_ZIP("Macintosh HD:OriginalFile";"Macintosh HD:Archive.zip";SE_Conflict_Replace+SE_DeleteOriginal)

` compress a folder
myErr := SE_ZIP("Macintosh HD:MyFolder:";"Macintosh HD:CompressedFolder.zip";SE_Conflict_Replace+SE_DeleteOriginal)


SE_BZip (new in v1.1, needs Engine 5.5 or above)

SE_BZip will compress the source file using the BZip algorithm and produce the destination file.

 

Syntax: err := SE_BZip(source; destination; flags; compLevel)

-> source (Alpha) indicate the full pathname of the file or folder to compress

-> destination (Alpha) indicates the full pathname of the compressed file

-> flags (longint) is a list of options (see valid options in table#1)

-> compLevel (longint) is a value between 1 and 9 (1 = faster compression, 6 = normal, 9 = slower but better compression)

<- err (longint) MacOS error code

 

Example:

` compress a single file
myErr := SE_BZip("Macintosh HD:OriginalFile";"Macintosh HD:Archive.bz2")


SE_SIT2SEA

SE_SIT2SEA will convert a stuffit compressed file (.sit) into a self-extracting application (.sea).

 

Syntax: err := SE_SIT2SEA(source)

-> source (Alpha) indicate the full pathname of the file to convert

<- err (longint) MacOS error code

 

Example:

myErr := SE_SIT2SEA("Macintosh HD:Archive.sit")


SE_Verify

SE_Verify will check the integrity of a stuffit file.

 

Syntax: err := SE_Verify(source; password)

-> source (Alpha) indicate the full pathname of the file to check

-> password (Alpha) indicate the optional password of the file

<- err (longint) MacOS error code

 

Example:

myErr := SE_Verify("Macintosh HD:Archive.sit";"myPassword")


SE_ConvToEXE (new in v1.1, needs Engine 5.5 or above)

SE_ConvToEXE will convert a Stuffit or ZIP compressed file (.sit or .zip) into a Windows self-extracting application (.exe).
Note: The converted file is not renamed, you have to rename it.

 

Syntax: err := SE_ConvToEXE(source)

-> source (Alpha) indicate the full pathname of the file to convert

<- err (longint) MacOS error code

 

Example:

myErr := SE_ConvToEXE ("Macintosh HD:Archive.sit")


SE_ConvFromEXE (new in v1.1, needs Engine 5.5 or above)

SE_ConvFromoEXE will convert a Stuffit or ZIP Windows self-extracting application (.exe) into a Stuffit or ZIP compressed file (.sit or .zip).
Note: The converted file is not renamed, you have to rename it.

 

Syntax: err := SE_ConvFromEXE(source)

-> source (Alpha) indicate the full pathname of the file to convert

<- err (longint) MacOS error code

 

Example:

myErr := SE_ConvFromEXE ("Macintosh HD:Archive.exe")


Encoding and expanding files

SE_Encode

SE_Encode can be used to encode a file in BinHex or MacBinary format.

A BinHex file a text file containing only 7bit ASCII characters.

A MacBinary file is a "binary" file using 8bit data.

Both encodings retain Macintosh specific informations (resource fork, creator and type signature, etc).

 

Syntax: err := SE_Encode(source; destination; encodingType; flags)

-> source (Alpha) indicate the full pathname of the file to encode

-> destination (Alpha) indicates the full pathname of the encoded file

-> encodingType (longint) indicated the type of encoding (SE_EncodeBinhex = 1, SE_EncodeMacBinary = 2)

-> flags (longint) is a list of options (see valid options in table#1)

<- err (longint) MacOS error code

 

Example:

err := SE_Encode("Macintosh HD:OriginalFile";"Macintosh HD:EncodedFile.hqx";SE_EncodeBinhex)


SE_GetFormat

Before expanding a file, it is usefull to know which type of file it is. SE_GetFormat returns the kind of file format of the given file.

 

Syntax: format := SE_GetFormat(source)

-> source (Alpha) indicate the full pathname of the file

<- format (longint) indicated the format of the source file (see table#2)

 

Example:

format := SE_GetFormat("Macintosh HD:OriginalFile")
If (format = SE_FormatUnknown)
  Alert("Unknown file format !")
Else
  err := SE_Expand("Macintosh HD:OriginalFile";""Macintosh HD:ExpandedFile")
End if


SE_Expand

SE_Expand can be used to expand a lot of different encoding and compression file formats (see table#2 ).

 

Syntax: err := SE_Expand(source; destination; flags)

-> source (Alpha) indicate the full pathname of the file to encode

-> destination (Alpha) indicates the full pathname of the encoded file

-> flags (longint) is a list of options (see valid options in table#1)

<- err (longint) MacOS error code

 

Example:

err := SE_Expand("Macintosh HD:EncodedFile";"Macintosh HD:ExpandedFile";SE_PromptForDestination)


Stuffit segments

SE_CountSeg

SE_CountSeg can be used to determine the number of segments that SE_MakeSeg will produce.

 

Syntax: err := SE_CountSeg(source; segSize; numSeg)

-> source (Alpha) indicate the full pathname of the file to segment

-> segSize (longint) size in bytes of the segments

<- numSeg (longint) returns the number of segments

<- err (longint) MacOS error code

 

Example:

err := SE_CountSeg("Macintosh HD:EncodedFile";1024*1024;numSeg)
Alert("This file will require "+String(numSeg)+" segments.")


SE_MakeSeg

SE_MakeSeg creates a segmented version of the given file. Segmenting a file can be usefull when copying large files on floppies or sending large files using email.

 

Syntax: err := SE_MakeSeg(source; destination; segSize; flags)

-> source (Alpha) indicate the full pathname of the file to segment

-> destination (Alpha) indicates the full pathname of the segmented files

-> segSize (longint) indicates the size in byte of the segments

-> flags (longint) is a list of options (see valid options in table#1)

<- err (longint) MacOS error code

 

Example:

err := SE_MakeSeg("Macintosh HD:Archive.sit";"Macintosh HD:";SE_MakeSEA)


SE_IsFirstSeg

SE_IsFirstSeg can be used to determine if a given file is the first segment of a segmented stuffit file.

 

Syntax: isFirstSeg := SE_IsFirstSeg(source)

-> source (Alpha) indicate the full pathname of the file to encode

<- err (longint) MacOS error code (1 indicate that the file is the first segment)

 

Example:

If (SE_IsFirstSeg("Macintosh HD:SegFile.sit")=1)
  err := SE_JoinSeg("Macintosh HD:SegFile.sit"; "Macintosh HD:JoinedFile")
End If


SE_JoinSeg

SE_JoinSeg can be used to join segmented files are restore the original unsegmented file.

 

Syntax: err := SE_JoinSeg(source; destination; flags)

-> source (Alpha) indicate the full pathname of the first segmented file to join

-> destination (Alpha) indicates the full pathname of the joined file

-> flags (longint) is a list of options (see valid options in table#1)

<- err (longint) MacOS error code

 

Example:

err := SE_JoinSeg("Macintosh HD:Archive.sit";"Macintosh HD:JoinedFile";0)


Disk images

SE_MountImage

SE_MountImage can be used to mount a disk image on the desktop.

 

Syntax: err := SE_MountImage(source; flags; driveNum; volName)

-> source (Alpha) indicate the full pathname of the file to segment

-> flags (longint) is a list of options (see valid options in table#1)

<- driveNum (longint) is the drive reference number of the mounted disk image

<- volName (Alpha) is the volume name of the mounted disk image

<- err (longint) MacOS error code

 

By default, disk images are mounted locked, use SE_MountUnlocked to mount them as read/write volumes. Be aware that some disk images cannot be mounted unlocked (compressed disk images for example).

 

Example:

err := SE_MountImage("Macintosh HD:Disk1.img";SE_VerifyBeforeMount;driverNum;volName)

...

err := SE_UnmountImage(driveNum; volName)


SE_UnmountImage

SE_UnmountImage unmount a previously mounted disk image.

 

Syntax: err := SE_UnmountImage(driveNum; volName)

-> driveNum (longint) is the drive reference number of the mounted disk image

-> volName (Alpha) is the volume name of the mounted disk image

<- err (longint) MacOS error code

 

Example:

err := SE_MountImage("Macintosh HD:Disk1.img";SE_VerifyBeforeMount;driverNum;volName)

...

err := SE_UnmountImage(driveNum; volName)


Tables

Table 1 - Option values

SE_Stuff
SE_Unstuff
SE_Expand
SE_Encode
SE_MountImage
SE_MakeSeg
SE_JoinSeg

SE_Zip

SE_BZip

SE_Conflict_Prompt (default) = 0
SE_Conflict_Replace = 1
SE_Conflict_Rename = 2
SE_Conflict_Skip = 3

X
X

 

 

 

 

 

X
 

SE_DontCreateFolder (default) = 0
SE_SmartCreateFolder = 4
SE_AlwaysCreateFolder = 8

 

X
X

 

 

 

 

 

 

SE_NeverConvertText (default) = 0
SE_SmartConvertText = 16
SE_AlwaysConvertText = 32

 

X
X

 

 

 

 

 

 

SE_DeleteOriginal = 64

X
X
X
X

 

X
X
X
X

SE_StopOnAbort = 128

 
X

 

 

 

 

 

 

 

SE_PromptForDestination = 256

 

X

 

  

 

 

 

 

 

SE_SaveComments = 512

 

X

 

 

 

 

 

 

 

SE_EncryptOriginal = 1024

X

 

 

 

 

 

 

X 2

 

SE_ResolveAlias = 2048

X

 

 

 

 

 

 

X

 

SE_AddLineFeeds = 4096

 

 

 

X1

 

 

 

 

 

SE_MountUnlocked = 1

 

 

 

 

X

 

 

 

 

SE_VerifyBeforeMount = 2

 

 

 

 

X

 

 

 

 

SE_MountInRAM = 4

 

 

 

 

X

 

 

 

 

SE_MakeSEA = 1

 

 

 

 

 

X

 

 

 

SE_EncodeBinHex = 1

 

 

 

 

 

 

 

 

 

SE_EncodeMacBinary = 2

 

 

 

 

 

 

 

 

 

SE_MacBinary_Never = 0
SE_MacBinary_Smart = 8192
SE_MacBinary_Always = 16384

 

 

 

 

 

 

 

X

 

1For BinHex encoding only
2Currently not supported by Stuffit Engine 5.5

Table 2 - File formats (Stuffit Engine 5.5 and above)

SE_FormatUnknown

0

Unknown file format2

SE_FormatStuffit

1

Stuffit compressed file

SE_FormatBinhex

2

Binhex encoded file(see SE_Encode)

SE_FormatCompactPro

3

Compact Pro compressed file-

SE_FormatAppleLinkPKG

4

AppleLink "PKG" compressed file

SE_FormatZIP

5

ZIP compressed file

SE_FormatARC

6

ARC compressed file

SE_FormatUnixCompress

7

Unix "compress" compressed file

SE_FormatUUcode

8

uucode encoded file

SE_FormatMacBinary

9

MacBinary encoded file (see SE_Encode)

SE_FormatTAR

10

Unix TAR (tape archive) file

SE_FormatMIME

11

MIME (Multipart Internet Mail Extension) encoded file

SE_FormatStuffitSegment

12

Stuffit segmented file (see SE_JoinSeg, SE_MakeSeg)

SE_FormatPrivateFile

13

Private File encrypted file

SE_FormatLHA

14

LHA compressed file

SE_FormatShrinkWrap3

15

ShrinkWrap 3 disk image file

SE_FormatShrinkWrapSMI3

16

ShrinkWrap 3 sefl mount image file

SE_FormatNDIF

17

DOS disk image file

SE_FormatDiskCopy42

18

Disk Copy 4.2 disk image file

SE_FormatDriveContainer

19

DriveContainer disk image file

SE_FormatDiskDupPlus

20

DiskDupPlus disk image file

SE_FormatMSDOS

21

DOS disk image file

SE_FormatDART

22

DART disk image file

SE_FormatStuffitDlx

23

Stuffit Deluxe compressed file

SE_FormatRAR1

24

RAR compressed file

SE_FormatBZip1

25

BZip compressed file

SE_FormatFloppierImage1

26

Floppier disk image file

SE_FormatFastCopyImage1

27

FastCopyImage disk image file

SE_FormatDiskCopyCmpImage1

28

Apple Disk Copy compressed disk image file

SE_FormatAladdinSEA1

29

Stuffit Windows self-extracting files

SE_FormatDiskDoubler1

30

DiskDoubler compressed file

1Introduced in Stuffit Engine v5.5
2Other value may be returned by more recent version of the Stuffit Engine.


Stuff ToolKit ©1999-2000 Christian Quest - All rights reserved

Written & © by Christian Quest - 24-Mar-2000