diff --git a/alpha/help/0409/batch.htm b/alpha/help/0409/batch.htm new file mode 100644 index 0000000..501eb5c --- /dev/null +++ b/alpha/help/0409/batch.htm @@ -0,0 +1,865 @@ + +
+ + + +  +Because MultiPar consists of PAR clients and GUI, +it is possible to use a PAR client on Command prompt. +Read a manual of command line for the details of command and option. +It's available by batch file (or command script). +
+ 
+Below are some samples of batch file for Windows 7.
+Copy & paste the whole lines into a text file.
+Modify the options for PAR2 files, and set the path of par2j.exe.
+Write absolute path like;
+SET par2_path="C:\something directory\MultiPar\par2j.exe"
+Read manuals (Command_***.txt) to know the detail of options.
+Read Windows OS 's help for Command prompt's usage.
+
  +Save a sample script to a file like batch.bat or batch.cmd. +To specify path of files or folders, Drag & Drop them on the batch file. +When you put a shortcut icon of the batch file in "SendTo" menu, +you can call the batch file by selecting files then Righ-Click & SendTo. +
+ 
+If you want to confirm the result of scripting,
+add "PAUSE" at the end of batch file.
+If you want to see how each command line is parsed,
+remove "@ECHO OFF" at the top of batch file,
+or add "ECHO" in front of the questionable line.
+These may help you understanding how batch script works.
+
 
+If you want to switch flow by the result, you may use a special environment variable "ERRORLEVEL".
+"if ERRORLEVEL number task~" means that the task will start when ERRORLEVEL is greater than or equal to the number.
+"if not ERRORLEVEL number task~" means that the task will start when ERRORLEVEL is less than the number.
+It's possible to refer the value by using "%ERRORLEVEL%".
+The code is such like "set err = %ERRORLEVEL%".
+When you want to refer ERRORLEVEL in "for ~ do ~" loop,
+you must set a local variable as "setlocal enabledelayedexpansion" and use "!ERRORLEVEL!".
+
+
| Command | "path of batch file" "path of folder1" "path of folder2" "path of folder3"... + |
| Input | specify some folders + |
| Action | This sample creates individual PAR2 set in each selected folder. +For example, when you supply 7 folders, total 7 PAR2 set are made. +It is possible to show GUI for setting, too. + |
  +If you want to use MultiPar GUI for setting, you may call MultiPar.exe instead of par2j.exe. +When a GUI is closed, next GUI is opened with next folder. +You may set an option in "Automated tasks" to close GUI automatically after creation. +
+ + + + 
+If you don't want to wait the finish of each creation,
+you may use "START" command in the script.
+Because all MultiPar GUIs will open at once for each folder,
+you can start each creation anytime.
+
+
| Command | "path of batch file" "path of a folder" + |
| Input | specify a folder + |
| Action | This sample creates individual PAR2 set in each subfolder under the selected folder. +For example, when there are 7 subfolders, total 7 PAR2 set are made. + |
 
+Don't remove an option /fo in the command-line.
+By this option, PAR2 file contains files only in each subfolder.
+
  +If you want to use MultiPar GUI for setting, you may call MultiPar.exe instead of par2j.exe. +When a GUI is closed, next GUI is opened with next folder. +You may set an option in "Automated tasks" to close GUI automatically after creation. +You may check "Always use folder name for base filename" option in "Client behavior", +then each PAR2 set is named by the folder. +
+ + + ++
| Command | "path of batch file" "path of a folder" + |
| Input | specify a folder + |
| Action | This sample creates one PAR2 file per each file in the selected folder. +If there is a subfolder in a folder, files in the subfolder are searched, too. +Instead of creating PAR2 files for all files in a subfolder like previous sample, +this creates one PAR2 file per each file in a subfolder. +For example, when there are 7 files in the folder, total 7 PAR2 files are made. + |
 
+Don't remove an option /in in the command-line.
+By this option, index file isn't created.
+
+
| Command | "path of batch file" "path of file1" "path of file2" "path of file3" "path of file4" "path of file5"... + |
| Input | specify many files + |
| Action | This sample creates individual PAR2 set per each set of 4 files from many selected files. +For example, when you supply 11 files, total 3 PAR2 set are made. (11 = 4 + 4 + 3) + |
 
+You may modify this sample to accept more files up 9.
+Be careful about the number of source files and "SHIFT" per each step.
+
+
| Command | "path of batch file" "path of archive file1" "path of archive file2" "path of archive file3"... + |
| Input | specify some ZIP / 7-Zip archive files + |
| Action | This sample creates PAR2 recovery data and append it to each original ZIP / 7-Zip archive file. +Though ZIP / 7-Zip archive don't have a feature of recovery record, +parchive can add the extra feature. +For example, when you supply 7 archive files, total 7 archive files with recovery record are made. + |
 
+Don't remove options /ri and /in in the command-line.
+By this option, index file isn't created and filename has fixed volume number.
+When joinning original archive and recovery data,
+it is important to put original archive at first, then append recovery data at the last.
+From the nature of ZIP / 7-Zip archive,
+appended PAR2 recovery data has no effect to extract or decompress.
+If you want to keep PAR2 file separately, comment out the line of "DEL" command.
+
  +To verify the archive, just Drag&Drop it onto MultiPar short-cut icon. +(or right-click SendTo or ShellExtension works, too.) +On the MultiPar GUI, +the archive with PAR2 recovery data is shown as "Appended" status, +when the original part of archive is complete. +If you repair the archive, the archive returns to the original form. +(appended PAR2 recovery data is removed.) +When you want to keep the PAR2 recovery data, +you need to un-check an option "Delete damaged files after Repair". +Then the recovery data is renamed by adding ".1" after filename. +
+ ++
| Command | "path of batch file" "path of folder1" "path of folder2" "path of folder3"... + |
| Input | specify some folders + |
| Action | This sample calls MultiPar GUI for individual PAR2 set in each selected folder. +For example, when you supply 7 folders, GUI are opened 7 times one by one. +It is possible to repair by the GUI. +When a GUI is closed, next GUI is opened with next PAR2 set. + |
  +The key is setting the PAR filename to be based on the folder name. +If you set prefix/suffix to filename at creating time, you need to set same one at verifying time. +
