XXCOPY, a Versatile File Management Utility---Boldly Extended Xcopy



= - = - = - = Table of Contents = - = - = - =
  1. Summary of the XXCOPY Features
  2. XXCOPY Freeware, XXCOPY-Home, and XXCOPY-Pro Editions
  3. Freeware Licensing Terms
  4. XXCOPY Freeware Download
  5. XXCOPY Pro for Commercial Usage
  6. Free Test Drive of XXCOPY Pro Edition
  7. Ordering XXCOPY Pro License
  8. Free Update for XXCOPY Pro User
  9. Highlights of the Release
  10. Guidance and Reference (Technical Bulletins)
  11. XXCOPY Discussion Group
  12. Tech Support and Feedback
  13. XXCOPY Featured in Other Web Sites
  14. Screen Shots of XXCOPY
  15. About the Publisher --- Pixelab, Inc.

XXCOPY Version 3.00.0 Released 2010-01-01
xxsearch We have archived over 9000 messages that appeared in the XXCOPY discussion group over the past four years. The following search form helps you locate answers that you are looking for. Click the button below to reach the XARC Main page where the archived message can be conveniently browsed. xarc Enter keywords at the left with optional exclusion words at right.
Keywords: not:
Join the XXCOPY group

1. Summary of the XXCOPY Features

2. XXCOPY Freeware, Home, and Pro Editions

3. XXCOPY Freeware Licensing Terms

Pixelab, Inc, the copyright owner of the XXCOPY software package, grants a non-exclusive license without charge to an individual who intends to use the XXCOPY program for non-commercial purposes provided that all of the following additional conditions are met. You may use XXCOPY under this freeware license if:
  1. You install the XXCOPY program on a computer that is your own personal property and you are the primary user of the computer.

  2. If you transfer files between networked computers using XXCOPY, all of the computers are also your own personal property.

  3. Or, even if the above conditions are not met, you may still use XXCOPY for 60 days for evaluation purposes without charge.
If your situation does not qualify for the freeware license, the use of XXCOPY will be considered as a commercial usage. Please see the section on Corporate Site Licensing below.

This freeware version of XXCOPY is distributed AS IS and without any warranties. If you have problems, our liability is limited to $1.00 per site, that is much more than you paid for it.

XXCOPY is a trademark of Pixelab, Inc.

With the freeware license, you may give your friends a copy of the XXCOPY Freeware, as long as the package is not altered and remains as a whole. However, for distribution on a commercial basis, (even in a Freeware distribution CD-ROM, or download service), you must obtain a written permission from Pixelab, Inc.

Please note that Emails from freeware users may not be answered due to the large number of Emails we receive. If you wish to receive technical support by Email, you may consider acquiring a single user license even if your usage complies with the freeware license terms.

4. XXCOPY Freeware Download

The latest release (this page revised on 2010-01-01)

 Note: This version is compatible with Windows 7 RTM, Vista SP1, WinXP SP3 and Win2K SP4.

 XXCOPY   Freeware    Version 3.00.0     Released  2010-01-01


For the trial version of XXCOPY PRO Edition or XXCOPY Home Edition, see below.

Join the XXCOPY group

5. XXCOPY Pro Edition for Commercial Usage

If you intend the XXCOPY software for commercial usage, you must use the XXCOPY Pro Edition. The XXCOPY Freeware package is designed strictly for personal usage under the XXCOPY Freeware License. (Although you may use XXCOPY Freeware for evaluation purposes for 60 days, we strongly recommend that you test drive XXCOPY Pro Edition for evaluation since it provides more convenience in testing, especially for a network environment.)

The XXCOPY commercial usage license is administered as a Site License which allows you to use XXCOPY to transfer files between networked computers. It also allows for multiple copies of XXCOPY to be used in your organization. The price of the Site License depends on the number of computers the XXCOPY program is executed and/or the computers the XXCOPY program accesses.

(See the Price Chart).

6. Free Test Drive of XXCOPY Pro Edition (or XXCOPY Home Edition)

If you are interested in XXCOPY Pro Edition (or XXCOPY Home Edition), you may receive the software package for evaluation purposes.   You may test the actual XXCOPY Pro (or Home) Edition for 60 days on a trial basis without obligation to purchase.

Please sign up the request form for the Pro Edition package.   We will send you the download and installation instructions by Email.

You may request an update even if you are already test-driving an earlier version (the 60-day countdown will not be reset though).

= = = = = Test Drive Request Form = = = = =

  Your Full Name:  
  Phone Number:    
  Company Name:    
  Zip/Postal Code: 
  Country:          (if not USA)

  Comments: (any special instruction)

  Select Product:  XXCOPY Pro (corporate use)
                   XXCOPY Home (personal use)
  Your Primary OS:       
  Approx. number of computers in your entire company:  
  Approx. number of computers that your group manages: 
  The number of computers you intend XXCOPY to access: 

  Languages you use: C C++ C# VB Java Perl Batch File
By requesting the XXCOPY PRO/Home software package, you are authorizing Pixelab, Inc. to send an Email with the Unzip password. Also, you agree to receive XXCOPY-related product release notifications in Email in the future (but no more than four such Emails per year).

I will accept occasional Emails for XXCOPY-related notification.

Please be assured that the information you furnish in this form will not be disclosed to a third party.

7. Ordering XXCOPY Pro License

XXCOPY-Pro  Corporate Site License Pricing

 License     The number   Per-computer   Initial    Support/Update 
 Package    of Computers     Price     License Fee   Subscription  
 XPLIC-002         2        US$50         US$100     US$50 / 2 yrs 
 XPLIC-005         5          $40           $200       $50 / yr    
 XPLIC-010        10          $36           $360       $90 / yr    
 XPLIC-020        20          $30           $600      $150 / yr    
 XPLIC-050        50          $24         $1,200      $300 / yr    
 XPLIC-100       100          $20         $2,000      $500 / yr    
   ...                                      ...                    

We do not offer a site license with a host count that falls between
two of the packages shown above (the next page shows more choices).
For a host count much larger than shown here, contact Pixelab.     

