Package Deployment


I have created a big program in VB6 on an windows XP Professional machine.  In the office I have multiple platforms (XP, and Windows 2000).  When I create the package deployment using the wizzard in VB on my XP machine, I can successfully install the program on other XP machines.  

However when I try to install the program on Windows 2000 machines, the setup prompts me for updating system files and reboot.  When I say Yes, the program updates the files, reboots and somehow the OS of windows 2000 gets corrupted at that point and the computer does not reboot anymore and I get a message saying Operating System not found.

I used to bypass the problem by compiling running the package deployment wizzard on a windows 98 machine in the office and then the setup would work on any machine I would install.  This windows 98 computer died and I cannot use any other computer to re-install VB and re build the package.

Is there a way that I can have the package bundled so that I can install it on any computer using my Windows XP PRO to create the package?


Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Its basically a version problem, see which files are creating problems. List down all the DLLs OCX files etc and see what is getting overwritten. Critical system files cannot be overwritten with newer versions unless there is backward compatiblity. its best if you use some other installation kit which supports multiple platforms. Installshield for example. If you are looking for an opensource alternative you could try NSIS,

Have Fun!
Your best bet is to compile the program on the lowest OS version your clients may have. For example, consider Windows 9x clients as Windows 4.0, Windows 2000 clints as Windows 5.0 and Windows XP as Windows 6.0. Now compile your program on the lowest required, i.e. Windows 2000. Your problem should be gone. Give it a try.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
markrhymanAuthor Commented:
Hmm. This does not seem very obvious.  I tried the NSIS and I have to create an install script with registry values etc...  I have no experience of manually adding registry values to make my program work.  

What do you mean by "See which files are getting overwritten"?  I can only see that after the file has been modified, therefore it's too late.  I have to reformat the machine, reconfigure domain on that machine which is a nightmare.  
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

markrhymanAuthor Commented:
RanjeeRain, that's what I used to be doing before the windows 98 machine died.

I agree that this was the simplest way for doing this.  I guess I might have to find an old machine and make my package on it.

what i meant was to check the dependencies.. you remember the wizard page where it lists all the dlls/ocx files referenced by the vb project? or simply open your setup.lst file that should give you the list, please post the list if you can. or just make sure that none of the code system DLLs are included in the list (for example kernel32, user32, ntdll and so on)
markrhymanAuthor Commented:
Here is the Setup.lst

SetupText=Copying Files, please stand by.

[Bootstrap Files]
File1=@VB6STKIT.DLL,$(WinSysPathSysFile),,,7/15/00 12:00:00 AM,101888,
File2=@COMCAT.DLL,$(WinSysPathSysFile),$(DLLSelfRegister),,5/30/98 11:00:00 PM,22288,4.71.1460.1
File3=@STDOLE2.TLB,$(WinSysPathSysFile),$(TLBRegister),,6/3/99 12:00:00 AM,17920,2.40.4275.1
File4=@ASYCFILT.DLL,$(WinSysPathSysFile),,,3/8/99 12:00:00 AM,147728,2.40.4275.1
File5=@OLEPRO32.DLL,$(WinSysPathSysFile),$(DLLSelfRegister),,3/8/99 12:00:00 AM,164112,5.0.4275.1
File6=@OLEAUT32.DLL,$(WinSysPathSysFile),$(DLLSelfRegister),,4/12/00 12:00:00 AM,598288,2.40.4275.1
File7=@msvbvm60.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,8/4/04 2:56:43 AM,1392671,



Title=Ipecac - Setup