+ ++
| Command | "path of batch file" "path of a folder" + |
| Input | specify a folder + |
| Action | This sample calls MultiPar GUI for individual PAR2 set in each subfolder under the selected folder. +When PAR2 files don't exist, it creates PAR2 set for the subfolder. +When PAR2 files exist, it verifys files in the subfolder. +For example, when there are 7 subfolders, total 7 PAR2 set are made. +Next time you specify the folder, MultiPar verifies the 7 subfolders one by one. + |
  +The key is setting the PAR filename to be based on the folder name. +You must check "Always use folder name for base filename" option in "Client behavior", then each PAR2 set is named by the folder. +
+ +  +When a GUI is closed, next GUI is opened with next folder. +You may set an option in "Automated tasks" to close GUI automatically after creation. +If you want to skip complete files at verification, you may set option to close GUI automatically after verification, too. +
+ ++
| Command | "path of batch file" "path of a folder" + |
| Input | specify a folder + |
| Action | This sample adds MD5 checksum to each file independently in a selected folder. +If there is a subfolder in a folder, files in the subfolder are searched, too. +This uses "Alternate Data Stream" and works over NTFS only. +Checksum data is saved in an alternate stream "original filename:digest.md5", +but it's invisible by Windows Explorer. + |
  +There are some cautions. +Some binary/text editor seems to remove alternate data stream automatically at over-writing. +If you modify a file, you will need to re-add checksum to the new file again. +Adding checksum will update files' modification time, even though original file data isn't changed. +A user needs to use a special tool to see/delete/copy the stream, because those streams are untouchable by Windows Explorer. +While an alternate stream is kept at copy/move between NTFS drives, it will be removed on other file system. +For example, you cannot backup data in alternate stream on CD/DVD. +
+ ++
| Command | "path of batch file" "path of a folder" + |
| Input | specify a folder + |
| Action | This sample verify each file independently by MD5 checksum in a selected folder. +If there is a subfolder in a folder, files in the subfolder are searched, too. +This uses "Alternate Data Stream" and works over NTFS only. +Checksum data must have been saved in an alternate stream "original filename:digest.md5". + |
  +This sample plays sound by Media Player. +This is good to notify the end of process to user, while running script. +This can play any file format which is supported by Media Player. +
+ + + + 
+MultiPar GUI can start script after creation.
+The script file must be auto_c.cmd in the user's save folder.
+A user may write any script in this file.
+The script gets two parameters from GUI as below;
+
+%1 = Path of a recovery file
+
+%2 = Path of base directory of source files
+
  +This sample script moves created PAR2 recovery files into another folder. +
+ + + + 
+MultiPar GUI can start script after verification or repair.
+The script file must be auto_v.cmd in the user's save folder.
+A user may write any script in this file.
+The script gets three parameters from GUI as below;
+
+%1 = Path of a recovery file
+
+%2 = Path of base directory of source files
+%3 = Exit code of the used client (refer the command-line manual)
+
 
+This sample script opens ZIP or 7-Zip archive only when it is complete.
+To use this script, you need to create some recovery files for an archive at first.
+At that time, the key is setting the base filename to be same as the source file like;
+source file's name = something.zip
+recovery files' name = something.zip.par2, something.zip.vol0+4.par2, something.zip.vol4+8.par2
+Thus, when you open the index file "something.zip.par2",
+the filename without last extension becomes the name of source file.
+
  +This sample script moves log file (MultiPar.ini) to PAR2 file's directory. +If there is an old log file already, it appends new log after existing one. +To use this script, you need to enable log. +MultiPar Options -> [Client behavior] -> Check "Log output of clients". +
+ + + + + + diff --git a/alpha/help/0409/create.htm b/alpha/help/0409/create.htm new file mode 100644 index 0000000..c21e8d8 --- /dev/null +++ b/alpha/help/0409/create.htm @@ -0,0 +1,238 @@ + + + + +  +Selected files are listed on the file-list, and the total data size and blocks are calculated. +PAR 1.0 supports upto 256 files, and PAR 2.0 supports upto 32768 files. +It is recomended to use archiver (ZIP, RAR, TAR or something) for many files. +In PAR 2.0, parent folders are treated as sub-directory in filenames. +Only empty folders (without files in them) are shown as folder in the file-list. +
+ +  +For PAR 1.0, number of source blocks is same as number of source files (except empty file). +If their size are different each other, it will become inefficient. +When you treat such files of varied size, you should pack them into an archive, +and split it into pieces of same size, then create PAR1 files for the pieces. +
+ +  +For PAR 2.0, many blocks are aligned in each source file. +After source files are selected, +ideal blocks are allocated automatically by your selected allocating method. +You may change block size or number of blocks manually. +As you set more blocks, the speed will be slow down. +As you set fewer blocks, it will be inefficient to recover small damage. +For practical use, number of blocks would better be thousand or several thousands. +When you input block size directly, +you may type the size with unit like "KB" or "MB". +For compatibility, it's good to set less than 100,000,000 bytes (95 MB). +
+ + 
+Sample distribution of 500 blocks for each sizing scheme:
+
| Sizing scheme | How many blocks in each recovery file + | |
|---|---|---|
| All the same size | 167, 167, 166 (when 3 files) | 84, 84, 83, 83, 83, 83 (when 6 files) + |
| Variable size | 72, 144, 284 (when 3 files) | 8, 16, 32, 64, 128, 252 (when 6 files) + |
| Powers of 2 sizing scheme | 1, 2, 4, 8, 16, 32, 64, 128, 245 (total 9 files) + | |
| Decimal weights sizing scheme | 1, 1, 2, 5, 10, 10, 20, 50, 100, 100, 200, 1 (total 12 files) + | |
  +While you are creating recovery files, some information and the progress are shown. +Only "About", "Pause", and "Cancel" buttons are enabled while creating. +When the creation requires too long time, +you can return to Create window to change setting by "Cancel" feature. +When you want to stop the creation temporary, +you may use "Pause" feature to resume later. +Though CPU usage becomes minimum while pausing, memory have been consumed still. +
