I had create a setup with PDWwizard,and I had installed in a few computers,but the program don't work in 2 computers because,I think,the components are not registered...This is possible?????
1 - I fink the problem is with felxgrid component.
2 - The installation are succesfull in all computers...no prob with instalation...and the program runs,but when I enter in the menus I catch the error.
The error is when I try to access in a drop menu,and the error is:
"run time error "91"
I finc this error is notthing to do with registered components but with load a certain form...strange very strange
Thanks
Yes...that is an "Object variable or With block variable not set" error.
Also, a run time error shouldn't occur if you have error trapped all of your routines. The next step is to figure out where this is occurring. Do you know? Form_Load? A click event?
You say this is only happening on a couple of machines, so I'm led to believe this error does not occur when running the exact same code on other machines. Is this correct?
You say this is only happening on a couple of machines, so I'm led to believe this error does not occur when running the exact same code on other machines. Is this correct?
No.the code are the same in all machines because I had create a setup in PDWizard.
Also, a run time error shouldn't occur if you have error trapped all of your routines. The next step is to figure out where this is occurring. Do you know? Form_Load? A click event?
No.the code are the same in all machines because I had create a setup in PDWizard.
How can I Trapped all my routines?
Thanks
You trap then individually. At the beginning of each sub/function or event in which code will be run, you have an On Error Goto ErrTrap (or whatever you wish to call the error trapping label.)
At the both of each sub/function or event in which code is run, you will put:
VB Code:
Exit Sub (or Function)
ErrTrap:
'write code for what you want to happen in the event of an error
Ok, but all that trapping the error will do is prevent a run time error that pops the user back to the desktop. It still doesn't fix it. Have you error trap write off the name of the routine it is in, so you will be able to narrow down where this is occurring.
it could also be another dependent component is out of date (or missing) on the two machines that are not working. Run the dependency walker program on your exe (it will show you the components and all of it's dependencies).
also you may look for the components say your component is called flexgrid.ocx... look for a file on your programming computer for flexgrid.dep. it's an ascii file.
the setup wizard in visual basic will also list the dependencies.
Using PDW will obviously get you into some hot water. It does not actually search your project for dependences. it relies on .dep files to tell it what it should use. If the .dep files are out of date or missing you WILL get an incomplete install.
You might want to use an up to date installer like Inno Setup combined with **********. ********** will search your project for all dependencies even the deep ones. Even if you do not use another installer, use ********** to gather your dependencies. It can also do much more.
You do not have many dependencies to register. You have
MsFlxGrd.ocx and dao360.dll
The dao360.dll should be installed with the MDAC and you just need to register the MsFlxGrd.ocx file. You should not just attempt to register the dao360.dll file. Use the MDAC to deploy this file to make sure you have the correct version.
dao360.dll not being register is causing your problems.
I am not really understanding your question. But you can use several methods depending on the installer that you use.
There is one that will handle all OS's Automatic OS Updater. Or you can use Microsoft's MDAC_Typ.exe file (with PDW) if you know which version it will update.
********** will deploy the Automatic OS Updater, PDW the MDAC_Typ.exe file.
Last edited by randem; May 17th, 2005 at 03:31 PM.
If I understand you correctly. You installed your app on a machine that already had VB6 installed? If this is so you still have a problem. You cannot and should not count on users having VB6 installed for your app to work.