473,387 Members | 1,592 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

cabinet file corrupt

SS
We built an MSI file to deploy a .net app to the workstation. We created an
HTML page that has a link to the MSI file.

On a very sporadic basis, when the MSI is run we get the following message:
The cabinet file '_blahblahblah' required for this installation is corrupt
and cannot be used. This could indicate a newtwork error, an error reading
from the CD-ROM, or a problem with this package.

The MSI file fails consistently on some computers but not others. The file
only fails when it was downloaded through IE. If the file was copied in
Windows Explorer to the local machine, it works fine.

I tried a quick test as follows: I put the MSI file in the root folder on
our website, which is hosted on our local server. I created a dummy HTML page
that has a link to the file. When I open the HTML page in IE and click on
that link, it asks if I want to run or save the file. I saved the file to a
folder on my local drive. Then I used Windows Explorer and copied the same
exact file to the same folder (after renaming the first copy of it, of
course). Then I used file compare to see if the files were different.

Lo and behold to my great surprise, they ARE different according to FC. What
the heck? Why did IE change the MSI file when it was "downloaded"?? What can
be done to work around this wierdness?

--
SS
Jul 21 '05 #1
4 11834
SS <SS@discussions.microsoft.com> wrote:
We built an MSI file to deploy a .net app to the workstation. We created an
HTML page that has a link to the MSI file.

On a very sporadic basis, when the MSI is run we get the following message:
The cabinet file '_blahblahblah' required for this installation is corrupt
and cannot be used. This could indicate a newtwork error, an error reading
from the CD-ROM, or a problem with this package.

The MSI file fails consistently on some computers but not others. The file
only fails when it was downloaded through IE. If the file was copied in
Windows Explorer to the local machine, it works fine.

I tried a quick test as follows: I put the MSI file in the root folder on
our website, which is hosted on our local server. I created a dummy HTML page
that has a link to the file. When I open the HTML page in IE and click on
that link, it asks if I want to run or save the file. I saved the file to a
folder on my local drive. Then I used Windows Explorer and copied the same
exact file to the same folder (after renaming the first copy of it, of
course). Then I used file compare to see if the files were different.

Lo and behold to my great surprise, they ARE different according to FC. What
the heck? Why did IE change the MSI file when it was "downloaded"?? What can
be done to work around this wierdness?


Check what mime type IIS is reporting the MSI file as having. If it's
anything to do with text, that could well be a problem.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too
Jul 21 '05 #2
SS
Thanks for the suggestion, but so far that doesn't appear to be it. The MIME
type is the (I presume) default of "application/octet-stream". Moreover, on
most workstations it works fine. The problem is sporadic; that is, it is
consistent on the machines on which it occurs, but it occurs inconsistently
between machines and network connection types.

We're a small office so I don't have a lot of systems to try this on, but on
3 of 3 XP boxes in the office, it fails with the corrupt CAB error. On 1 of 1
W2K boxes, it works fine. All three boxes are inside our domain. Implication:
on XP, inside our domain, it fails consistently.

When I set up the W2K to dial in through AOL so that it is outside of the
domain, it works fine. When I run it outside of the domain, on 1 out of about
5 or so (so far) it failed; on the rest (4) it worked fine. The one that
failed is XP, but the other computers were a mix of W2K and XP. Implication:
XP outside the domain is 50/50, W2K outside the domain is 100% OK.

So, it seems to be related to XP on the client, since all the failures so
far are XP client workstations. Some have SP2, some don't; some are inside
the domain, some aren't.

The installation is a simple "xcopy install" kind of thing; there is an EXE
(VB.Net) and several dozen graphic files. There are two DLLs;
AxInterop.MediaPlayer.DLL and Interop.MediaPlayer.DLL, because the
application embeds MP 6.4 to play video files served from the server. The app
sends queries to an MS SQL Server DB and receives results via an HTTP
interface (to avoid conflict with blocked ports at our user's locations).
Nothing all that complicated in the install itself, it seems to me.

I could provide the fc.exe (file compare) results, if that would mean
anything to anyone who's reading this. The msi file is 2.8 Mb (file
properties reports identical results). When the IE-downloaded file and a
simple copy of the file are compared via file compare (fc), fc's output isn't
all that vast; 12K of gobbledygook text. A casual visual inspection of the fc
output reveals almost nothing meaningful to me; I can't see anything
different even where it reports differences. But then, it's a text
interpretation of binary data (compressed, binaries at that), so I wouldn't
expect to see much obvious unless the file had been majorly transformed.
Clearly, nothing major changed -- it's something subtle, and baffling so far.

I appreciate any ideas anyone can suggest. I'm astounded that no one else
has had a similar problem! This is our first attempt at a .net application
and the problem appeared almost immediately.
"Jon Skeet [C# MVP]" wrote:
SS <SS@discussions.microsoft.com> wrote:
We built an MSI file to deploy a .net app to the workstation. We created an
HTML page that has a link to the MSI file.

On a very sporadic basis, when the MSI is run we get the following message:
The cabinet file '_blahblahblah' required for this installation is corrupt
and cannot be used. This could indicate a newtwork error, an error reading
from the CD-ROM, or a problem with this package.

The MSI file fails consistently on some computers but not others. The file
only fails when it was downloaded through IE. If the file was copied in
Windows Explorer to the local machine, it works fine.

I tried a quick test as follows: I put the MSI file in the root folder on
our website, which is hosted on our local server. I created a dummy HTML page
that has a link to the file. When I open the HTML page in IE and click on
that link, it asks if I want to run or save the file. I saved the file to a
folder on my local drive. Then I used Windows Explorer and copied the same
exact file to the same folder (after renaming the first copy of it, of
course). Then I used file compare to see if the files were different.