+ + 
+While MultiPar is available as freeware, I spent a lot of time and effort to develop.
+Your donation will encourage me to continue my efforts to improve and support MultiPar.
+I made PayPal account and quick link for donation.
+
+Other contributions like testing new feature, bug report, advice of refine, etc... would be appreciated also. +
+ + + diff --git a/alpha/help/0409/howto1.htm b/alpha/help/0409/howto1.htm new file mode 100644 index 0000000..9d0f7b4 --- /dev/null +++ b/alpha/help/0409/howto1.htm @@ -0,0 +1,123 @@ + + + + +  +How to use is almost same as QuickPar. +But there are some different behavior, +because the development environment and how to implement are different. +Moreover I added some useful features which QuickPar lacks; +such like supporting directory tree or preview before creation. +If you have a new idea, you may request by mail. +
+ 
+While QuickPar's default settings are optimized for UseNet, they are different from those of MultiPar.
+If you want to set similar setting as QuickPar, you need to change the following items from default setting;
+On [GUI options] page, in [Restrict block size to multiples of the unit] section,
 
+select "For yEnc: 3,000 lines".
+On [GUI options] page, in [Block allocating method] section,
 
+check "Limit Block count up to: 3,000" and set "Block size: 384,000".
+On [Client behavior] page, in [Creation options] section,
 
+check "Don't search subfolders".
+On [Client behavior] page, in [Verification and Repair options] section,
 
+select "For 15 days" at "Re-use verification result".
+
  +There are some different behavior between MultiPar and QuickPar. +Because MultiPar tries to select efficient block size to create PAR2 files, +initial block count may differ, even when the setting is same. +If you want "Recovery File Size: Variable (power of 2 sizing scheme)" in QuickPar, +select "Sizing scheme: Variable size" in MultiPar. +When you create additional recovery files against existing recovery set by "Extra", +QuickPar creates extra files without modifying original files, +but MultiPar re-creates all files by over-writing original files. +
+  +The biggest difference between MultiPar and QuickPar is the support of multi-languages. +While QuickPar saves non-ASCII filename by a system specific character encoding, +MultiPar saves by UTF-8. +Then, QuickPar cannot read non-ASCII filename correctly which was saved by MultiPar. +In PAR2 clients, MultiPar and par2cmdline can support Unicode filename. +
+ 
+Because Peter Clements allowed me to use similer GUI with QuickPar,
+I made MultiPar to treat Japanese filename.
+I made English GUI for foreign users, who got failure in QuickPar.
+When you have trouble using other PAR clients, MultiPar will help.
+If you want to translate MultiPar's text or message, send mail to me.
+MultiPar is used in many countries like;
+America, Belgium, China, Denmark, England, France, Germany, India, Italy, Japan, Netherlands, Poland, Portugal, Russia, Spain, Ukraina, and so on.
+
  +If you have set options in "System settings" page, +you can start MultiPar with source files, which were selected already. +When you know which files should be protected, this way is convenient. +
  +By double-clicking MultiPar icon on desktop, +or clicking MultiPar icon in a Program group in Start menu, +you can start MultiPar, and Create window opens. +
  +If you have set options in "GUI options" page properly, +no need to change, because efficient blocks are allocated automatically. +Only when you feel the number of blocks are too many or too few, you may adjust manually. +When you are using a slow PC or want to create quickly, it may be good to decrease the number of blocks. +If you know how many blocks are acceptable for speed, +you would better limit up to the block count at "Block allocating method". +
+ + + diff --git a/alpha/help/0409/howto3.htm b/alpha/help/0409/howto3.htm new file mode 100644 index 0000000..4762aac --- /dev/null +++ b/alpha/help/0409/howto3.htm @@ -0,0 +1,60 @@ + + + + +  +The most important setting in creating recovery files is "Redundancy". +As you set more redundancy, it will be possible to repair, +but more time and space are required. +The required quantity depends on your circumstance; +like error rate of the saving drive or reliability of the network. +If you create as an insurance against rare incident, 5% or 10% may be enough. +If you get error often, you may require more, such as 30% or 50%. +If you want to protect seriously, backup source files and create recovery files. +
+ +  +A whole file is lost by a human mistake like careless deletion or forgotten transport. +In this case, the problem is whether you have enough redundancy to reconstruct the whole file. +The measure is "Number of files that can be fully reconstructed if missing" on the bottom of Create window. +The "Min - Max" means that, how many files you can repair at least min and under than max. +The min should be 1 or more for safety. +
+ +  +There is a measure of recovering capability, +that is "Efficiency" on the bottom of Create window. +Unless you have a trouble to keep saving space, +you don't need to take care usually. +When there is a big difference between settings, +you would better to select a efficient way, +but you can ignore small difference like several percent. +Because the possibility of repair is largely varied by distribution of damage, +it is worthless to aim for the best efficiency. +
+ +  +On Option window, +it is important to set the unit of blocks for UseNet. +Though it depends on the server, mostly it is "For yEnc: 3,000 lines" or "For yEnc: 5,000 lines". +No need to change other settings. +If you want smaller recovery files, +you may limit repetition of packets by selecting "Upto 4 times". +On Create window, you should select "Powers of 2 sizing scheme" at "Sizing scheme". +
+ + + diff --git a/alpha/help/0409/howto4.htm b/alpha/help/0409/howto4.htm new file mode 100644 index 0000000..53cdb2b --- /dev/null +++ b/alpha/help/0409/howto4.htm @@ -0,0 +1,106 @@ + + + + +  +If you have set options in "System settings" page, +you can start MultiPar by selecting a recovery file. +This way is easier than opening a recovery file by pushing "Open" button after you start MultiPar. +Even when there are multiple recovery files of same set, you must select one of them. +If you happen to select multiple recovery files, +Create window may open, or multiple Verify windows will open. +
  +While you may verify written files on read-only media like CD-R or DVD-R, +you cannot repair damaged files immediately. +When you repair files, you need to copy those files on HDD. +Even if they are damaged files or fragments of unknown filename, +you should bring all source files and recovery files to a folder on HDD. +To retrieve as many data as you can from the damaged media, you would better use "File Salvager software". +There are many shareware and freeware for the purpose. +Because "Data Recovery service" by a specialist company requires more money, +it's the last way to restore important data. +