[Setup1 Files]
File1=@MSWINSCK.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),12/6/00 12:00:00 AM,109248,
File2=@MSCOMCTL.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),6/6/02 8:13:00 AM,1077344,
File3=@MSSTDFMT.DLL,$(WinSysPath),$(DLLSelfRegister),$(Shared),7/15/00 12:00:00 AM,118784,
File4=@MSDATGRD.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),12/6/00 12:00:00 AM,262328,
File5=@MSMAPI32.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),6/24/98 12:00:00 AM,137000,
File6=@msflxgrd.ocx,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/7/99 4:24:42 AM,244232,
File7=@MSCOMCT2.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/22/00 12:00:00 AM,647872,
File8=@msmask32.ocx,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/22/00 4:58:12 PM,166600,
File9=@COMDLG32.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/22/00 12:00:00 AM,140488,
File10=@RICHED32.DLL,$(WinSysPathSysFile),,,5/6/98 11:00:00 PM,174352,4.0.993.4
File11=@Richtx32.ocx,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/22/00 12:00:00 AM,203976,
File12=@msvcrt.dll,$(WinSysPathSysFile),,,8/4/04 2:56:43 AM,343040,7.0.2600.2180
File13=@scrrun.dll,$(WinSysPath),$(DLLSelfRegister),$(Shared),8/4/04 2:56:44 AM,151552,
File14=@MSOUTL.OLB,$(WinSysPath),,$(Shared),2/9/01 8:01:20 AM,206240,10.0.2607.0
File15=@CDOEX.DLL,$(WinSysPath),$(DLLSelfRegister),$(Shared),9/23/03 6:30:59 AM,3915776,6.0.6511.0
File16=@CDO.DLL,$(WinSysPath),,$(Shared),10/30/02 9:39:10 AM,813328,5.5.2656.94
File17=@MSDBRPTR.DLL,$(WinSysPath),$(DLLSelfRegister),$(Shared),7/15/00 12:00:00 AM,299008,
File18=@MSBIND.DLL,$(WinSysPath),$(DLLSelfRegister),$(Shared),7/15/00 12:00:00 AM,77824,
File19=@VB5DB.DLL,$(WinSysPath),,$(Shared),6/17/98 11:00:00 PM,89360,
File20=@msjtes40.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,8/4/04 2:56:43 AM,241693,4.0.8618.0
File21=@msrepl40.dll,$(WinSysPathSysFile),,,8/4/04 2:56:43 AM,552989,4.0.8015.0
File22=@msrd3x40.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,8/4/04 2:56:43 AM,315423,4.0.6508.0
File23=@msrd2x40.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,8/4/04 2:56:43 AM,421919,4.0.7328.0
File24=@mswdat10.dll,$(WinSysPathSysFile),,,8/4/04 2:56:44 AM,831519,4.0.6508.0
File25=@mswstr10.dll,$(WinSysPathSysFile),,,8/4/04 2:56:44 AM,614429,4.0.8905.0
File26=@expsrv.dll,$(WinSysPathSysFile),,,8/4/04 2:56:42 AM,380957,
File27=@vbajet32.dll,$(WinSysPathSysFile),,,8/4/04 2:56:46 AM,30749,
File28=@msjint40.dll,$(WinSysPathSysFile),,,8/4/04 2:56:43 AM,151583,4.0.8905.0
File29=@msjter40.dll,$(WinSysPathSysFile),,,8/4/04 2:56:43 AM,53279,4.0.6508.0
File30=@msjet40.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,8/4/04 2:56:43 AM,1507356,4.0.8618.0
File31=@dao360.dll,$(MSDAOPath),$(DLLSelfRegister),$(Shared),8/4/04 2:56:42 AM,561179,3.60.8618.0
File32=@msado27.tlb,$(WinSysPath),,$(Shared),8/4/04 12:21:44 AM,81920,2.81.1117.0
File33=@psapi.dll,$(WinSysPath),,$(Shared),8/4/04 2:56:44 AM,23040,5.1.2600.2180
File34=@Ipecac.exe,$(AppPath),,,11/18/04 8:55:31 PM,3964928,

markrhymanAuthor Commented:
Using the NSIS I managed to create the Script with the scipt wizzard but I don't see any place to register the OCX and dll.  This is what is a bit painful.

dlls which could create the problem

psapi.dll <-- this might be critical

Try getting the least version possible and try compiling it.. without breaking your code

MSBIND.dll is also known to create problems with kernel32 references
markrhymanAuthor Commented:
I'll try to unckech these Dll's which creating the Package and let you know very soon how it worked.
markrhymanAuthor Commented:
Ok I did remake the Project and I had to write down all the dll that were being registered during installation because all what Pratap_r mentionned above were being registered and others like

ssrun.dll. ,msvcrt.dll and mswstr10.dll, Msdao27.tlb, mscommctl.ocx, msjint40.dll, msout.olb.

So I did unckeck all these and the installation worked fine.  Therefore, I guess one or more of these above are causing the problem.  

I will have to figure which one but meanwhile the new module works on all versions in the office.

I will however recompile the whole project on win 98 later on to make this work

Therefore I will award both of you points.

Thanks a lot for all your help.

not sure if im posting this message in the correct directory..

does any1 know how to make a java program (containing .class and .java file) to be able
to be installed first by user before using it..
not to confuse with that , it means a user with that cd needs to install the program in order to run the converted from .java/.class file into .exe file..
it has something gotta do with 'installer' ... but not sure how to do it
need to put my java program into a cd n 'distribute' to my lecturer...haha

help guys..thanks
This is a tricky problem.

Notice the following number ... 4.0.9025.0

File42=@msjet40.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,7/19/04 7:56:44 PM,1507600,4.0.9025.0

My main visual basic computer is a Windows/2000 and I made the mistake of updating the above distribution file to the XP/pro version, instead of the W/2000 version with MS04-014 which was 4.0.8618.0

This msjet40.dll must be compatible with the operating system that you are using.

Looks like we need the oldest one in the distribution package.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.