Link to home
Start Free TrialLog in
Avatar of Enabbar Ocap
Enabbar OcapFlag for Italy

asked on

vsi The property ‘SourceFile’ of file ‘xxxx.dll’ is invalid.

I’m trying to build a merge module with visual studio installer, the project contains several dlls that I have created and I am getting this warning for only one of them.

If I double-click the file name in the dependencies list I get the message ‘The file that this item references cannot be found.’.

The file exists, is registered and is listed in the dep file for the second dll.

Why should this sourcefile be invalid?
ASKER CERTIFIED SOLUTION
Avatar of hes
hes
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Enabbar Ocap

ASKER

Thanks hes

I have tried that, I can't delete the file itself as it is only in there because it is listed as a dependency of an included file.
I can delete the dependency reference and add the file but it then appears directly under Files. If I then restore the reference it still comes up with the warning.

I have to confess almost total ignorance of vsi, I'm new to it and the documentation seems mostly aimed at telling me how good it is, but very little in the way of how I should be using it. I haven't found very much at all on creating and using merge modules, although what I have read seems to be telling me that I should be using them.
I've been prodding around and I don't know whether this will help you to help me.

If I right-click on the dependancy of one of my files that doesn't show an error it shows the full path - well with some dots and backslashes, but if I view the same information on the offending file then SourceFile is just shown as the filename, no path. At least the error message is beginning to make some sense now.

Can you suggest anything I can do to encourage the SourceFile property to display the path?

I have the code that created the offending file (VB), could it be something I set when I compiled it or built the dep file?
I've fixed it/got around it.
Not sure if it's a valid way but it's got rid of the warning.
I opened the dep file (of the project that references the missing file)and added the full dll path in there.
Rebuilt the merge project and the warning has gone.
(Almost what you suggested hes)

I've actually got another problem now, it say's I can't include a dialog in the module - this didn't show up before and looks somewhat like a good place to stop.

Can you suggest a reference or a good book that would explain merge modules or the proper use of vsi?
Thanks for your time hes,

I've actually visited all those references or found them in msdn :(

Never mind though, your first comment put me on the right track, there seems to be a lot more to this subject than the available documentation would have me believe.