+ +  +When some vital packets are missing in a PAR2 file, it will be hard to verify or repair. +But all kinds of packets may exist in multiple PAR2 files. +Because MultiPar will search other PAR2 files of same base filename in the folder automatically, +you should set same base filename for all PAR2 files of the same recovery set. +(Base filename is a filename except extension and volume number.) +When other PAR2 files are put in another folder, or are renamed to different base filename, +you must add them manually by "Add" button. +
+ +  +Get more blocks as possible as you can. +If there is a same source file on different location, you should copy it or add it by "Add" button. +You need to find more blocks from the damaged media. +If you cannot recognize fragments are pieces of which source file, +you select "Additional verification" at "Verification level". +If there are old files of modified version in a previous backup, it is worth to add them. +
+  +When a transported file had been damaged already, you cannot salvage lost data on your side. +If there are other recovery files, you get them, too. +If there is same file on another site, you may get it again. +Or, you may ask someone to give another set of recovery files. +
+ +  +Mostly this is caused by "exclusive file access" or "limited privilege". +While a damaged file or recovered file is being accessed exclusively, it's impossible to replace them. +An example is Anti-Virus scanner, and you may need to exclude working folder from real-time scan. +When status of a damaged file became "Locked" after failed repair, +the file is being used by another application. +Of course, you cannot repair (modify) a system file, which is protected by OS. +When repair was failed by a fault of PAR1/2 specifications, +you may solve the problem by getting one more available block. +
+ + + diff --git a/alpha/help/0409/intro.htm b/alpha/help/0409/intro.htm new file mode 100644 index 0000000..64002b0 --- /dev/null +++ b/alpha/help/0409/intro.htm @@ -0,0 +1,54 @@ + + + + +  +PAR is a clipped from Parchive or Parity Archive, which means container of parity. +Even if original files are damaged or lost, +it is possible to repair them by extracting the parity. +Two types of PAR files are made in same time. +While an index file contains data for verification only, +recovery files contain data for both verification and repair. +Normally they don't distinguish, and they are just called as PAR files. +
++
| Example of PAR1 files: | |
| Data.PAR | Index file |
| Data.P01 | First recovery file |
| Data.P02 | Second recovery file |
| Data.P03 | Third recovery file |
|   | |
| Example of PAR2 files: | |
| Data.PAR2 | Index file |
| Data.vol0+1.PAR2 | First recovery file, which contains 1 recovery block |
| Data.vol1+2.PAR2 | Second recovery file, which contains 2 recovery blocks |
| Data.vol3+4.PAR2 | Third recovery file, which contains 4 recovery blocks |
  +Though the index file is usable for verification only, +it is very smaller than recovery files. +The construction of recovery file is different between PAR1 and PAR2. +In PAR1, recovery data is calculated for a group of arrayed source files. +The requirement is simple like; +it requires 1 recovery file to restore 1 file, or it requires 3 recovery files to restore 3 files. +
+  +In PAR2, recovery data is calculated for a group of allocated blocks in all source files. +While saving the recovery data, +it is possible to change the number of recovery blocks in each recovery file. +Thus, the required number of recovery files can be minimum by their required recovery blocks. +In above example, you need second recovery file to recover 2 blocks, +or you need first and third recovery files to recover 5 blocks. +
+ + + diff --git a/alpha/help/0409/option.htm b/alpha/help/0409/option.htm new file mode 100644 index 0000000..c16b9c6 --- /dev/null +++ b/alpha/help/0409/option.htm @@ -0,0 +1,57 @@ + + + + +  +Usually options are saved on setting file "MultiPar.ini" under MultiPar's install folder. +When MultiPar is installed under "Program Files" directory, +your setting is saved in "MultiPar" folder under each user's "Application Data" directory. +You may locate the folder at "System settings" page. +
+ +  +If you want to reset all options at once, delete the "MultiPar.ini". +If you want to reset every options on a page, push "Reset" button at the page. +If you want to reset a specific option only, just erase the line on the setting file. +
+ +  +When multiple instances of MultiPar are open, +change of setting over an instance won't reflect to other instances. +If you want to enable the changed setting on another instance, +you need to re-open newly. +When you change different setting over some instances, +the result will be the sum of all changes. +
+ +  +Option window consists in the following 4 pages. +
+ + + + + + diff --git a/alpha/help/0409/option1.htm b/alpha/help/0409/option1.htm new file mode 100644 index 0000000..4ea9f44 --- /dev/null +++ b/alpha/help/0409/option1.htm @@ -0,0 +1,127 @@ + + + + +  +Shortcut icon on desktop or [SendTo] menu is usable to start MultiPar for invoking Open or Create. +If you drop down a recovery file on the shortcut icon, +MultiPar will open the recovery file. +If you drop down some source files on the shortcut icon, +MultiPar will create recovery files for them. +
+ +  +By pushing these buttons, you can open MultiPar related folders directly. +Though this feature is useful to refer documents, be careful not to delete important files. +The current user's temporary files and log files are saved in the user specific "save" folder, +and it is possible to erase those files in this folder anytime. +
+ ++
| Position of slider | Number of using threads (max 16) + |
|---|---|
| Left most | Quarter number of physical Cores + |
| Second from left | Half of physical Cores + |
| Medium | 3/4 number of physical Cores + |
| Second from right | For CPU with 5 or less Cores, number of physical Cores (exclude Hyper Threading) +For CPU with 6 or more Cores, number of physical Cores -1 + |
| Right most | For CPU with Hyper Threading is enabled on 5 or less Cores, number of physical Cores +1 +For CPU with 6 or more Cores, number of physical Cores + |
  +These contents are used for a list of "Media" on Create window. +In the edit box, you must put ":" between the media's name and size. +The name is left side, ":" is middle, and the size is right side. +The size must be value only, don't use comma or unit simbol like MB. +The max length of name is 18, and max size is 999999999999 (931 GB). +
