I found the problem:
<Package
...
Compressed="no"
/>
Setting this to "yes" fixed it. Suddenly my MSI was 4meg and it worked.
I did read that _Streams was a temporary table in MSDN, but the instructions
for embedding a CAB (http://msdn2.microsoft.com/en-us/library/aa369279.aspx)
tell you to add it to the _Streams table in step 8.
About the disk ID, the table got screwed up with cut and paste:
DiskId
LastSequence
DiskPrompt
Cabinet
VolumeLabel
Source
i2
i4
L64
S255
S32
S72
1
7
#XUSB21.cab
This means that every file with sequence number 7 or below will be in the
cabinet.
Thanks,
- Matt
From: Mike Dimmick [mailto:[EMAIL PROTECTED]
Sent: Friday, March 16, 2007 2:30 PM
To: Matt Coill; wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] CAB not being written to _Streams table
_Streams is not a real table. The documentation states "This is a temporary
table, created only when referenced by a SQL statement." The CABs are actually
stored as separate streams in the OLE Structured Storage file. You can see them
with the DocFile Viewer (dfview.exe) from Visual Studio 6.0 (it may be included
in later versions but I can't see it) but that's not really very helpful as the
names of the streams are mangled.
If you want to change the compression level, change the CompressionLevel
attribute. However, here, I think that you've misunderstood DiskId. Only the
files marked with the same DiskId are included in the specified CAB file. I'm
not sure if there's any point making multiple embedded CABs, although it is
possible to request light.exe to reuse existing CAB files.
--
Mike Dimmick
________________________________
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Matt Coill
Sent: 16 March 2007 20:37
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] CAB not being written to _Streams table
Embeddding the cab:
<Media Id="1" EmbedCab="yes" Cabinet="XUSB21.cab" />
Opening the msi with ORCA:
I see that the cab is listed as embedded in the media table -
DiskId
LastSequence
DiskPrompt
Cabinet
VolumeLabel
Source
i2
i4
L64
S255
S32
S72
Media
DiskId
1
7
#XUSB21.cab
The files that should be embedded in it are all the ones sequence of seven or
less
File
Component_
FileName
FileSize
Version
Language
Attributes
Sequence
s72
s72
l255
i4
S72
S20
I2
i4
File
File
wdf_dll_x64
wdf_dll_x64
wdfx64.DLL|wdfcoinstaller01005.dll
1419232
1.5.6000.0
0
512
6
wdf_dll_x86
wdf_dll_x86
wdfx86.DLL|wdfcoinstaller01005.dll
1419232
1.5.6000.0
0
512
3
wdf_update_x64
wdf_update_x64
wdfupx64.DLL|WUDFUpdate_01005.dll
831096
6.0.6000.16386
1033
512
7
wdf_update_x86
wdf_update_x86
wdfupx86.DLL|WUDFUpdate_01005.dll
831096
6.0.6000.16386
1033
512
4
xusb21_inf
xusb21_inf
xusb21.inf
8400
512
1
xusb21_sys_x64
xusb21_sys_x64
xusb21.sys
347904
6.0.6000.16386
1033
512
5
xusb21_sys_x86
xusb21_sys_x86
xusb21.sys
284544
6.0.6000.16386
1033
512
2
But there is no _Streams table and the file size is only 70K which is
essentially the same size as without compression.
Does WIX2.0 not support this, or am I missing something?
Thanks,
- Matt
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users