• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 3428
  • Last Modified:

Package Deployment

Hello,

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?

Thanks.

Mark
0
markrhyman
Asked:
markrhyman
2 Solutions
 
pratap_rCommented:
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, http://nsis.sourceforge.net

Have Fun!
Pratap
0
 
RanjeetRainCommented:
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.
0
 
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.  
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
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.

0
 
pratap_rCommented:
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)
0
 
markrhymanAuthor Commented:
Here is the Setup.lst

[Bootstrap]
SetupTitle=Install
SetupText=Copying Files, please stand by.
CabFile=Ipecac.CAB
Spawn=Setup1.exe
Uninstal=st6unst.exe
TmpDir=msftqws.pdw
Cabs=1

[Bootstrap Files]
File1=@VB6STKIT.DLL,$(WinSysPathSysFile),,,7/15/00 12:00:00 AM,101888,6.0.84.50
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,6.0.96.90

[IconGroups]
Group0=Ipecac
PrivateGroup0=-1
Parent0=$(Programs)

[Ipecac]
Icon1="Ipecac.exe"
Title1=Ipecac
StartIn1=$(AppPath)

[Setup]
Title=Ipecac - Setup
DefaultDir=$(ProgramFiles)\Ipecac
AppExe=Ipecac.exe
AppToUninstall=Ipecac.exe

[Setup1 Files]
File1=@MSWINSCK.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),12/6/00 12:00:00 AM,109248,6.0.89.88
File2=@MSCOMCTL.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),6/6/02 8:13:00 AM,1077344,6.1.95.45
File3=@MSSTDFMT.DLL,$(WinSysPath),$(DLLSelfRegister),$(Shared),7/15/00 12:00:00 AM,118784,6.0.88.4
File4=@MSDATGRD.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),12/6/00 12:00:00 AM,262328,6.0.89.88
File5=@MSMAPI32.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),6/24/98 12:00:00 AM,137000,6.0.81.69
File6=@msflxgrd.ocx,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/7/99 4:24:42 AM,244232,6.0.84.18
File7=@MSCOMCT2.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/22/00 12:00:00 AM,647872,6.0.88.4
File8=@msmask32.ocx,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/22/00 4:58:12 PM,166600,6.0.84.18
File9=@COMDLG32.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/22/00 12:00:00 AM,140488,6.0.84.18
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,6.0.88.4
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,5.6.0.8820
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,6.0.88.4
File18=@MSBIND.DLL,$(WinSysPath),$(DLLSelfRegister),$(Shared),7/15/00 12:00:00 AM,77824,6.0.88.62
File19=@VB5DB.DLL,$(WinSysPath),,$(Shared),6/17/98 11:00:00 PM,89360,6.0.81.69
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,6.0.72.9589
File27=@vbajet32.dll,$(WinSysPathSysFile),,,8/4/04 2:56:46 AM,30749,6.0.1.9431
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,5.8.0.1

0
 
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.

0
 
pratap_rCommented:
dlls which could create the problem

psapi.dll <-- this might be critical
MSBIND.DLL
CDOEX.DLL
CDO.DLL

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
0
 
markrhymanAuthor Commented:
I'll try to unckech these Dll's which creating the Package and let you know very soon how it worked.
0
 
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.

Mark
0
 
nwhanCommented:
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
0
 
steveghiCommented:
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.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now