+ +  +When you create PAR2 files, you may change the block allocation. +By setting an unit size of blocks, +the block size will become a multiple of the unit. +
+ +  +When you select source files to create PAR2 files, +source blocks are allocated for the files. +By this option, you can change the method of how to allocate blocks. +Everytime you add or remove files, blocks will be allocated by the selected method automatically. +
+ +  +Because MultiPar tries to find efficient allocation by adjusting block size, +the result may be different from your specified value. +If you want to get a specific block size always, +set "Block size" here, and select "No restriction on the size" on above section. +If you want to allocate blocks like QuickPar, +you need to check "Limit Block count up to" and set "Block size". +
+ + 
+Example of how are the blocks in different level of total data size:
+
| Method + | CD level (600MB) + | DVD level (4GB) + | BD level (20GB) + + |
|---|---|---|---|
| Rate (count / size): 1% + | Block count: 2,508 Block size: 245 KB + | Block count: 6,553 Block size: 640 KB + | Block count: 14,655 Block size: 1,431 KB + + |
| Limit Block count up to: 3,000 Rate (count / size): 1% + | Block count: 3,000 Block size: 1,398 KB + | Block count: 3,000 Block size: 6,990 KB + + | |
| Block size: 262,144 bytes + | Block count: 2,400 Block size: 256 KB + | Block count: 16,384 Block size: 256 KB + | Block count: 32,768 Block size: 640 KB + + |
| Limit Block count up to: 3,000 Block size: 262,144 bytes + | Block count: 3,000 Block size: 1,398 KB + | Block count: 3,000 Block size: 6,990 KB + + |
 
+The difference by setting of re-use feature:
+
| application and setting | MultiPar | QuickPar (as reference) + | ||
|---|---|---|---|---|
| Not used | For a time (default) | For some days + | ||
| When you open a recovery file | verify newly | re-use previous verification result + | ||
| When you click Repair button +or When you add some new files + | verify again newly | re-use previous verification result + | ||
| When you push F5-key to re-verify | verify again newly + | |||
  +This batch processing will be started after when the Creation, Verification, or Repair was completed successfully. +If the process was stopped by error or was canceled manually, this isn't started. +For Verification or Repair, this is started, only when all source files are complete or repaired. +
+ +  +Because the size of recovery files are hard to predict for most users, +MultiPar has "Preview" feature. +You can see the list of recovery files which you will create by the current setting. +You may consider the efficiency of those files. +If you are satisfied with them, you may create recovery files directly by pushing "Create" button. +Or you may return to Create window by pushing "Cancel" button. +
+ +  +If an error is occured in a PAR client while create/verify/repair, +that is shown as "Error : something..." on GUI. +When PAR client is stopped by an error, +the output of PAR client is save in log file without option setting. +A user may refer the log to see what is the problem. +When a user want to report the problem by sending mail to a developer, +he should attach the log file with the mail. +
+  +When "malloc" error happened, decrease the number of source blocks. +If source files exist on un-writable media like CD/DVD, +copy those files on HDD at first, then repair the copied files. +If the source files are very large, be careful about available space of HDD. +If you cannot open or repair files, other applications or system may prevent your file access. +You should close others and confirm your privilege. +
+ +  +When "checksum mismatch" error happened, it was caused by a hardware problem (such like failure in CPU, RAM, HDD). +Because MultiPar consumes most machine power, PC may become un-stable by high stress or over-heat. +If MultiPar detects calculation error, it stops to avoid invalid creation or failed repair. +Your PC should be enough stable for heavy task. +
+ 
+There are some solutions to try;
+(1) Change BIOS setting for safe running.
 
+If you set over-clocking, return to the original value.
+If you set faster memory access mode, change to slower speed.
+(2) Check memory error.
 
+Recent Windows OS has memory test feature.
+If it finds error, you must replace the bad module.
+Even when you never see a problem at daily small memory usage,
+MultiPar may use larger memory space and can reveal failure.
+(3) Change MultiPar setting to disable GPU acceleration.
 
+There is "Hardware environment" section on "System settings" tab of MultiPar Options.
+Un-check "Enable GPU acceleration".
+(4) Change MultiPar setting to disable extra feature of CPU.
 
+There are some check-boxes in "Extra feature".
+Un-check them one by one and test until no error.
+The order of un-checking is from "AVX2", "JIT(SSE2)", "CLMUL", to "SSSE3".
+(5) Change MultiPar setting to use less number of threads.
 
+Move "CPU usage" slider from right to left.
+(6) Change MultiPar setting to use less memory.
 
+Select smaller number at "Memory usage upto around".
+
  +If hash value of a damaged file happens to be same as hash value of its original file, +PAR clients cannot detect the damage. +This is very rare case, but serious problem if happen. +Because data in complete files are used to recover damaged files, +miss-detection of damage causes failure of recovery. +If you get this problem, you may check files with another hash like SHA-1. +
+  +Because PAR uses MD5 hash, accidental collision problem will not happen normally. +In addition to MD5, PAR 2.0 uses CRC-32 to check completeness, +then the chance of miss-detection is very low. +Caution, MD5 was broken already as cryptgraphic hash. +When a malicious cracker modified files by forging same hash values, +PAR clients cannot detect the intended modification. +
+ +  +PAR 1.0 uses MD5 hash to distinguish source files. +When there are files of same contents, their MD5 becomes same also. +In this case, those files are distinguished by filename only. +If one of them are lost and another is misnamed, +it is difficult to determine which file is lost or misnamed. +When a file is thought as lost, it requires parity volume to recover. +If you know those files have same contents, +it is much faster to copy from another file. +
+ +  +There is a fault in the method of creating generator matrix in PAR 1.0 and 2.0. +Rarely the matrix is not invertible, and repair will be failed. +If you cannot repair files with enough recovery blocks, +you would better try with different recovery blocks. +When there are extra blocks in the set of PAR2 files, +MultiPar tries to solve this problem automatically. +
+ + + diff --git a/alpha/help/0409/python.htm b/alpha/help/0409/python.htm new file mode 100644 index 0000000..1cd6b69 --- /dev/null +++ b/alpha/help/0409/python.htm @@ -0,0 +1,321 @@ + + + + + +  +To use Python script, you need to install Python in your PC. +The official download site is here. +There are some useful documents and articles on the Internet. +You may edit a sample script for your usage. +
+ +  +Python script is saved on some text files in tool folder under MultiPar's installed directory. +If you put a script file on another folder or under Program Files directory, you must set the path of par2j64.exe or MultiPar.exe on your PC. +By default, I write relative path from the tool folder. +You can refer the directory on MultiPar's Option window: +"System settings" tab, "Folder location" section, "Open MultiPar's install folder" button. +
+ ++
| Command | "path of script file" "path of folder1" "path of folder2" "path of folder3"... + |
| Input | specify some folders + |
| Action | This sample creates individual PAR2 set in each selected folder. +For example, when you supply 7 folders, total 7 PAR2 set are made. + |
| Script file | each_folder.py + |
  +This sample tries to create efficient PAR2 files. +
