×
INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

runtime error 713 application-defined or object-defined error

runtime error 713 application-defined or object-defined error

runtime error 713 application-defined or object-defined error

(OP)
Hello,
I have created a vb6 application and the exe runs properly if i have installed the vb6 on my computer. I created a set up file with inno setup 5 and still runs fine on my computer.
My problem is that if i unistall vb6, when i run the application exe file, when i try to display a data report or try to print the data report through a Print command button on a form of my application i am getting this error.
Also, i tried to follow http://support.microsoft.com/kb/248055 instructions with no effect.
The way i tried it, was from inno setup script wizard, where i included the bellow files:
c:\windows\system32\Msdbrptr.dll
C:\program files\common files\designers\Msderun.dll
c:\windows\system32\Msstdfmt.dll
c:\windows\system32\Msdatrep.ocx
c:\windows\system32\Msbind.dll
Still having this problem, although i tried to include c:\windos\system32\Msdbrpt.dll too.
Another thought in my mind is that if i correct this problem on my computer, what about if i want to install my application on other computers, will i have the same problem too, if other computers don't have vb6? Any help will be much appreciated.

Thank you much
in advanced.

 

RE: runtime error 713 application-defined or object-defined error

What happens when you install it on another machine?

Testing on your dev machine by uninstalling VB6 is far from an ideal solution.

You need a "lab rat" machine with minimum specs (or below) for your target OS and install and test on that.

Chris.

Indifference will be the downfall of mankind, but who cares?
Woo Hoo! the cobblers kids get new shoes.
People Counting Systems

So long, and thanks for all the fish.

RE: runtime error 713 application-defined or object-defined error

(OP)
My problem is that i want my program to run in every computer i install it and not deal with machines.
Although if i install it on another machine i still have the same problem i refered above.

RE: runtime error 713 application-defined or object-defined error

Quote:

My problem is that i want my program to run in every computer i install it and not deal with machines.
In an ideal world this would be a wonderful scenario. Unfortunately it doesn't work like this and you should verify the install and your application on something other than your dev machine.

maybe the installer isn't registering the components.

Have you tested using regsvr32 to register the components manually?

Have you tried using a different installer?
http://msdn2.microsoft.com/en-us/vstudio/Aa718352.aspx

Chris.

Indifference will be the downfall of mankind, but who cares?
Woo Hoo! the cobblers kids get new shoes.
People Counting Systems

So long, and thanks for all the fish.

RE: runtime error 713 application-defined or object-defined error

(OP)
"Have you tested using regsvr32 to register the components manually?" How can i do this?

RE: runtime error 713 application-defined or object-defined error

(OP)
Also, my operating system is Windows Xp and Microsoft Visual Studio Installer 1.1 is up to Windows 2000.

RE: runtime error 713 application-defined or object-defined error

Quote:

Microsoft Visual Studio Installer 1.1 is up to Windows 2000
Windows XP hadn't been released when that was written.Be assured that it works fine on XP (both from the IDE and as a install target OS)


Start -> Run regsvr32 path\component_filename.ext

Use quotes around the path & filename if it contains spaces ( such as c:\Program Files\folder\ )

http://articles.techrepublic.com.com/5100-1035_11-1054872.html
 

Chris.

Indifference will be the downfall of mankind, but who cares?
Woo Hoo! the cobblers kids get new shoes.
People Counting Systems

So long, and thanks for all the fish.

RE: runtime error 713 application-defined or object-defined error

(OP)
Well, i tried this. When i have installed the vb6 on my computer Start -> Run regsvr32 path\component_filename.ext works successfully. But when i have not installed the vb6 on my pc i am getting the message "The loading dll was unsuccessful, Its impossible to locate the specified unit." because maybe these are components and libs of vb6.
When i install the Prodelectron setup without having vb6 on my computer, a folder created on c:\program files\Prodelectron. The prodelectron folder includes the ocx and dll files. Evidently, it is considered for the program to find these files in the path c:\windows\system32. So how can i adapt the prodelectron setup file through inno setup 5, to sent the ocx and dll files to c:\windows\system32.

RE: runtime error 713 application-defined or object-defined error

Quote:

But when i have not installed the vb6 on my pc i am getting the message "The loading dll was unsuccessful, Its impossible to locate the specified unit." because maybe these are components and libs of vb6.
Or you are specifying the wrong path.

Quote:

So how can i adapt the prodelectron setup file through inno setup 5, to sent the ocx and dll files to c:\windows\system32.
No idea, I don't use this particular install creator.But it does sound like it isn't registering the files in the appropriate paths.


