1335 - The cabinet file '[2]' required for this installation is corrupt and cannot be used. This could indicate a network error, an error reading from the CD-ROM, or a problem with this package |
If you try to install a file into a long path and this is too long for your filesystem then Windows Installer will fail to create the file and incorrectly point at a corrupt cab file as the reason.
I have used the following batch file to reproduce this problem on a known "good" msi:
@setlocal @set INSTALLDIR=c:\aaaa\very\longgggg\pathxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxNowTooLong @set INSTALLDIR=c:\aaaa\very\longgggg\pathxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx @set msi=out\TryMe.MM\MSI\TryMe.msi @set InstallHow=/I msiexec.exe %InstallHow% "%msi%" ALLUSERS=1 /l*v Install.log.txt INSTALLDIR="%INSTALLDIR%"
A verbose log contained these messages:
MSI (s) (84:0C) [17:35:02:484]: Note: 1: 2318 2: C:\aaaa\very\longgggg\pathxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\TryMe.MM MSI (s) (84:0C) [17:35:02:484]: Note: 1: 1335 2: _MAKEMSI_Cabs.MM01.cab
This implies that all sorts of file creation errors could perhaps also produce this message. The "2318" message (file not found) would appear to confirm this.
I have noticed that if you make the directory longer still Windows Installer will report the path as too long (1320).