Solved

how can I replace MSVBVM5.exe on clients machine

Posted on 2001-06-22
11
635 Views
Last Modified: 2009-07-29
I've created a setup through ODE for Access and there are also VB apps that I have included as well.  the problem is that the exe's I've created won't run on clients' machines unless the VBVM file is installed first.  Does anyone know how I can get the exe's to run on their machines without having them run the MSVBVM5.exe before they run my setup?  

Could I simply copy the VBVM5.dll to their c:\windows\system and then register it?  would that work.

I hope this makes sense
0
Comment
Question by:SE081398
  • 3
  • 2
  • 2
  • +4
11 Comments
 
LVL 43

Accepted Solution

by:
TimCottee earned 150 total points
ID: 6218876
It would work as long as there are no other controls included in the project that use dlls or ocxs. There may also be other VB system files that you need. It is always better to create a proper VB installation package rather than trying to copy the appropriate files.

If you want to make it a single installation you could always use the P&D wizard in VB to generate a dependency list and include these file in the cabinet file created by the access ODE (remembering to add the appropriate entries for them in the setup.lst file as well). This should do all the necessary installations and registrations in the one package.
0
 

Expert Comment

by:MatthewGraybosch
ID: 6219304
I've found that the simplest solution is to keep the DLLs with the executable. As an example, consider a program named "FOO.EXE". It calls functions in "MSVBVM60.DLL", "BAR.DLL", and "BAZ.DLL". Under Windows 98 you can get away with placing FOO.EXE and its DLLs in C:\FOO, as FOO.EXE looks for its DLLs in the directory in which it lives before searching C:\WINDOWS\SYSTEM. I've also seen this behavior under Windows NT 4.0, but your mileage may vary under Windows 2000, ME, and XP.
0
 
LVL 3

Author Comment

by:SE081398
ID: 6219401
MatthewGraybosch: thank you for your proposed answer.  However, it's EE edicate to respond to all question with a comment not an answer.  By proposing an answer it locks the question so no one else can respond with their ideas.
I will be rejecting your answer simply to reopen the question.  This does not mean that I don't like your answer.  I'm going to review a few things and then touch base.  :)

steve.
0
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 3

Expert Comment

by:jrspano
ID: 6219591
i would go with tim's idea.  you really need to make a real vb install.  the dll's in your vb programs will need to be registered and other dependencies will be taken care of.
0
 
LVL 3

Author Comment

by:SE081398
ID: 6219666
Hmm. You see I've already created an install that installs an access application.  I have 3 other little VB apps that have no oxc's and simply copy files to c:\ and rename them.  1 exe opens another exe which then opens the mde that I created.  The problem is that the exe's won't run until the VBVM has been installed on the machine.  I want the user to click only 1 setup or install.exe  I don't want the user to have to run 2 installs, one that installs vbvm and another that installs my mde app.  my problem is that the 2 exe's that I run prior to the mde setup app won't run untilvbvm files are installed and registered.  This means the user has to perform two installs.
1 install msvbvm5.exe
2 setup.exe that calls other small exe's that copy files and then calls the Access setup.exe to install my custom mde app.

none of this can be done on a bare machine until the vbvm files are registered.  

Am I mixed up or does anything I've said make sense?

0
 
LVL 4

Expert Comment

by:mcmahon_s
ID: 6220606
Am I missing something or can you not just create a batch file to run the necessary executables in whatever order is required? That way they will only have to run the one program.
0
 
LVL 16

Expert Comment

by:Richie_Simonetti
ID: 6220820
could you write those small VB exes inside your MDE with VBA code?
0
 
LVL 16

Expert Comment

by:Richie_Simonetti
ID: 6220823
I mean, why to use "external" VBs if already have VB "inside" Access.
0
 
LVL 3

Author Comment

by:SE081398
ID: 6233709
Richie:  no I can't put the code from the VB.exe's into access.  I'm creating a stand alone application with Access.  but in order to do that certain things have to take place before the Access app can be installed and loaded.  there are several things that must take place outside and separate of the access app that I don't believe we have time for here.  I'm sure with further changes and investigation I could modify things and improve the way I install this app.  but for now I require exe's to perform functions prior to install, as well as after install.  the problem again lies in the need for the mxvbvm5 file to be installed on the clients machine so these exe's can run.  Refering to my original question "Could I simply copy the MSVBVM5.dll to their c:\windows\system and then register it?  would that work."

Tim confirms that this will work without the use of ocx's and dll's.  These exe's do not use ocx's and only reference the basic system dll's.  The exe's basicall changes file names and shells out to other exe's that perform functions, that's it.  really quite simple.  The process is as follows:  exe1; copy files and ocx's to users system dir, call the access setup.exe that I created with the ODE.  (the setup ODE Access install now opens and begins the install process) On completion of this setup it calls exe2 that finds files installed by the setup and renames them and resets the read only property of specific files (in the process of burning ROM's long file names are converted to short names and the file is set to RO). Each exe consists of about 20 lines of code that's it.  so I'm going to try and place the msvbvm5.dll file in the system directory of my test machine and try running the exe's.  Once that's done and hopefully proves successful,  my next problem is designing a method of getting the msvbvm over to the users computer prior to the first exe running.  I may consider a bat file as  mcmahon_s pointed out.

I hope this novel explaining my situation made sense.
0
 
LVL 43

Expert Comment

by:TimCottee
ID: 6234294
I can understand to some extent what you are trying to do. If the executables are really that simple then I would suggest that you consider using VBScript instead; as long as IE is installed (with the scripting support) you can do all of the stuff you mention just as easily in VBS. This will avoid having to copy the VB runtime files as the VBS runtime is the scripting support of IE.
0
 

Expert Comment

by:amp072397
ID: 6783471
:)
0

Featured Post

Active Directory Webinar

We all know we need to protect and secure our privileges, but where to start? Join Experts Exchange and ManageEngine on Tuesday, April 11, 2017 10:00 AM PDT to learn how to track and secure privileged users in Active Directory.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I’ve seen a number of people looking for examples of how to access web services from VB6.  I’ve been using a test harness I built in VB6 (using many resources I found online) that I use for small projects to work out how to communicate with web serv…
Enums (shorthand for ‘enumerations’) are not often used by programmers but they can be quite valuable when they are.  What are they? An Enum is just a type of variable like a string or an Integer, but in this case one that you create that contains…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

828 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question