Chris.

Indifference will be the downfall of mankind, but who cares?
Woo Hoo! the cobblers kids get new shoes.
People Counting Systems

So long, and thanks for all the fish.

RE: runtime error 713 application-defined or object-defined error

The problem is almost certainly because you are not installing all the files your app is dependent upon; for instance the following are required by all vb6 apps and you have not listed them;

COMCAT.DLL,STDOLE2.TLB, ASYCFILT.DLL, OLEPRO32.DLL, OLEAUT32.DLL and msvbvm60.dll

I expect inno setup will automatically list dependent files for you but I am not familiar with it. I therefore recommend using the VB6 Package and deployment wizard to create a setup package; that will include a file called SETUP.LST which will list the dependencies, you should then be able to transfer those file names into your inno setup.

RE: runtime error 713 application-defined or object-defined error

You should understand that every VB EXE has dependencies on libraries that it uses (DLLs and OCXs).  Which DLLs and OCXs it requires depends on what you used in the program (i.e. References).

When you distribute your EXE to other computers, you need to create a setup package that includes all the DLLs and OCXs the program needs, as you have no way of knowing if the machine already has those files.

When you uninstalled VB6 from your computer, you removed some of those DLLs and/or OCXs.

RE: runtime error 713 application-defined or object-defined error

(OP)
HughLerwill :
The files you mentioned, exist on my computer, without having installed vb6.

JoeAtWork :
If someone on his computer hasnot vb6 and want to install my programm must he needs all these OCXs and DLLs used by references?

Does anyone know how to change the destination of DLLs and OCXs through inno setup 5?

Thanks everyone

RE: runtime error 713 application-defined or object-defined error

>exist on my computer

They (probably will but) may not exist on another computer, it is normal for all VB6 App install routines to include them.

RE: runtime error 713 application-defined or object-defined error



Quote:

If someone on his computer hasnot vb6 and want to install my programm must he needs all these OCXs and DLLs used by references
Yes, it is the purpose of the installer, to also install these files and set references to them on the target machine.
and here we are back at requiring a machine other than your dev machine.

One question that hasn't been asked is;

Are you using late or early binding?

It may well be that Inno Setup cannot determine the dependencies and therefore does not include the files.

Chris.

Indifference will be the downfall of mankind, but who cares?
Woo Hoo! the cobblers kids get new shoes.
People Counting Systems

So long, and thanks for all the fish.

RE: runtime error 713 application-defined or object-defined error

... create a setup using the P&D Wizard (taking note of your earlier ref to kb/248055); test the install routine created; when that works checkout the SETUP.LST file; transfer deets to inno.

RE: runtime error 713 application-defined or object-defined error

Hi Crazy,

You've been getting some good advice here.  It's important to understand that the reason you're having trouble is that you're attempting in your code to reference a code library that is not registered on the machine.  (This is called a "dependency problem" or "DLL Hell.")  From there, you can track down the problem.  A few things to keep in mind:  

1.  The existence of a file on the machine does not guarantee that it's registered.
2.  Manually registering and/or unregistering files is a means to troubleshoot dependency problems, not a means to install a program.
3.  Don't keep trying different install programs until you find one that works.  Install programs vary a great deal in quality, and you don't want to get lucky with an obscure one and have trouble with it later and find that nobody knows anything about it.  I would stick with either the VS installer or INNO setup, and get one of those working.  I would NOT use the P&D wizard, except as a possible troubleshooting tool.
4.  If you find out what line is causing the error, it will go a long way to finding out what file isn't being included in your setup.
5.  It is indeed best to have a "lab rat" computer to test your setup program, although that isn't always feasible.

Good Luck!  We've all been there.

Bob

RE: runtime error 713 application-defined or object-defined error

(OP)
First of all, i cant use the p&d because the help file of my application is chm not hlp and p&d includes only hlp files for help.

Bob: How do we know that a file exists on the machine is or not registered? Is there any affect when installing a program? For example vb6. When i install vb6 on my pc, it certainly installs DLLs and other files for the program.
When i uninstall vb6 these files removed from computer.
Is it possible these files to be registered when i istall vb6 for example? If yes what's going on about registered installed files when i install vb6?

In the real time, i have just one computer, mine, that i created an application and runs properly with installed vb6 on my pc, but having problem i refered firstly with unistalled vb6.
I just want know if my program can works on any other computer, either we talk about a personal computer either about a network of a company.

I just need help. I hope these helps.

Thank you very much
for your patience.