+ ++
| Command | "path of script file" "path of folder1" "path of folder2" "path of folder3"... + |
| Input | specify some folders + |
| Action | This sample creates individual PAR2 set in each selected folder. +For example, when you supply 7 folders, total 7 PAR2 set are made. +It shows GUI for setting. +It's possible to filter source files by their size. + |
| Script file | large_files.py + |
| Caution | You must check MultiPar Option: "Always use folder name for base filename" in "Creation options" section on "Client behavior" tab. + |
  +Instead of searching all files in each specified folder, +it will filter files by their size. +In the sample, it selects files of 1 MB over. +You may change the limit size. +To send name of source files, it uses file-list. +
+ ++
| Command | "path of script file" "path of folder1" "path of folder2" "path of folder3"... + |
| Input | specify some folders + |
| Action | This sample creates multiple PAR2 sets for many files in each selected folder. +For example, when you supply 3 folders, it creates independent multiple PAR2 sets in every folder. +In the sample, it will create a PAR2 set for 1000 source files. +It's possible to change the limit value. +When there are 3500 files in a folder, it will create 4 PAR2 sets in the folder. + |
| Script file | group_files.py + |
  +To distinguish PAR2 files, it uses stable filename with serial numbering. +They are like; #1.par2, #2.par2, #3.par2... +When there are sub directories in a folder, it will search inner files. +To send name of source files, it uses file-list. +The process may be very slow for many files. +
+ ++
| Command | "path of script file" "path of file1 or folder1" "path of file2 or folder2" "path of file3 or folder3"... + |
| Input | specify some files and/or folders (You may select them manually on GUI.) + |
| Action | This sample creates multiple PAR2 sets for every selected files or folders. +It creates one PAR2 set for each selected file or folder independently. +PAR2 set for a file will be made in the same directory with the source file's name. +PAR2 set for a folder will be made in the folder with the source folder's name. +For example, when 3 files and 2 folders are selected, 5 items are shown on a list. +Then, it will create 5 PAR2 sets continuously. +It's possible to stop queue on GUI. + |
| Script file | queue_create.py + |
| Caution | While creation, existing PAR2 files are ignored. +When there are old PAR2 files already, it doesn't erase them. (However it may over-write same name files.) +If you want to re-create all PAR2 files newly, you must delete them at first manually. + |
  +You must set command-line options of par2j for creation. +You should refer Command_par2j.txt in help folder. +Because all creating PAR2 sets will use the same options, test with a few files to see result at first. +When you want to confirm result by MultiPar, select a PAR2 set and push "Open with MultiPar" button. +
+  +While creation, it shows details on Command Prompt window. +You can control the progress by pushing a key on the Command Prompt. +You may pause the process by pushing P-key. +You may resume the process by pushing R-key. +You may cancel the process by pushing C-key. +
+  +You may create short-cut file of this script file. +Put the short-cut on desktop or SendTo folder of Windows OS. +Then, you can drag & drop files and/or folders on the short-cut. +Or, select files on right-click "SendTo" menu. +If you select one folder, it search inner items of the folder. +If you select multiple items or one file, they are selected directly. +
+ ++
| Command | "path of script file" "path of folder" + |
| Input | specify a folder (You may select it manually on GUI.) + |
| Action | This sample verifies multiple PAR2 sets in a selected folder. +For example, when there are 7 PAR2 sets in a folder, they are shown on a list. +It will verify each PAR2 set continuously. +It's possible to stop queue on GUI. + |
| Script file | queue_verify.py + |
| Caution | You must select MultiPar Option: "Re-use verification result" to be "For 3 days" or longer, +and you should check "Don't search subfolders" in "Verification and Repair options" section on "Client behavior" tab. + |
  +In this sample, it tries verification only. +If you want to repair a damaged set automatically, use repair command instead of verify of par2j. +When you want to confirm result by MultiPar, select a PAR2 set and push "Open with MultiPar" button. +You may repair on the MultiPar GUI. +
+  +While verification, it shows details on Command Prompt window. +You can control the progress by pushing a key on the Command Prompt. +You may pause the process by pushing P-key. +You may resume the process by pushing R-key. +You may cancel the process by pushing C-key. +Even when you stop the verification task, it may save result partially. +
+  +When you push "Folder" button, it searches PAR2 sets in the selected folder. +By default, It doesn't search files recursively, because it may be slow. +If you want to search all sub-directories, you need to edit the script. +You may change behavior of starting verification automatically or not by editing the script. +
+ ++
| Command | "path of script file" "path of folder1" "path of folder2" "path of folder3"... + |
| Input | specify some folders + |
| Action | This is a simple tool to show difference of PAR and directory contents. + |
| Script file | diff_folder.py + |
| Caution | Because it checks difference of files' existence and size only, +it cannot detect broken files. +Use MultiPar to see precise status of source files. + |
  +This sample uses list command of par2j. +While it lists source files in the PAR2 set, it doesn't verify them. +After comparison with current directory-tree, +it paints blue color for additional files, +red color for missing files, +and yellow color for files of different size. +
+ ++
| Command | "path of script file" "path of file" + |
| Input | specify a PAR2 file + |
| Action | This is a simple tool to edit names of source files in PAR2 files. +Because it works in a single file, you don't need to set path of another application. + |
| Script file | par2_rename.py + |
| Caution | The modified PAR2 files by this tool are different from formal PAR2 files for renamed filenames. +When someone generates new PAR2 files for renamed filenames by QuickPar/MultiPar, +the PAR2 files are incompatible with these modified PAR2 files. + |
  +If you don't see debug output, you may rename the script file's extension to .pyw. +Then, Command Prompt won't open. +