XXCOPY-Home  Personal User License Pricing

 License     The number   Per-computer    Total     Support/Update 
 Package    of Computers     Price     License Fee   Subscription  
 XHLIC-002         2          $20          $ 40        $40 / 4 yrs 
 XHLIC-005         5          $20          $100        $50 / 2 yrs 

All licenses are issued as a site license with varying host count.    
The Initial Fee includes the Support/Update Subscription for one year.
You may order a site license with a multiple-year subscription.       
The details of pricing and licensing policies are available [ here ]. 

Quotation No: (enter if you received one)
Click one of the buttons below.
71. Order (Free) Test Drive Package 72. Order (Free) Update 73. Order New License 74. Order Subscription Renewal 75. Order Quantity Upgrade

If you are a computer dealer, software dealer, system integrator,
consultant, or anybody who places an order of XXCOPY-Pro
license for resale to his/her client,  we provide a dealer discount.
33. Dealer Log-In and Order page

8. Free Update for XXCOPY Pro User

If you are an XXCOPY Pro user, you are permitted to download the latest XXCOPY Pro Edition package for free within the first year of your purchase. That is, our standard licensing policy comes with a subscription for the update download service.

Now, all XXCOPY download packages contain both the 32-bit and the 64-bit versions of XXCOPY for respective Windows type. Please click the following button for Free Update Request:

Go to the XXCOPY Update Request Form     
Join the XXCOPY group

