BUG: Windows Installer Fails to Copy All Files when Using Multiple CabinetsID: Q223058
|
The Windows Installer does not support installing from cabinet (CAB) files when more than 15 files are split across two cabinet files (two CABs each containing pieces of 15 different files). If this situation occurs, the user does not receive an error even though not all files in the two cabinet files are installed.
Note that the above problem is different than splitting 1 file across 2 cabinets 15 times in your package. The situation occurs only when the cabinet engine splits multiple files across the same two cabinets.
When an entire file is not in the first cabinet, a filecopy operation is put on the stack. The stack size is limited to 15. When the second cabinet is encountered, only the 15 filecopy operations on the stack are executed. The remaining filecopy operations will not run.
The number of files spanning from one cabinet to the other should be reduced to 15 or below.
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.
Because the compression technology operates on 32 KB blocks, when it reaches a disk boundary, all files that fall within the current 32 KB block get "split" over to the next disk. Thus, packages that contain large numbers of small files are likely to run into this problem. For example, if a package has 1000 consecutive files, each 200 bytes in size, 164 files (32KB/200) would be split to the next disk when the compressor reaches the disk boundary.
See the topic "Cabinet Files" in the Windows Installer Help file:, Msi.chm.
Additional query words: cab compressed
Keywords : kbAppSetup kbMSI kbDSupport kbGrpDSTools
Version : WINDOWS:1.0
Platform : WINDOWS
Issue type : kbbug
Last Reviewed: July 15, 1999