+ + 
+How to use
+
+
| Command | "path of script file" "path of file" + |
| Input | specify a JSON file + |
| Action | +By setting /w option, par2j saves verification result on a JSON file. +This sample uses the JSON file. + |
| Script file | read_json.py + |
| Caution | +In the JSON file, par2j writes / as directory separator. + |
 
+MultiPar GUI can start script after creation.
+The script file must be auto_c.py in the user's save folder.
+A user may write any script in this file.
+The script gets two parameters from GUI as below;
+
+%1 = Path of a recovery file
+
+%2 = Path of base directory of source files
+
  +I put a sample in "tool\batch" folder. +auto_c.py shows two parameters only. +
+ + 
+MultiPar GUI can start script after verification or repair.
+The script file must be auto_v.py or auto_vl.py in the user's save folder.
+A user may write any script in this file.
+The script gets three parameters from GUI as below;
+
+%1 = Path of a recovery file
+
+%2 = Path of base directory of source files
+%3 = Exit code of the used client (refer the command-line manual)
+
  +I put two samples in "tool\batch" folder. +auto_v.py shows three parameters only. +auto_vl.py shows lists of recovery files and source files, too. +
+ + + + diff --git a/alpha/help/0409/readme1.htm b/alpha/help/0409/readme1.htm new file mode 100644 index 0000000..a401ae8 --- /dev/null +++ b/alpha/help/0409/readme1.htm @@ -0,0 +1,38 @@ + + + + +  +MultiPar was made as an alternative to QuickPar. +The GUI is similar to QuickPar by getting agreement from Peter Clements. +While it looks like a multi-lingual version of QuickPar, there are some good features; +Unicode characters, directory-tree, faster repairing, smaller recovery files, batch scripting, and so on. +
+ +  +MultiPar supports both PAR 1.0 and PAR 2.0 specifications. +See the Parchive project for details of Parchive. +MultiPar uses UTF-8 or UTF-16 to treat filenames with non-ASCII characters. +While MultiPar and par2cmdline can treat sub-directory and UTF-8 filename, +QuickPar and other PAR2 clients cannot treat them. +Almost all PAR2 clients don't support UTF-16 filename and comment. +Be careful to use those special features. +
+ +  +MultiPar requires a PC with Windows Vista or later (Windows 7, 8, 10). +
+ + + diff --git a/alpha/help/0409/readme2.htm b/alpha/help/0409/readme2.htm new file mode 100644 index 0000000..ddc3f1b --- /dev/null +++ b/alpha/help/0409/readme2.htm @@ -0,0 +1,50 @@ + + + + +  +Use this application at your own risk, because I might miss something. +If you find something odd behavior, report the incident to me. +Some examples like output-log, screen-shot, file name, file size, your PC spec, +and detailes (when / where / what / how) are helpful to solve problems. +Please contain them as possible as you can. +Then, I will fix it at next version. +
+ +  +You should treat PAR files in a same security level as their source files. +When you have secret data on some files and encrypt them, +you must create PAR files from their encrypted files. +If you create PAR files from non-encrypted files, others may know how is the original secret data. +Even when there is no enough redundancy to recover it completely, +their PAR files may reveal useful information for a spy. +
+  +Parchive doesn't prevent an intended modification. +Recovering with unknown PAR files is same as copying unknown files on your PC. +The reliability of recovered files depends on their PAR files. +PAR clients may modify original valid files into something invalid files, +when PAR files were modified by a malicious cracker. +For example, if someone created PAR files from his modified source files, +the PAR files will damage your complete source files. +
+ +  +PAR 3.0 in MultiPar is implemented only for personal testing purpose. +Because I modify its algorithm and format sometimes while writing the proposal, +current samples won't be compatible with future PAR 3.0 specifications. +Don't send current PAR3 files to others, who may not have the same version. +
+  +Currently sample PAR3 isn't available, while the specification is being updated. +
+ + + diff --git a/alpha/help/0409/readme3.htm b/alpha/help/0409/readme3.htm new file mode 100644 index 0000000..526a36c --- /dev/null +++ b/alpha/help/0409/readme3.htm @@ -0,0 +1,83 @@ + + + + +  +Double click setup file ( MultiPar131_setup.exe or something like this name ), +and follow the installer dialog. +At version up, if you want to use previous setting, overwrite install is possible. +Before overwrite install, you should un-check "Integrate MultiPar into Shell". +You may need to re-start OS after overwrite install or uninstall rarely. +To install under "Program Files" or "Program Files (x86)" directory, +you must start the installer with administrative privileges by selecting +"Run as administrator" on right-click menu. +
+  +You can uninstall through the Windows OS's Control Panel, +or double click unins000.exe in a folder which MultiPar was installed. +Because uninstaller does not delete setting files or newly put files, +you may delete them by yourself. +
+  +When you have used installer package, you should not move install folder. +Or else, you will fail to uninstall later. +
+ +  +If multiple users may log-on a PC, the administrator can install MultiPar for everyone. +By installing with administrative privileges, installer made Start Menu icon, +Desktop icon, and File association will be available for all users. +When he installed under "Program Files" directory, each user keeps individual setting. +When he installed in another folder, all users share same setting. +In either case, user made icons and association are available for the user only. +
+ +  +Unpack compressed file ( MultiPar131.zip or something like this name ) in a folder. +MultiPar.exe is the interface of MultiPar. +
+  +You can create short-cut icon or send-to link at Option window later. +If you associate PAR file extensions ".par" or ".par2" with MultiPar, +de-associate them from other application like QuickPar at first. +
+ +  +If you associate PAR file with MultiPar, de-associate them from this. +Delete all files in the install folder, in which you extract files. +If you installed MultiPar under "Program Files" directory, +setting data was saved in MultiPar folder under "Application Data" directory, +so you need to delete the folder. +
+  +When you integrated MultiPar into shell at Option window, +you must clear the check before un-install. +If you have deleted MultiPar.exe already, you can un-install the DLL manually. +Open "Command Prompt" and change directory to MultiPar's folder, +then type "RegSvr32.exe /u MultiParShlExt64.dll" to remove shell extension. +You cannot delete "MultiParShlExt64.dll", while it is used by OS or Explorer. +You may log-off and log-on again to OS before deleting the file. +
+ +  +Move files in the install folder. +If you associated PAR file with MultiPar, de-associate once, and associate again. +If you want to use same setting at another PC, copy the setting file "MultiPar.ini". +If you move MultiPar into "Program Files" directory, +setting data is saved in MultiPar folder under "Application Data" directory, +so you need to move "MultiPar.ini" into the folder, too. +
+ + + diff --git a/alpha/help/0409/readme4.htm b/alpha/help/0409/readme4.htm new file mode 100644 index 0000000..5400cec --- /dev/null +++ b/alpha/help/0409/readme4.htm @@ -0,0 +1,52 @@ + + + + + +  +MultiPar consists of PAR clients and GUI to control them. +They are written by Yutaka Sawada. +Though console applications are open source (PAR clients are GPL), +GUI application is closed source. +Some article are available at +my web site. +There are source code packages on GitHub. +
+ +  +I use GitHub issue's page as a web-forum for MultiPar users. +
+  +My name is Yutaka Sawada. +E-mail address is "tenfon (at mark) outlook.jp". +Or "multipar (at mark) outlook.jp" for PayPal usage and +"tenfon (at mark) users.sourceforge.net" for SourceForge users. +Because they use a same mail-box, don't send duplicate mails. +Though e-mail address had been "ten_fon (at mark) mail.goo.ne.jp" ago, +the mail service ended at March 2014, so don't send to there. +The (at mark) is format to avoid junk mails, and replace it with "@". +
+  +I get many spam mails from oversea. +If an e-mail is detected as junk mail or suspicious, +mail server may delete it automatically, and I won't see it. +
+ +  +I use vector.co.jp's author page to introduce MultiPar. +Because there is another official download page, +using direct link to files on the page isn't preferable. +When you write a link on somewhere, please don't include filename. +
+ + + diff --git a/alpha/help/0409/record.htm b/alpha/help/0409/record.htm new file mode 100644 index 0000000..2c0f069 --- /dev/null +++ b/alpha/help/0409/record.htm @@ -0,0 +1,96 @@ + + + + +  +ZIP archive (extension .zip) is used widely and 7-Zip archive (extension .7z) is useful. +Because they don't have a feature of recovery record, someone might feel RAR archive is better. +But, by using Parchive, normal ZIP or 7-Zip archive can be protected with recovery record also. +
++
| Step 1: | +Create a ZIP or 7-Zip archive file. | +
| |||
| Step 2: | +Create a single PAR2 file for the archive file. | +
| |||
| Step 3: | +With binary editor or Copy command, append the PAR2 file to the archive file. +Then, the appended archive file contains recovery record. +The construction of the file is like below; + | ||||
| |||||
Step 4 is required only for ZIP archive: | |||||
| +There is "end of central directory record" (starting with a byte sequence of: 0x06054b50) at the end of ZIP file. +With binary editor, copy the section (22-bytes or more) and append it to the end of recovery data. +The construction of the file is like below; + | |||||
| |||||
+When the ZIP file is ZIP64 format, +there are "zip64 end of central directory record" (starting with a byte sequence of: 0x06064b50), +"zip64 end of central directory locator", and "end of central directory record" at the end of ZIP file. +With binary editor, copy the 3 sections (total 98-bytes or more) and append them to the end of recovery data. + | |||||
| |||||
  +Because the file header is still the one of archive, it's treated as an archive file, +and normal archiver software can extract inner files. +Because the file contains PAR2 packets, PAR2 client can treat it as PAR2 file also. +As MultiPar can treat a PAR2 file which has different extension from ".par2", +Drag&Drop the protected archive onto MultiPar short-cut icon will verify the archive file. +On the MultiPar GUI, the archive with recovery record is shown as "Appended" status, +when the original part of archive is complete. +