RE: runtime error 713 application-defined or object-defined error

(OP)
I included the below files through inno setup wizard 5

filename     location

asycfilt.dll    C:\Windows\System32
COMCAT.DLL    C:\Windows\System32
COMDLG32.OCX    C:\Windows\System32
hhctrl.ocx    C:\Windows\System32
itircl.dll    C:\Windows\System32
itss.dll    C:\Windows\System32
msado20.tlb    C:\Program Files\Common Files\system\ado
MSADODC.OCX    C:\Windows\System32
msadomd.dll    C:\Program Files\Common Files\system\ado
MSBIND.DLL    C:\Windows\System32
MSCHRT20.OCX    C:\Windows\System32
MSCOMCT2.OCX    C:\Windows\System32
MSCOMCTL.OCX    C:\Windows\System32
MSDATGRD.OCX    C:\Windows\System32
MSDBRPTR.DLL    C:\Windows\System32
MSDERUN.DLL    C:\Program Files\Common Files\designers
MSHFLXGD.OCX    C:\Windows\System32
mshtml.tlb    C:\Windows\System32
MSSTDFMT.DLL    C:\Windows\System32
msvbvm60.dll    C:\Windows\System32
oleaut32.dll    C:\Windows\System32
olepro32.dll    C:\Windows\System32
stdole2.tlb    C:\Windows\System32
VB6STKIT.DLL    C:\Windows\System32
MSDATREP.OCX    C:\Windows\System32

and set the destination folder of each one the same there were located when the vb6 is installed on my pc as i mention here. It works fine as always, when i have vb6 on my pc. With uninstalled vb6 i am getting :
runtime error 372
Failed to load Control 'DataReport' from C:\windows\system32\msdbrptr.dll. Your version of C:\windows\system32\msdbrptr.dll may be outdated. Make sure that you are using the version of the control that was provided with your application.
when i am trying to open a data report.
Also if i am trying to do something else like to display records, i am getting runtime error713: Class not registered. Looking for object with CLSID:{59245250-7A2F-11D0-9482-00A0C91110ED}
Any help will be much appreciated.

Thanks in advanced

RE: runtime error 713 application-defined or object-defined error

You can check for sure if a file is registered or not by running regedit and looking in the HKEY_CLASSES_ROOT hive.  Just do a search for the file in question, and see if it's in the CLASSID folder.

RE: runtime error 713 application-defined or object-defined error

I'm getting a similar error message:
Failed to load control 'PRIX' from PRIX.ocx. Your version of PRIX.ocx may be outdated. Make sure you are using the version of the control that was provided with your application.
Error number is: 372

I have checked the registry HKEY_CLASSES_ROOT and an entry exists in the CLSID folder.

Any thoughts?

RE: runtime error 713 application-defined or object-defined error

Yes, indeed.  If you have an outdated control, you will generally still have the same classid on the old version as the new one has.  (To learn more about how this applies in VB6, this http://www.visibleprogress.com/vb_binary_compatibility.htm is pretty clear.)  This is because backward compatibility is a requirement of the COM specification, meaning that an application (client) written using the older control should be able to use the new control transparently.  So the new control has to have the same classid as the old one for the old client to be able to find it.

However, forward compatibility is of course NOT required.  If you have a client that is expecting the later version of the control, and you have the older version, you will generally get some sort of error message like this one.  Unless, of course, it's a Microsoft control, in which case you'll get something more helpful like "Application-defined or object-defined error" or "ActiveX Control can't create object."  In any case, you'll need to get the newer version of the control and replace the old one.

HTH

Bob

RE: runtime error 713 application-defined or object-defined error

>Any help will be much appreciated.

>Thanks in advanced

You can't just stick an EXE created by VB onto another machine (well, under very limited conditions you can). Nor can you expect your EXE to work on the development machine if you remove VB after the EXE is created.

In both situations (as most people here have been trying to tell you) large numbers of files that the EXE is dependant upon are missing, as are a bunch of registry settings.

Frankly, trying to manually determine, instal and register all the necessary files is going to end up in a world of pain (unless you know EXACTLY what you are doing).

So you should - as advised here - use an installer program. It will build the correct dependancy list for you, and then use that list when doing the install on a different machine(again, I wouldn't simply try to use that dependancy list as a list of files to manually copy; there's more to it than that).

So here are the steps:

1) Ensure VB properly installed on development machine
2) Develop application
3) Compile it
4) Use installer software of your choice to create setup package
5) Run setup package on target machines

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members! Already a Member? Login

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close