Lo and behold to my great surprise, they ARE different according to FC. What
the heck? Why did IE change the MSI file when it was "downloaded"?? What can
be done to work around this wierdness?


Check what mime type IIS is reporting the MSI file as having. If it's
anything to do with text, that could well be a problem.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too

Jul 21 '05 #3
SS
*sigh* Further research as follows: I downloaded the file using Mozilla and
IE on the same W2K workstation inside our domain. They are different. This
time I compared the saved files using FC with the /b flag for binary. About
24 words were listed as changed, scattered throughout the file. The results
are shown below. I presume some of those differences are things like "last
accessed date" or other properties of the file, and not the "meat" of it.

But something else is changed, too, causing the MSI to fail. So far, the
failures have only occurred in XP. I'm beginning to suspect the version of
Installer...

FC results for Mozilla downloaded file and IE downloaded file:
Comparing files cepSetup3MO.msi and CEPSETUP3IE2.MSI
00020965: 7F FF
00029275: 68 E8
00081AA1: ED 6D
00099FC5: A1 21
000D37E5: 1C 9C
000D956D: 36 B6
000EF905: A3 23
000F4F55: F5 75
0010DEB1: 84 04
001101ED: 54 D4
00115EE1: 6C EC
00116A59: 57 D7
0014FCC5: FC 7C
00178401: A5 25
001D1C21: 98 18
001DDF91: D2 52
001F64A5: 01 81
0020489D: 9A 1A
0024E801: AC 2C
00254C4D: 84 04
00257671: A9 29
00286355: F1 71
002984FD: E3 63
002A0835: 39 B9
002C166D: 71 F1
002C3861: C7 47

"SS" wrote:
We built an MSI file to deploy a .net app to the workstation. We created an
HTML page that has a link to the MSI file.

On a very sporadic basis, when the MSI is run we get the following message:
The cabinet file '_blahblahblah' required for this installation is corrupt
and cannot be used. This could indicate a newtwork error, an error reading
from the CD-ROM, or a problem with this package.

The MSI file fails consistently on some computers but not others. The file
only fails when it was downloaded through IE. If the file was copied in
Windows Explorer to the local machine, it works fine.

I tried a quick test as follows: I put the MSI file in the root folder on
our website, which is hosted on our local server. I created a dummy HTML page
that has a link to the file. When I open the HTML page in IE and click on
that link, it asks if I want to run or save the file. I saved the file to a
folder on my local drive. Then I used Windows Explorer and copied the same
exact file to the same folder (after renaming the first copy of it, of
course). Then I used file compare to see if the files were different.

Lo and behold to my great surprise, they ARE different according to FC. What
the heck? Why did IE change the MSI file when it was "downloaded"?? What can
be done to work around this wierdness?

--
SS

Jul 21 '05 #4
SS <SS@discussions.microsoft.com> wrote:
*sigh* Further research as follows: I downloaded the file using Mozilla and
IE on the same W2K workstation inside our domain. They are different. This
time I compared the saved files using FC with the /b flag for binary. About
24 words were listed as changed, scattered throughout the file. The results
are shown below. I presume some of those differences are things like "last
accessed date" or other properties of the file, and not the "meat" of it.


Interesting. Have you noticed the pattern? In each case, it's just the
top bit that's wrong - sometimes one way, sometimes the other.

Now, as to what might cause that, I've no idea. Awful as the prospect
is, have you considered running a network trace to see what's actually
being transmitted?

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too
Jul 21 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
by: Vinay | last post by:
Hi I have a corrupt word file. I am able to open it with the code given below tr Dim pInfo As System.Diagnostics.ProcessStartInfo = New System.Diagnostics.ProcessStartInfo( pInfo.UseShellExecute...
0
by: trialproduct2004 | last post by:
Hi all I am having problem at a time of suing cabinet SDK. I am using cabinet SDK for compressing and uncompresing files. My problem is when i try to compress large folder, small compressed files...
4
by: SS | last post by:
We built an MSI file to deploy a .net app to the workstation. We created an HTML page that has a link to the MSI file. On a very sporadic basis, when the MSI is run we get the following message:...
17
by: shineofleo | last post by:
Here is the situation: I wrote a VB programm, which stores all the information in a single Access database file using jet engine. It worked well, however one of my customs reported that there was...
18
by: rdemyan via AccessMonster.com | last post by:
Here's my plan for creating nightly backups of the production back-end file (the IT staff in their infinite wisdom have prevented use of Windows Scheduler and users do not have administrative...
2
by: f0zzyNUE | last post by:
hi, i need to extract a cabinet file (.cab) within a .net application ... are there some classes in the .net framework that support extraction of these archive files or can somebody recommend a...
5
by: djhexx | last post by:
Hello. I have an ASP.NET application (C#) that I allow users to upload files. Files get stored in a SQL2005 database. The file data is stored in a varbinary(max) column. When the user uploads...
8
by: =?Utf-8?B?Q2hyaXMgRmluaw==?= | last post by:
I am trying to make a minor modification to the code below and need some assistance. Currently this code is using the java.util, java.util.zip, and java.io assemblies from the vjslib.dll assembly....
1
by: shyaminf | last post by:
hi everybody! iam facing a problem with the transfer of file using servlet programming. i have a code for uploading a file. but i'm unable to execute it using tomcat5.5 server. kindly help me how to...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.