+  +Note, if you repair the archive, +recovery record (appended PAR2 recovery data) will be removed. +When you want to keep the PAR2 recovery data, +you need to copy the file at first, and rename it to "something.par2", +then open the "something.par2" by MultiPar (or QuickPar). +Though you can split a protected archive into original part and recovery record by a binary editor, +it's not easy task for normal users. +
+  +I think this method is useful to protect only one archive file. +It is same as having two files (an archive file and its PAR2 file), +but is convenient for transport / public / distribution as one ZIP/7-Zip file. +Normally freeware/shareware publication site accepts only one archive file. +If an archiver software has a built-in feature to append PAR2 recovery data to a created archive, +it may be useful. +
+ + + + diff --git a/alpha/help/0409/recreate.htm b/alpha/help/0409/recreate.htm new file mode 100644 index 0000000..dd61a7a --- /dev/null +++ b/alpha/help/0409/recreate.htm @@ -0,0 +1,161 @@ + + + + +  +The directory and selection of source files are same as the original recovery file. +Selected files are listed on the file-list, and the total data size and blocks are calculated. +You cannot change the block allocation, too. +
+ + 
+Sample distribution of 500 blocks for each sizing scheme:
+
| Sizing scheme | How many blocks in each recovery file + | |
|---|---|---|
| All the same size | 167, 167, 166 (when 3 files) | 84, 84, 83, 83, 83, 83 (when 6 files) + |
| Variable size | 72, 144, 284 (when 3 files) | 8, 16, 32, 64, 128, 252 (when 6 files) + |
| Powers of 2 sizing scheme | 1, 2, 4, 8, 16, 32, 64, 128, 245 (total 9 files) + | |
| Decimal weights sizing scheme | 1, 1, 2, 5, 10, 10, 20, 50, 100, 100, 200, 1 (total 12 files) + | |
  +On the file-list, recovery files are put on upper side, +and source files are put on lower side. +Because Size and Status of each file are shown, +it is easy to know which is incomplete. +Total size and number of total blocks are shown, too. +
+ +  +After verification, the result like number of files on each status is shown. +When source files are damaged or lost, +you can know whether it is possible to repair or not. +You may recognize the status easily by their icon color. +[green file] indicates the file is complete. +[yellow file] indicates the file is damaged or misnamed. +[red file] indicates the file is missing. +[yellow folder] indicates the folder exists. +[red folder] indicates the folder is missing. +Manually added external files are shown as [white file]. +
+ +