Solved

EOLESysError Help!!!!

Posted on 1998-03-09
6
262 Views
Last Modified: 2010-04-06
On the machine I have written a piece of Delphi software on (i.e. the one with delphi installed on it), I can compile and run it without error. When I use the install shield to create a set of disks I include all the relevant files and db tables and set up the aliases etc. My problem is that when i install it on a machine without delphi installed it doesnt  work and comes up with an "EOLESysError class not registered" error.

I am however using extra delphi component packages supplied by ABC with alternative dbnavigator buttons etc.
As I did get the install shield to work on a much earlier prototype without using the ABC components I think this may have something to do with it.

What can I do to Fix This Problem?

Cheers,
Harry
0
Comment
Question by:hboys
  • 3
  • 2
6 Comments
 
LVL 8

Expert Comment

by:ZifNab
ID: 1360301
Ok, I guess you've installed the BDE too. So that isn't the problem. But those ABC components, they are OCX? or something else? Look at your registry and search for ABC things. I guess these components install something in the registry or even use certain DLL's... I'm almost sure you'll find something in the registry. If so you've to install that too on the other computer.

Good luck,
Regards, Zif.
0
 
LVL 4

Expert Comment

by:d003303
ID: 1360302
Yo,
the "EOLESysError class not registered" error occurs when a class that resists in an OCX file is not installed on the system.
I took a look at the ABC components, I don't think they rely on OCX-Base because they are for Delphi 1. Maybe you have a newer version.
So the question to help you further is if you are using Delphi 3 ?
0
 
LVL 2

Author Comment

by:hboys
ID: 1360303
Yes, I am using Delphi3 pro.
cheers
harry.
0
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
LVL 4

Accepted Solution

by:
d003303 earned 100 total points
ID: 1360304
OK, you run Delphi 3. So have a look at Component->Import ActiveX-Control and have a look for the ABC components. When you select an entry in the listbox, the panel underneath displays the name and path of the correspondind OCX. Write these down for all ABC components and add them to the installation of your program (shall be copied into the \system32 directory of the target machine). Then, for each OCX, run the command regsvr32 /s name_of_ocx.ocx to register it in the system.

Hope this helps,
Slash/d003303
0
 
LVL 2

Author Comment

by:hboys
ID: 1360305
Slash,
I see what you meen about the OCX files. I don't think it is an ABC component that is causing the problem though.

One question, when you said that I have to register the OCX files I copy across, do I do this under the setup of the install shield and if so how?
Also in the past I chose an option under the Project|Options|Packages section that said build with runtime packages. Under the install shield I then included all the files that were listed and installed them in the windows\system directory on the target computer. Do I have to register these on target also?

Thanks
Harry.
0
 
LVL 4

Expert Comment

by:d003303
ID: 1360306
Package files do not have to be registered. They behave like normal DLLs and are managed by their corresponding application. OCX files contain interfaces and objects that are managed by the system. To make the system know about these objects, they have to be registered. Then the contained objects can be used by any application written in any programming language.
Take a look at components you are using besides the native Delphi components (EXCLUDING the internet controls, they ARE OCX), one of them must use an OCX.
To register them, unfortunately InstallShield Express does not provide a feature to run a command line while Setup is running. What you can do is performing a check if the OCX(s) is/are installed on program startup and register them with
WinExec('regsvr32 /s name_of_ocx.ocx', SW_HIDE)
if they are not. For that, search the registry for that OCX file. You should find it in HKCR\CLSID\{some id}\InprocServer32. Check for the HKCR\CLSID\{some id} key on startup.

Good luck,
Slash/d003303
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Delphi component that can load a DLL in design time? 8 74
Help on project with Soap 10 57
TEMBEDDEDWB how can i change its user agent ? 8 69
shape, triangle, dbctrlgrid 3 17
This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

791 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