cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to integrate CAB files into an MSI file

Hi all,
I am seriously stuck up wid a problem...

I have one MSI and one MST file in my project. Now when i run these from command line it says few .dll's missing (FILE\ViRead.dll etc...)which are actually within a folder named FILE. Now when i put FILE folder in the same location where MSI and MST is present , the installation completes widout any error. Now i have to deliver my MSI and MST alone and i cant give FILE folder as it is with them so i created a CAB file and added the contents of the folder i.e. FILE into it and kept CAB file with MSI and MST. Now my deliverable contains MSI,MST and CAB file.

Now when i run MSI and MST ,this time again it gives the same dll missing error. I think this is because the cab file is not integrated into the package.

Can somebody tell how i can tell the MST or MSI that the FILE folder contents are now in CAB file and it should refer that cab file now to fetch the dll's.


Any sort of help will be highly appreciated....!!!

thanks in advance..:)
(3) Replies
No problem. Assuming that the file sequencing is correct, you'll need to edit the Media table. Find the row in the Meida table that points to your added files and add the name of the cabinet file under the Cabinet column. That's it.

Hope that helps,
thanks a lot for ur interest in my problem...

The thing is i have added those files to my MST and that has created the CAB file. So i am able to see an entry for the cab file in the Media table already. The row included Disk ID, Volume Label, Cabinet, last sequence , disk prompt etc columns.
Hm. There must be something missing. I'm assuming that the cab file is in the same folder as the .msi and .mst. The next thing that I would try is running the .msi with logging enabled. When the dialog pops up about the missing file, leave the dialog on the screen and look at the end of the log file. There should be an entry describing the name and path of the file--make sure it matches the contents of the cab file.

Hope that helps,