MOSS and Solution deployment: Problems with the cab file


Solution deployment is really powerful way to deploy your customization to the customer environment. However I encountered small issue that you need to be aware. Again I had working solution that I have installed and upgraded few times. But when I added a lot of new files to my solution I ran into problems (somehow this kind of things just happen to me… am I the only one?).

stsadm –o upgradesolution ...

Failed to extract the cab file in the solution.

And then I debugged my solution files and noticed that I had scandinavian letters (ä,ö,å etc.) in my filenames. In this exact case I had one file that had ‘ö’ in it’s name and it resulted to the error above. I tested my cab file (renamed it from .wsp to .cab) with explorer and it displayed filenames inside the cab file correctly. So my MakeCab.exe wasn’t the problem. So in order to fix this problem I just renamed my file (and changed the references pointing to it) and created the package again. After that solution upgrade worked normally.

So clearly this indicates that you should avoid using any special chars in your filenames since it could cause you problems at the solution deployment.

Anyways… Happy hacking!

J

Comments (7)

  1. Luciano says:

    ROTFL, if you want maximum portability keep the 8.3 file name RULE!!!

  2. Hi Luciano!

    Sorry for the delayed comment, but I have been on the road.

    I still disagree with you 8.3 rule, since according to that you couldn’t deploy .ASPX files. And that is just normal deployment stuff. Actually the deployment works pretty much with every filename… except those special characters. And I have tested with longer filenames and that doesn’t create any problems.

    This is just one small issue that you need to keep in mind when working with your solutions.

    J

  3. crapmoss says:

    it seems if dds file contains mismatched ".Set DestinationDir" and file names, this error happens as well.

  4. Obfuskater says:

    I was amazed to discover even brackets () can cause this error, as well as ^ and ~.

    Brackets?! Unbelievable!

  5. Wonder says:

    I was facing the same problem. I checked and didn’t find any special characters. I recycled teh Apppools and then it started working fine!

  6. Abbas says:

    This was a great help to me, as I had copied the resource files in in Resource folder of solution, which created copies of resource files as "Copy (2) of …..resx" and this caused the error.

    Thanx

  7. Purnil says:

    Had same problem. I had copied a file twice in a folder due to which there was a file called "Copy (2) of …" whch was causing the error.

    Thanks.

Skip to main content