Problem Adding Files to imported MSI's

Got a problem you cannot solve? Try here.
Post Reply
DanStutzman
Posts: 85
Joined: Wed Jun 10, 2009 10:36 am
Location: Philadelphia, PA
Contact:

Problem Adding Files to imported MSI's

Post by DanStutzman »

I think this may be a bug.

Whenever I import a MSI using the MSI import tool, I cannot add files to the installation. I can change whatever want to the files themselves but when files are added I recieve the error message:

Error
Could not access network location.

I have discovered that the files I wish to add do not get copied into my project folder the way everything else does. Here is a sample script:

Code: Select all

Does not work:
   Install Files C:\\Documents and Settings\\ARAMARK\\My Documents\\HP ServiceCenter 6.2.6 Files\\workspace\\.metadata\\.plugins\\org.eclipse.ui.workbench\\workbench.xml to $ALLPROFILES$\\workspace\\.metadata\\.plugins\\org.eclipse.ui.workbench
   Install Files C:\\Documents and Settings\\ARAMARK\\My Documents\\HP ServiceCenter 6.2.6 Files\\workspace\\.metadata\\.plugins\\org.eclipse.ui.workbench\\dialog_settings.xml to $ALLPROFILES$\\workspace\\.metadata\\.plugins\\org.eclipse.ui.workbench

 Work:
   Install Files C:\\Documents and Settings\\ARAMARK\\My Documents\\HP ServiceCenter Client v6.2.6\\client.cab\\filetable\\.fileTable to $TARGETDIR$\\configuration\\org.eclipse.core.runtime\\.manager
   Install Files C:\\Documents and Settings\\ARAMARK\\My Documents\\HP ServiceCenter Client v6.2.6\\client.cab\\registry.1\\.registry.1 to $TARGETDIR$\\configuration\\org.eclipse.core.runtime

I've built about 20 packages since migrating to IA and this is the 3rd different MSI I have tried to import and then modifiy and the 3rd different MSI that has returned this error message.

Is there something special that I haven't discovered yet about adding files to imported MSI's?

Thanks

Dan
neillans
Posts: 536
Joined: Sat Nov 04, 2006 6:21 am
Location: Scottish Borders, UK

Post by neillans »

Hi Dan,

The imported / converted MSI's are intended to capture as much information as possible, and to give you something to work from in order to refactor your setup to an InstallAware project.

Unfortunatly with the complexity of setup projects these days, it is inevitable that there will be some manual modifications required to get it to work again.

Would it be possible for you to provide exaple of doesn't work / works with the same file references in each so that we can immediatly identify the issue?
Andy Neillans
DanStutzman
Posts: 85
Joined: Wed Jun 10, 2009 10:36 am
Location: Philadelphia, PA
Contact:

Post by DanStutzman »

neillans wrote:Hi Dan,

The imported / converted MSI's are intended to capture as much information as possible, and to give you something to work from in order to refactor your setup to an InstallAware project.

Unfortunatly with the complexity of setup projects these days, it is inevitable that there will be some manual modifications required to get it to work again.

Would it be possible for you to provide exaple of doesn't work / works with the same file references in each so that we can immediatly identify the issue?

Andy... weren't you with MEI mate? If not, that's alright but I worked with a chap named Andy Neillans a couple of years back.

But anyway...

The problem is that once the project has been imported, and the files are in the project folder, IA will not copy added files into the project. I have discovered that it will also not create folders that aren't associated to the captured folders either.

I view this as a major bug mate. Once the project has been imported and I'm in the IDE, it should handle everything I throw at it.

A thought just came to me as I'm typing this... I wonder if I should have decompiled it first. I wonder if decompiling the MSI and then importing it would have worked. I wonder if the problem lies that the source files in the project folder say "Client.cab".

I'll give it a go here in a minute and I'll get back to you.


Cheers,
neillans
Posts: 536
Joined: Sat Nov 04, 2006 6:21 am
Location: Scottish Borders, UK

Post by neillans »

Hi Dan,

I've done a lot of consulting for various companies, but MEI doesn't ring a bell I'm afraid; very surprised to hear of a namesake however - always thought I was unique ;)

Let me know how you get on -- you are right to assume you will need to unpack the file before capturing the setup.
Andy Neillans
DanStutzman
Posts: 85
Joined: Wed Jun 10, 2009 10:36 am
Location: Philadelphia, PA
Contact:

Post by DanStutzman »

That's what it is.

To actually modify a 3rd party, compressed (single-file) MSI, you must first run that MSI through the decompressor and then import said MSI into the IDE. At that point you can then add files/folders/shortcuts to the IDE Project.

I still consider this to be a bug in the aspect that the IDE has imported the files and based upon the MSICode should be able to handle additions made but doesn't.

Also, quick question. I remember reading how you change the package so that it uses the project dir variable. How do I that again?

Cheers,
MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Post by MichaelNesmith »

The Setup Decompressor is used when you are adding MSI files to your installation "verbatim" - meaning, you'll just be installing them using (Un)Install MSI Setup without changing the MSI or reverse engineering it. You don't have to use it - it primarily exists to help you leverage the better compression InstallAware provides when its repacking the MSI either via File Bag or the support files mechanism. Re-compressing an already MSI compressed file does not provide space savings, even if you are using a better compression algorithm.

The Database Import Wizard on the other hand "reverse engineers" an MSI file. It could be that you are running into a bug with it; it is also possible that paths are exceeding the 256 character path length limit. Try re-importing into a shorter root path such as c:\\test and see if that helps. I suspect files are not copied due to the path length issue.
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
DanStutzman
Posts: 85
Joined: Wed Jun 10, 2009 10:36 am
Location: Philadelphia, PA
Contact:

Post by DanStutzman »

MichaelNesmith wrote:The Setup Decompressor is used when you are adding MSI files to your installation "verbatim" - meaning, you'll just be installing them using (Un)Install MSI Setup without changing the MSI or reverse engineering it. You don't have to use it - it primarily exists to help you leverage the better compression InstallAware provides when its repacking the MSI either via File Bag or the support files mechanism. Re-compressing an already MSI compressed file does not provide space savings, even if you are using a better compression algorithm.

The Database Import Wizard on the other hand "reverse engineers" an MSI file. It could be that you are running into a bug with it; it is also possible that paths are exceeding the 256 character path length limit. Try re-importing into a shorter root path such as c:\\test and see if that helps. I suspect files are not copied due to the path length issue.
That was my first thought as well but it's not. You can recreate the problem like this:

1. Import Orca.msi
2. Add to the package via the IDE, winter.jpg from $mypics\\sample pics and add it to $myprofile$\\winter.jpg.
3. Build a SFX.
4. Install the EXE on a different VM and I guarantee you that you will get the error message Error Network location \\Profile\\ could not be found.
neillans
Posts: 536
Joined: Sat Nov 04, 2006 6:21 am
Location: Scottish Borders, UK

Post by neillans »

Hi Dan,

Interesting .... I'll log it on our bug tracker, but afraid I'm not sure how quickly it will be investigated :(
Andy Neillans
Post Reply