9. Highlights of the Release

  1. New combined download packages
          XXCOPY (for 32-bit Wondows) and XXCOPY64 (64-bit Windows) are now
          packaged into one download module.  All of our XXCOPY products are
          packaged with both the 32-bit and the 64-bit versions in one download.
          Unzip the downloaded file and select either the 32-bit or the 64-bit
          directory and discard the other one.

  2. New Version with New Pricing
          XXCOPY has grown from a humble beginning to what it is today
          in the past ten years.  We believe the product has reached
          a new level that commands a new pricing and packaging.

    Starting with Version 3.00, we offer the following XXCOPY products. XXCOPY-Pro Our flagship package with all advanced features. XXCOPY-Home For home users with limited requirements. XXCOPY-Pro Test Drive Free Test Drive Package for a 60 day trial. XXCOPY-Home Test Drive Free Test Drive Package for a 60 day trial. XXCOPY-Freeware For stand-alone computers for home use. Existing customers may order an update subscription renewal or a quantity upgrade by 2010-03-31 at the lock-in price. To take advantage of the "Grandfather Clause" pricing, visit [ here ].

  3. New command switches introduced in XXCOPY Ver 3.00.0
          Many switches are added to handle the reparse points and hard links.
          (we collectively call them J-thingies).
          The following table shows the types of file and directory objects
          distinguished by XXCOPY.
             Type  Abbr.   Description
              F    [FIL]   Regular File      (not symbolic link nor hard link)
              S    [SYM]   Symbolic Link File (a reparse point)
              H    [HLK]   Hard Link  (file data shared with another hard link)
              D    <DIR>   Regular Directory (not a reparse point)
              L    <LNK>   Symbolic Link Directory (a reparse point)
              P    <JCT>   Junction Point (a reparse point)
              M    <MNT>   Volume Mount Point (a reparse point)
              J            Represents all J-thingies (S)(H)(L)(P)(M)
              R            Represents all Reparse Points (S)(L)(P)(M)
              The "Type" letters shown above will be used as the parameters
              for many command switches that are relevant to J-thingies.
          XXCOPY v.3.00.0 introduces many new functions that deal with the
          J-thingies (many of which are assigned to switches that starts with
          letter J.  Many of these switches takes a parameter with the 
          In the Windows system, reparse points behave very much like a real
          directory (or a file) when they are accessed by common application
          programs, including previous versions of XXCOPY.  On the other hand,
          in many occasions, we want such objects to be duplicated exactly as
          they are.
          The new XXCOPY allows you to choose either way to copy reparse points
          and hard links alike.  By default, the new XXCOPY (ver 3.00 or newer)
          treats all J-thingies (reparse points and hard link) as such.
            /JL   Treats directory symbolic links as symbolic links (default).
            /JP   Treats junction (non-mount) points as junction pts (default).
            /JM   Treats volume mount points as volume mount points(default).
            /JS   Treats file symbolic links as symbolic links (default).
            /JH   Treats file hard links as hard links (default).
            /JJ   Treats all J-thingies as such (shortcut for /JL/JP/JM/JS/JH)
            /JR   Treats reparse points as such (shortcut for /JL/JP/JM/JS)
          Or, you may let XXCOPY treat them as if they are a regular directory
          or file by the following switches.
            /JL0  Treats directory symbolic links as a regular directory.
            /JP0  Treats junction (non-mount) points as a regular directory.
            /JM0  Treats volume mount points as a regular directory.
            /JS0  Treats file symbolic links as a regular file.
            /JH0  Treats file hard links as a regular file.
            /JJ0  Treats all J-thingies as a regular directory or file.
            /JR0  Treats reparse points as a regular directory or file.
          ####### CAUTION to old XXCOPY users ###############################
            The default treatments of J-thingies by XXCOPY Ver 3.00 are now
            exact opposite to what they were with older XXCOPY versions.
            If you want XXCOPY to behave like the old versions with respect
            to the J-thingies, you need to add /JJ0 in the command line.
          You may use the object type for file/directory selection by
          the new exclusion function.
            /JX<mask>   Excludes one or more types of J-Thingies as well as
                        regular files and directories (F,D,S,H,L,P,M,J,R).
            /JI<mask>   Includes only the J-thingies specified.
                        This function is implemented as a shortcut of the
                        inverse function of /JX<mask>.
          When XXCOPY displays a reparse point on the screen, the path of the
          referenced object will be shown.
            /oR         Shows the reference path of a reparse point (default)
            /oR0        Disables the display of the reparse point reference path
          When an existing object in the destination is to be overwritten
          by a different J-thingy type, the user will be prompted.
            /PJ         Prompts on overwrite by a different j-thingy type
            /PJ0        Suppresses prompt on overwrite by different j-thingy type.
          When a file whose path contains a reparse point is to be deleted,
          the user will be prompted. 
            /PR         Prompts when a file with a reparse point path is to be deleted
            /PR0        Suppresses prompt on overwrite by different reparse point type.
          When an elements in the full path of the source or the destination
          specifiers contain a reparse point, XXCOPY will issue a warning prompt. 
            /WR         Warns when src/dst path contains a reparse point
            /WR0        Suppresses the warning for a reparse point in src/dst path 
          Since a reparse point directory can be created to form a cyclic
          reference, it could cause a recursive meltdown (for example,
          "C:\ProgramData\Application Data\" points to "C:\ProgramData\"
          that forms a infinite loop of reference).  XXCOPY detects such
          cyclic reparse points and prevents the recursive meltdown.
          XXCOPY has a command to show all occurrences of cyclic references.
            /JCYCLIC    Scans the source directory and lists all cyclic links
            /oC         Displays a cyclic link that is being skipped (default)
            /oC0        Suppresses the display of cyclic links that are skipped
          XXCOPY provides a bulk hardlink creation:
            /MLH        Makes a hard link file in dst for each file in src
            /ULH        Unlinks (convert hard links into regular files)

  4. New User Prompt (Y/N/A/Z)
          In addition to the traditional Yes/No (Y/N) prompt, XXCOPY
          offers a wider selection in the user response.
          The (Y/N/A/Z) prompts stands for Yes/No/All/Zilch
            Y    for YES on the single item
            N    for NO on the single item
            A    for YES for ALL remaining similar items
            Z    for NO for ALL remaining similar items
          In the past, the user was forced to use enter <Ctrl-Break>
          to abort the operation in lieu of typing N for the remaining
          cases.  On occasion (e.g., the prompt on file-overwrite),
          the user may wish to enter N to the remaining cases.  Now
          with a Z response will be treated as N for all without
          aborting the operation.
          Note the notorious (Y/N/A/R/S) prompt is abolished due to
          the difficulty in its use.  It was simply too hard to use.

  5. Controlling the Line with in the console output (and file output)
          XXCOPY's output line format used to be right-justified to the 80-column
          DOS Box display.  However, with many files with a pathname that exceeds
          the limit tended to make the standard display unsightly.  In short,
          the 80-column format is simply outdated.
          Starting with Ver 2.98.2, XXCOPY sets the output width automatically
          to the width of the current DOS Box.  The log file output (with /oN
          and /oA switch) will be set to the same width format (minimum = 80).
          Optionally, you may override the automatic line width adjustment by
          a /WI<n> switch.  The value for <n> may be anywhere between 80 and 1024.
          If <n> is zero (/WI0), then, XXCOPY will use the current DOS Box width
          (automatic mode). 

  6. Ver 2.98.0 is a bugfix release.
          This release is made in to fix a bug in the /CDU and /CDM functions.
          The feature is designed to make an air-tight testing in incremental
          backup operations (/BI and similar choices) that assumes that the
          timestamp and/or the file size sufficiently determine the need for
          a backup.  With the /CDU switch in addition to /BI, XXCOPY will
          check the file in the destination directory against its counterpart
          in the source on a byte-by-byte basis to determine the need for backup.

    XXCOPY's attempt to preserve the LastAccess timestamp of the source file after the file contents were read in the course of a file copy generated an error message with a write-protected source volume. Now, with a pre-testing of such a condition, the error message dialog is suppressed.

  7. The precise name matching scheme made the default.
          Starting with v2.97.9, XXCOPY no longer tests the short file name
          (SFN, the so-called 8.3 name) in the name-matching operation.
          That is, the /NP switch is now the default setting (formerly, /NP0
          was the default).  With the number of files in a directory that has
          steadily increased over the years, the probability of inadvertent
          matches with the SFN has become unacceptably high.  This is
          especially true with a name pattern with an embedded digit.
          The consequence of this change is that a pattern like *1.mpg will
          not give you a surprise by matching a file that happens to have
          a SFN like LENNON~1.MP3 without the explicit /NP switch.  Those
          who rely on the traditional file-matching scheme (accepts a match
          of the name pattern on either the LFN or the SFN) can still use
          the /NP0 switch to disables the precise name matching.

  8. Tested with Vista Service Pack 2
          For those who want to test XXCOPY with the new Vista (and Server 2008)
          Service Pack 2 (to be officially released later by Microsoft),
          XXCOPY v.2.97.8 is now ready for Vista SP2.

  9. The Exclusion feature fully revised!
          Starting with ver 2.97.7, XXCOPY's exclusion specifier
          supports the full implementation of Wild-Wildcard scheme
          where the wildcard characters (* and ?) can be used anywhere
          in the exclusion item in any number of time without.  Earlier
          versions of XXCOPY had a complicated set of rules on where
          wildcard characters were allowed.  
          The removal of the messy rules should allow the user more
          liberal use of wildcard without the fear of syntactic errors.
          See the revised Technical Bulletin #05.
          A new switch is added; /GX accommodates the old syntax --- an
          exclusion specifier that ends with \?\* which is no lnoger
          treated for the special meaning.

  10. New switch, /ZLX for a "dry-run" of exclusion action.
          By adding a /ZLX switch in your command, you can obtain a list
          of files and directories that woudl be excluded in the given
          set of exclusion specifiers (via /X and /EX parameters) without
          files actually being copied or deleted.
          This feature is analogous to the /L function that provide a list
          of files being selected for file actions.

  11. The Very Long Pathname (VLP) support
          Starting with ver 2.97.4, XXCOPY supports a pathname whose length
          exceeds the official Win32 pathname limit of 259 characters.
          Since the NTFS file system was designed with a much larger limit
          (32767 characters), many users want it supported by XXCOPY.
          We at last gave in to the popular demand with great reluctance.
          Please do not ask for our help when your files in directories
          with a very long path cannot be accessed easily.  You will be
          surprised that there are so few applications that can handle VLPs.
          The following switches are introduced to support the VLP feature:
            /VL0   // stays with the default path len limit (259 characters)
            /VL    // sets the maximum path length to 32767 (the NTFS limit)
            /VL<n> // sets the max path length to n characters
            Note that you may set the maximum path length to a value smaller
            than 259 where XXCOPY refrains itself from creating a file or
            directory whose total path exceeds the limit.
            /WL    // displays a warning when pathname is too long (default)
            /WL0   // disables the warning display for pathname too long
          Note: FAT volumes are bound to the official Win32 limit on the
                maximum pathname limit (259 characters).
          The length of the name of a single file or directory component
          is limited to 255 characters regardless of the /VL settings,
          or file system (FAT or NTFS).
          The CDFS (ISO 9660) volume has a different set of length limitations.

  12. The size of the file copy buffer is increased.
          For quite sime time, XXCOPY had an internal fixed-size buffer
          for file read/write operation whose size was 256 KB (that was
          set almost 10 years ago).  From now, starting with ver 2.97.4,
          the default buffer size will be 32 MB to reflect today's
          typical computing environments.  Furthermore, we allow the user
          to optimize the buffer size to fit the needs of the user
          The following new switches are added:
            /ZB<n> // sets the size of the file copy buffer (in bytes)
            /ZB0   // Cancels the buffer size setting (reverts the default)
          You may use a suffix (K, M, or G).  In this case (unlike other
          context where they represent metric (decimal) units), the K, M,
          and G suffixes are interpreted as 2**10, 2**20, and 2**30,
          respectively.  The buffer size will always be ajusted to a
          multiple of 512 for efficient file I/O.
            E.g., /ZB:256M
          The copy buffer will be adjusted with the following parameters.
            XXCOPY edition        Minimum    Default     Maximum
           32-bit (XXCOPY)        256 KB      32 MB        1 GB
           64-bit (XXCOPY64)        1 MB     128 MB        1 GB
          The copy buffer size is also related to the way the
          "Safe File Overwrite" is carried out (See below).  In
          general, the larger the buffer size, the more efficient
          (and safer), the worst-case file overwrite operations
          will become.

  13. Safe File Overwrite
          XXCOPY now implements what we call "Safe File Overwrite"
          feature that enhances the reliability of using XXCOPY in
          backup operarations.  XXCOPY in the past worked well with
          healthy disk volumes.  However, it failed to prevent certain
          file loss due to hard disk failure in rare situations.  The
          new scheme eliminates the data loss even in a worst case
          scenario.  The new default behavior is to strike a reasonable
          balance of safety and efficiency.
            /So    // Enables Standard Safe File Overwrite (Same as /So1).
            /So0   // Disables Safe File Overwrite.
            /So1   // Enables Standard Safe File Overwrite (default).
            /So2   // Enables Very Safe File Overwrite (using tmp file).        
          When Safe File Overwrite is disabled (/So0), the
          destination file will be opened for overwrite after the
          buffer is filled with the source file data.  When the source
          file is larger than the buffer size, then, multiple cycle
          of read-source and write-destination loop needs to be made.
          If a file-read error takes place after the destination file
          is commited for file-overwrite operation, the original data
          discarded at the time of file open will be lost.  This is the
          possibility that can now be avoided by the new scheme
          with /So1 (or simply /So).
          The "Very Safe File Overwrite" scheme (/So2) goes one step
          further by renaming the destination file whenever the
          existing file in the destination directory is to be
          overwritten.  The file overwrite operation will be converted
          to a series of rename-existing-file and creation of the new
          destination file.  This setting will virtually eliminte the
          possibility of error in the file-read, file-write, rename
          operations in the expense of some efficiency.
          Note that XXCOPY cannot eliminate the possibility of errors
          discovered by the system in the course of "delayed-write".

  14. XXCOPY64 for the Windows 64-bit versions
          Starting with ver 2.97.3, the 32-bit version of XXCOPY will no longer
          support the 64-bit Windows environment.  A new version of XXCOPY for
          Win64 is now available for 64-bit versions of Windows (XP x64, Vista x64,
          Server 2003 x64 and Server 2008 x64). 

  15. A number of small changes and bugfixes on v.2.97.1 (alpha for v 3.xx)
          /FM (and /L) now accepts commas in the format to suport CSV output
          Bugfix /as/ar/fo/fmaz  the size value output now shows the correct value
          Now, /AN will not tolerate and ignore the C-bit.  /AN supports AHSR only
          /WU/WU0 now documented
          With /TTA, source directory timestamp not restored
          Tested with Vista SP1
          Bugfix on command text parsing /F, /FR... (switches with first letter F)
          /SP (Span over multiple desination (removable volume) safer.

  16. Unicode support!!!
          Finally, the long awaited version with Unicode support is with us.
          XXCOPY no longer relies on the current setting of code page for
          its processing of files and directories for file-access operations.
          The most common method of invoking XXCOPY will likely remain to be
          the console window (the so-called DOS Box), that is restricted to
          8-bit (ANSI) character set (non-Unicode).  In order to specify
          Unicode based strings in file and directory names, one may use the
          /CF (command file) and /EX (exclusion list).  These files can be
          either in the traditional ANSI text format, or in the UTF-8 encoded
          Unicode text format with the presence of the Byte-Order Mark (BOM)
          at the beginning of the file.
          With the new /UT switch, you may force XXCOPY's output files to be
          in UTF-8 encoded Unicode text (for backward compatibility, the
          output file will be in 8-bit ANSI text).  The new /PW switch will
          help display the filename in Unicode in a dialog window when XXCOPY
          issues a user-prompt with a file/directory.
          For the most authoritative reference, 
          Please note that the new set of switch variations (/oUN, /oUA, /FUo,
          /CUF and /EUX for /oN, /oA, /Fo,/CF and /EX respectively --- introduced
          in v.2.97.0) are now rescinded.  The single switch, /UT (and /UT0 to
          cancel it) will uniformly control *ALL* of the output files rather
          than individually.

  17. Improvement on /oD2 and /oD3

    Although the /oD2 and /oD3 functions worked well on the console, the files to be deleted by the /Z (and /ZY) switch were not listed in the log file (by /oN or /oA) when the operation is for list-only (/L). Starting with ver 2.96.3, the files to be deleted are also listed in the log file.

  18. Data-Comparison functions added
          Pprevious versions of XXCOPY supported the file data comparison on
          a byte-by-byte basis as a verify operation immediately after the file
          is copied.  However, XXCOPY lacked the ability to compare file contents
          in any other context.  Starting with Ver 2.96.3, a new set of switches,
          /CDM, /CDU, /CDX and /CD0 are added to address the needs that a number
          of users requested in the past.  These switches perform a file-selection
          operation on their own, or in combination with other file-selection
          /CDM      // Compares file data and selects the file if matched.
          /CDU      // Compares file data and selects the file if unmatched.  
          /CDX      // Selects files with unmatched data and also brand new files.  
          /CD0      // Does not compare file data (default).
          The three switches are mutually exclusive (if two or more such switches
          are specified, the last one will prevail).  They can be combined with
          any other switches.
            xxcopy \src\ \dst\  /bi /cdu     // skip files that match exactly
            xxcopy \src\ \dst\  /clone /cdu  // combine with the popular switch
              In the above examples, the addition of the /CDU switch makes
              sure the incremental backup operation does not take chances in
              determining files that are truly identical.   A file in the
              source directory that matches in the timestamp and the size to
              its counterpart in the destination directory will be further
              scrutinized by a byte-by-byte comparison before treated as
              truly identical.  Without the /CDU switch, the files with
              matching timestamp and filesize will be skipped even though
              there is a small possibility that the file contents vary.
              Although the favorable assumption (without the use of /CDU)
              is reasonable and necessary for speedy operation, the new
              feature satisifies demainding users' needs.
            xxcopy \src\ \dst\  /bs /cdu /l  // select files that differ in data
              This command makes a list of files that would be erroneously
              treated identical to their backup copy even though their
              contents are different.  If the operation generates a null list,
              that validates that the operation without the time-consuming
              data comparison is good.
            xxcopy \src\ \dst\  /rs /bs /cdm  // deletes truly identical files
              This command deletes files from the source directory only when
              there is a perfect backup copy in the destination directory.
           The /CDX function is a more generalized than /CDM where /CDX
           does not exclude the brand new files.  That is, /CDX is to exclude
           the files strictly by the result of file-data comparison that
           does not exclude files that are not subjected to data comparison.
           In other words, the /CDX/U combination is equivalent to /CDM.
           (/CDX is rarely useful but is provided mostly for symmetry's sake.)  
           XXTB #45 (http://www.xxcopy.com/xxcopy45.htm) explains the detail.

  19. With Ver 2.96.0, supports Windows Vista.

    XXCOPY's program image comes with a built-in manifest that complies with the User Access Control (UAC) scheme. It elevates the privilege from the Standard user to the Administrator Aproval mode (via the mandatory user prompt).

    For those who want an XXCOPY that remains a Standard User application which does not elevate the privilege (and will not access the Administative control resources such as the root and the Windows directories without causing the system to limit such accesses to be confined into a system-imposed virtualized objects (in sandbox).

    For detailed discussion with UAC-related topic, see XXTB #42.

  20. The File share mode setting is made more conservative than before.

          Prior to Ver 2.96.0, XXCOPY used to open the source file with file share
          for both read and write operations.  We found a rare case where
          this practice result in an invalid file copied, XXCOPY no longer shares
          the source file when the program is being modified.
          To manually control the file-share setting of the source file, the
          following new switches are added.
               /SHR              // Enables read-share  (default)
               /SHW              // Enables write-share
               /SHRW or /SHWR    // Enables rd/wr-share (old default)
               /SH0              // Disables file share (most conservative)
          By enabling a concurrent access with another program, the /SHR setting
          somewhat speeds up the operations (or avoid mostly unnecessary delay).
          However, there are very rare cases of corrupted file as a result of
          concurrent access of file that is being modified.  The default setting
          (/SHR) seems to strike a fair balance of pro and con for most users.
          See XXTB #44 for details.

  21. With Ver 2.95.1, output control functions were extended

    1. Addition of three more format control parameters
      (used in /FM:xxxx and /L:xxx).

      R     // Relative Pathname
      N     // Name (Long Filename without its path)
      P     // Parent Directory Pathname

      E.g., xxcopy c:\mydir\*.txt /S /L:N

      For more information, run the following command

      xxcopy /L /HELP

    2. New switch /oQ to surround pathnames and filenames with a pair of quotation marks (/oQ0 to disable)

      E.g., xxcopy c:\mydir\*.txt /S /oQ /L:R

  22. Starting with Ver 2.95.0, the compression attribute for file and directory is supported.

    With a /FM:C (or /L:C) switch, the C-bit (Compress mode) will be shown. /AS:C and /AR:C are also supported (to set or reset the C-bit).

    The /AS and /AR functions are extended with /ASD and /ARD that act on directories rather than on files.

    The Manifest is linked into the executable file for Vista UAC.

  23. Desktop Icon for XXCopy on Installation.

    In order to help novice users who are not familiar with the DOS Box, the installation procedure will create a shortcut icon of XXCopy on the Desktop. This feature may be disabled with /IDI0 (in conjunction with /INSTALL).

  24. Bug fix with a blocked file.

    With previous versions, when XXCOPY encounters a file whose contents are blocked by another process (that usually results in a failed copy), the destination file (to be overwritten) will be deleted as a result. Starting with v.2.93.0, XXCOPY will defer the opening of the destination file until the first successful read from the source file. This method prevents the rare situation of an undesirable deletion of a destination file due to the failure in file-overwrite.

  25. Security Information including the directory ownership can be backed up correctly starting with v.2.92.9.

    We removed a bug that prevented the ownership to be properly assigned to destination directories with /SC and /SF.

  26. The directory timestamps are now preserved (in NT/2K/XP).

    A bug has prevented the directory timestamps to be preserved with the /TC switch. Now, it should work.

  27. Starting with v.2.92.9, one more variation in display format. /FMH (or /LH) shows the three flavors of timestamps

    Although many people are aware of the three types in timestamps, there are few tools to show them convenently (Windows Explorer is extremely cumbersome for this purpose). Try XXCOPY \src\ /LH The order of the three timestamps in this command is always Creation-time, Last-Write-time, Last-Access-time (hint: these happen to be in chronological order in most cases).

  28. /Z disabled when a /AA, /AZ, /AN, /AR, /AS, /ARD, or /ARD operation is in effect.

    Starting with ver 2.92.8, /Z (or /ZY) will be automatically disabled with /AA (and its variations) operations.

    Since the /AA /Z combination is not useful in most cases, we decided that the /Z function be automatically disabled in an /AA operation (and its variations). This is consistent with other similar circumstances (e.g., /SX or /SG) where the /Z function is disabled.

  29. /PP and /PP0 added

    With ver 2.92.7, the space bar function to toggle the console-output action is now documented and the user has control on enabling or disabling the feature by the new /PP and /PP0 switches.

    /PP enables the space bar press-for-pause function (default) /PP0 disables the space bar press-for-pause function

    In /PP (default) mode, XXCOPY's console output can be toggled by pressing the space bar (alternative to the Ctrl-S/Ctrl-Q feature).

    Prior to this, XXCOPY's output control function by the space bar has not been officially documented. We felt that this feature was simply an extension to the archaic X-ON/X-FF (Ctrl-Q/Ctrl-S) protocol that seldom mentioned in Microsoft's documentation. Some time ago, we added a message that alert the unsuspecting user why the console output is suspended. But, we hear users wanting to disable this feature entirely. (The X-ON/X-OFF protocol that quietly toggles the console output is left untouched.)

  30. The Exit code with /ER when no-file selected is now changed.

    Starting with v2.92.5, in the Win NT/2K/XP environments, XXCOPY will return an exit code of 0 with the /ER switch when no files are selected in the operation. Without /ER, the exit code is still 100. This change is to emulate XCOPY's inconsistent behavior with the exit code (treating differently depending on the Windows version).

  31. Progress Bar Updated.

    With ver.2.92.4, the Halt/Abort button in the progress bar window can be disabled with the /PBH0 switch (default: /PBH enables the button).

  32. More efficient use of memory.

    With ver.2.92.3, some memory allocation scheme was optimized to reduce the memory demnad even more.

  33. /PZ warning message made more threatening

    In order to reduce an inadvertent invocation of a /CLONE operation by novice users (who do not read docs), the wording now includes the consequence of the operation.

  34. DATMAN-support eliminated (Memory usage reduced).

    Starting with v2.92.0, XXCOPY no longer supports DATMAN.

    A number of people reported a heavy memory usage by XXCOPY that would result in "out-of-memory" condition when the job is very large. They wanted the "memory leak" to be fixed. Well, it's not a leak. Due to XXCOPY's lineage going back to DATMAN (tape-control software), XXCOPY constructed a directry tree in memory that resembles the directory structure as it traversed the source directory. The operational assumtions when the original code was written no longer hold true (ten years ago, we never anticipated a job as large as a million files in one job).

    Now, we decided to abandon XXCOPY's support for DATMAN. This removes the "heavy" memory usage that was related to DATMAN. This change will improve the performacne of XXCOPY in a very large job with hopefully, no more out-of-memory conditions.

  35. Improved monitoring of network connection status

    A new mechanism is now in place to detect the loss of network connection at the earliest possible time. This new scheme should eliminate the rare occurrence of inadvertent deletion of files/directories in the destination with the /Z (and /RX) operation (deletion of extra items). The new exit code, 49 is defined for "Problem in network" (previously, XXCOPY did not have network-related exit code).

  36. Now, ready for Windows XP SP2.

    Microsoft started to ship Windows XP, Service Pack 2 (SP2). XXCOPY Version 2.85.8 supports Win XP SP2

  37. New mechanism to detect the OS (Windows) environment.

          Starting with V.2.85.7, XXCOPY no longer tests the
          OS (Windows) environment using  the timestamp of
          key DLL files (KERNEL32.DLL, USER32.DLL).  Rather,
          it checks the Microsoft Windows Service Pack number.
          When XXCOPY is invoked, it compares the Service Pack number
          of the system against the list of the highest SP numbers that
          it has been tested with.  If the current SP number is not
          supported by the version, XXCOPY will display a warning message
          for a while (2 minutes).  You may terminate the program by the
          <ESC> key, or let it automatically resume the operation.  
          The latest release, v.2.85.7 expressly supports the following
          Windows Versions:
             Windows 95       4.00.0950
             Windows 95 OSR2  4.00.1111
             Windows 98       4.10.1998
             Windows 98 SE    4.10.2222
             Windows ME       4.90.3000
             Windows NT 4     4.0.1381   SP6a
             Windows 2000     5.0.2195   SP4
             Windows XP       5.1.2600   SP2 (Release Candidate 2)
             Windows 2003     5.2.3790   SP1
          This new scheme eliminates the uncertainty faced by the
          user after installing a new Microsoft security patch.
          The previous versions with the default /WV switch generated
          a user-prompt that had to be answered by the user.  Although
          the /WV0 switch could suppress the version-mismatch warning,
          it would deprive the user of the benefit of seeing the warning.
          Finally, when a brand new version of Windows is encountered
          (a Windows version not listed above, e.g., Windows Longhorn),
          the default behavior (absence of a user response in time) is
          to terminate the operation.

  38. Bugfix on /A/H which did not process hidden directories

    Starting with v.2.85.6, file selection via /AT/AX should not be mixed with the simpler method using /H/Ho/H0. Unless an uncommon combination of attribute bits is used, the simpler scheme is recommended. When the /AT/AX specifier is used, /H/Ho/H0 scheme should not be used to avoid confusion.

  39. Now, /RC can be combined with the /SX, /SL, /SR operations

    In earlier versions, the /RC (Remove-after-Copy) switch would disable a directory-flattening operation. This restriction is now removed.

  40. Volume confirmation feature

          /ILS<name>   Runs the command if name matches the src volume label
          /ILD<name>   Runs the command if name matches the dst volume label
          These switches allows you to make your backup batch files immune
          from inadvertent changes in drive letter assignments.
          (A driver letter may change when a disk fails or in a dual-boot
           environment which may cause a catastrophic loss of files.)

  41. The new cache control feature

         /CA  Enables all cache.  Same as /CA7 (default).
        /CA0  Cache control:  src-rd = OFF  dst-wr = OFF  dst-rd = OFF
        /CA1  Cache control:  src-rd = OFF  dst-wr = OFF  dst-rd = ON
        /CA2  Cache control:  src-rd = OFF  dst-wr = ON   dst-rd = OFF
        /CA3  Cache control:  src-rd = OFF  dst-wr = ON   dst-rd = ON
        /CA4  Cache control:  src-rd = ON   dst-wr = OFF  dst-rd = OFF
        /CA5  Cache control:  src-rd = ON   dst-wr = OFF  dst-rd = ON
        /CA6  Cache control:  src-rd = ON   dst-wr = ON   dst-rd = OFF
        /CA7  Cache control:  src-rd = ON   dst-wr = ON   dst-rd = ON 
        Hint:  you may add /CA4/V2 when you record a CD-R using XXCOPY.

  42. A few new macro keywords were added.

          Some users had need to use a date string which does not allow
          a leading zero.  So the following new keywords are added.
          /$M$         // 1 or 2 digit month  (without leading zero)
          /$D$         // 1 or 2 digit day    (without leading zero)
          /$H$         // 1 or 2 digit hour   (without leading zero)
          /$N$         // 1 or 2 digit minute (without leading zero)
          /$S$         // 1 or 2 digit second (without leading zero)
          Now, you may combine
          /$M-D-YY$    // 7-4-03  for July 4th 2003 in the US convention
          /$IIII-IWK-K$      // ISO-8601 Week-Date notation
          Also, the computer name can be specified by macro
          /$HOST$      // the computer name (up to 15 characters)

  43. Context-sensitive help for Prompt buster switch.

    When you encounter a user-prmpt, typically (Y/N) ?
    You may respond to it by typing "?".

    XXCOPY will provide a short help text that tells you what switch would disable the particular user-prompt.

  44. Command Switch accepts an optional colon as delimiter.

    Once upon a time (before /CF (command File) was introduced), the command line was such a precisous space, the command syntax could not afford a delimiter between the command letter(s) and its parameter. Now, we can talk about readability.

    To improve the readability of command text (in both the command line and in the text for the /CF file), XXCOPY now accepts an optional colon that can be placed immediately after the switch letter(s).

      e.g.,  /WS5              ->  /WS:5
             /X*.dir           ->  /X:*.dir
             /INn*             ->  /IN:N*
             /oNc:\mylog.txt   ->  /oN:c:\mylog.txt
      Note:  XXCOPY already accepts a comment  // like this
    A comment may appear either on the command line or in the command file text (in /CF file).

  45. New switch /IA: and /IP:

    An improvement of the /IA (If-Absent) and /IP (IF-Present) switches with the name of a file/directory.

      /IA:mystuff  // Continue only if "mystuff" is absent. 
      /IP:mystuf   // Continue only if "mystuff" is present.
      /IA          // Continue only if the dst directory is absent
      /IP          // Continue only if the dst directory is present
    Note: the item for absence/presence may be a directory or a file.

  46. New macro item added:
      /$WWW$   // Day of the week in three-letter (e.g., SUN)
      /$W$     // Day of the week in ordinal value (0-6 for Sun-Sat)
      /$HOST$  // The name of the host (current) computer

  47. Improvements on /W; Now, /WS and /WE accept a delay value.
      /$WS<n>  // Waits for n seconds at the start of the program.
      /$WE<n>  // waits for n seconds at the end of the program.

    Note: n is in seconds by default; you may add a sufix letter for S(econds), M(inutes), H(ours), or D(ays).

    The following existing switches are still supported.
      /W       // Same as /WS (compatible with XCOPY).
      /WS      // Waits for a user key at the start of the program.
      /WE      // Waits for a user key at the end of the program.
    =-=- The following items are from recent updates -=-=

  48. A few bugs were removed.

    Versions between 2.80.0 and 2.80.3 were affected by the bug. /DB#xxH /DB#xxM /DB#xxS did not compute the right age. Now these switches should work correctly.

    Due to inconsistent implementations by Microsoft among the various Win32 platforms, XXCOPY encountered problems when a read-only file with the H (hidden) and/or S (system) attributes was to be overwritten, under Windows NT/2K/XP/2003 (no problems under Windows 9X/ME). This problem is now fixed.

  49. File selection by the file timestamp /DA: and /DB: are enhanced with a time value in addition to the date value (add T or @ followed by a time value).
       /DA:2001-10-25T13:15:30  (conform to the ISO 8601 standard).
       /DB:2001-10-25@13:15     (@ may be used between date and time)
       /DB:2001-10-25@13        (sec and/or min can be omitted)
  50. New security related features, /SC and /SF are added.

    This is for a copy operation from an NTFS volume to another. With the /SC (Security Copy) switch, when a file (or a directory) is copied, its security information (permissions and/or auditing info) will also be copied.

    With the /SF (Security Fixup) switch, only the security info in the source will be copied to their corresponding items in the destination (if present) without changes in any other aspects (no file contents and other attributes are affected).

    In both the /SC and /SF cases, you may fine-tune the scope of the security information to handle by appending a digit (1 - 3) as shown below:

      /SC   /SF       // same as /SC3 and /SF3 respectively
      /SC3  /SF3      // both permissions and auditing.
      /SC2  /SF2      // only with auditing (SACL)
      /SC1  /SF1      // only with permissions (DACL)
      /SC0  /SF0      // cancel /SC or /SF switch

    Note: the user must log on with the Administrator's privilege to use /SC and /SF.

  51. New /INSTALL:<directory> to specify XXCOPY's home directroy.

  52. The Progress Bar (/PB) has been completely reworked. The older method of displaying the bar graph on the DOS Box screen was discarded. The new method utilizes a pop-up window which no longer relies on the ANSI-compatible DOS Box setting. As a bonus feature, the Halt/Resume/Abort buttons are provided. The /PB switch now works on Win9x and NT/2000/XP.

  53. The new /LTREE switch allows you to list directories only. It supports exclusion and also timestamp parameters applied to the directory (/DA /DB /DO) which are otherwise applied to files only.

  54. Two new switches are added.
      /PC  Prompts on Creating a new file
      /Po  Prompts on Overwriting an existing file (same as /Y)
    These pair now handles each of the two cases in writing a file. Previsously, the /Y switch was responsible for the user-prompt on the file-overwrite case, but, there was no counterpart on file-creation. The /Po switch was created to form a symmetry: it is equivalent to /Y switch with the opposite polarity (i.e., /Po is the same as /-Y which is the default).

  55. The new /FF switch is added for "Fuzzy Filetime" match. It provides more flexible control of the leeway in filetime matching. It improves upon the /FT (Filetime Truncate) and /FR (Filetime Round-Up). The new /FF switch accepts an optional parameter to specify direction and magnitude of the slack value in S(econds), M(inutes), H(our), or even D(ays). The default /FF (without any parameter) is useful for incremental backup between a FAT and an NTFS file system.

  56. As a totally redesigned scheme as an advanced XXCOPY-PRO feature, the control of the console display and log file output are organized with a total of seven related switches in the new /o switch group (/oP, /oI, /oX, /oF, /oS, /oD, /oE). Each of these switches can be independently controled for the console and the log file output.

  57. The new /FM switch allows you to specify the output format for the log file output (/oF) and for console display (/L).

  58. A few more /X parameter cases which were not previously articulated in the documentation are now officially supported.
      e.g.,   /Xabc\*\  and /Xabc\?\  which are equivalent to
              /Xabc\*\* and /Xabc\?\* respectively.
  59. The debut of XXCOPY-PRO which is now specifically targeted for professional users who accesses networked computers.

    It allows a 60-day free test drive for new users.

    The popular XXCOPY-Freeware is still available for home users with a stand-alone computer. Advanced features are still available in the Freeware version as a demonstration.

  60. The new /CF (Command File) feature allows you to store the XXCOPY command line in a text file. It allows you to add comments, connects lines for a very long filename.

  61. The log output is now cleaned up. Now, you have more control on the log file contents. ( /OP, /OI, /OX, /OF, /OS, /OD)

    Highlights of recent releases:

  62. The long-awaited Progress Bar is finally here. Add the /PB switch to a large XXCOPY job to display a progress bar at the top of the screen. Another progress bar will be shown for an individual copy for files larger than 1 MB (customizable).

  63. File age parameters (/DA# /DB# /Do#) now accept a value in days, hours, minutes, or even seconds. Now you can say,

    XXCOPY C:\ D:\ /DA#30M /S // files 30 minutes or younger XXCOPY \my\*JPG /DB#12H /RS // delete *.JPG, 12 hrs or older

Join the XXCOPY group

10. Guidance and Reference (Technical Bulletins)

11. XXCOPY Discussion Group

Recently, the XXCOPY Discussion Group was born in the Yahoo! Groups. It is a forum for discussing topics related to XXCOPY. In addition to the primary function as a bulletin board for questions and answers, the archived communications between members can be searched by keywords for answers that have been brought up in the past. You can also sign up to subscribe to the discussion Email. You may also post your question by Email. It is quite convenient and highly recommended for all XXCOPY regulars.

Join the XXCOPY group
Click to subscribe to xxcopy


12. Technical Support and Feedback

Due to the large number of Emails that we receive, we prioritize our technical support correspondence based on the license status.

Those with the corporate site license as well as other licensees get their Email answered as promptly as possible. If you have an XXCOPY paid license, please include the License Serial Number in your Email for an expedited response.

If you are a freeware user, please accept our apology that we may or may not respond your technical support Emails in a timely fashion. You should join the XXCOPY discussion group, and post your question for best results.

A freeware user's common question whose answer is readily available in our web-based documentation, will likely result in an automated response without the answer it is seeking.

When we receive your Email, we will interpret it as your implicit authorization to receive Emails about XXCOPY from us in the future (except, of course, for an Email requesting a removal from our mailing list).

We welcome your comments and suggestions.

= = = = = Quick Feedback Form = = = = =

  Your Full Name:        
  EMail Address:         
  City, State (Country): 
Comments: (for questions, try the Discussion Group) Your Primary OS: OS Word Size: Languages you use: C C++ C# VB Java Perl Batch File Please notify me when a relatively major update is released. Please notify me when a new beta version becomes available. Please remove my Email address from your mailing list.
If you don't want to receive any Email from us at all, please leave the Email box blank rather than entering a bogus address.

You may also send an Email to us at <tech@xxcopy.com>

13. XXCOPY Featured in Other Web Sites

Powerful Windows Utilities ... Dan DiNicolo's review article at Swynk.com
The LangaList 2001-12-20 ..... alternative tools: many people use it for backups
The LangaList 2000-06-15 ..... Langa.Com, A better Xcopy, For Free!
Pricelessware 2004 .... The best of the best in Windows Freeware
Pricelessware 2003 .... The best of the best in Windows Freeware
Pricelessware 2002 .... The best of the best in Windows Freeware
PC WORLD.COM Windows Tips .... Backups--The Long and Short of It
ZENworks Cool Solutions ...... Novell downloadables "like XCOPY on steroids"
www.opus.co.tt/dave/ ......... Interesting DOS Programs
The Navas Group .............. How do I clone/Backup a hard disk under Windows?
Free Softwoare For DOS ....... Reviews, descriptions, links to over 600 DOS programs
KSFO's Web Wanderer .......... July 8, 2000 Free for All Picks by Jack from Goshen
Axcel216's MAX speed ......... Essential DOS 5.00 - 7.xx Power Toys
www.TinyApps.Org ............. Small is beautiful / File / Backup
PC Guide, Xcopy Xposed ....... Similar to Xcopy without the flaws in Microsoft...
Son of Spy's Freeware List ... The best of the best in Windows Freeware...

Join the XXCOPY group

14. Screen Shots of XXCOPY

XXCOPY Screen shot Main The DOS Box display (the short-help text).

XXCOPY Screen shot Progress The progress bar pop-up window.

15. About the Publisher --- Pixelab, Inc.


Pixelab, Inc.
1117 E. Gartner Road, Suite 119
Naperville, Illinois 60540 U.S.A.

Phone = +1-630-369-7112 Fax = +1-206-600-5937 Email = <sales@pixelab.com> Web Home = http://www.pixelab.com

Founded in 1986

Pixelab publishes software products.

XXClone Home Page

XXCopy Home Page

DATMAN Home Page

President's portraits
President's Portraits

xxcopy   XXCOPY is a trademark of Pixelab, Inc.

Updated 2010-01-01 ()
© Copyright 2010 Pixelab, Inc. All rights reserved. Privacy Statement