PDA

View Full Version : Class not registered error



NewsArchive
12-26-1997, 01:00 AM
Our application is compiled with Delphi 3 and uses some OCX. It runs fine in
most cases. In some cases, at customer installations (approx 1-2%) the
registration process fails partial or complete. In these cases an error
"Class not registered" occurs, when starting the program. No error is
reported during installation. We are certain, that all necessary DLLs and
OCXs are included.
We have also tested on several new installed WIN95 Systems with all
available versions (Win95 Win95a Win95b). With all these it runs perfect.

The problem can be fixed with running a specially prepared REG-File, that
does the registration manually. So it seems to be a problem of the self
registration process. In any case it is not a solution to register manually.

Does anyone knows a solution? (Yes, I have read the FAQ at ellipse-data)

Also we have noticed some strange behaviour of Installshield express:

1. When the disk generation process is started several times the
"_setup.lib" file is varying every time. The file size and / or content is
different after each disk generation process. Even when the size is the same
the content is not the same. The files differ completely. The _setup.1 file
also differs, but only in small portions (maybe the date or version entries)

Is the variation of the file contents normal??

2. When running the disk generation process sometimes a messagebox appears
complaining about free space on the disk and asking for deleting files in
the trash bin. We have more than 120MB free disk space and the complete
program package has only 16MB size. Looking with the Explorer on the disk
always shows more than 120MB free. Running Scandisk did not reveal any disk
errors.

How much disk space is needed by Installshield, or is the message nonsense?

3. It seems that Installshield does not copy DLLs or OCXs to the target
directory, if the file date of the already installed DLL /OCX is newer than
the one you want to install.
This causes trouble, because some DLLs depend on each other and I get
inconsistent combinations of DLLs. Also we can not guarantee for the proper
function of the program any longer, when we do not know what DLL/OCX is
installed.

Is our assumption true, or does the version number influence the
installation? Is there a possibility to force the installation of the DLL?

Best regards
Linda

NewsArchive
12-26-1997, 01:00 AM
On Fri, 26 Dec 1997 00:03:54 +0100, "Linda Spang" <ils@bbs.bybyte.de>
wrote:
>"Class not registered" occurs, when starting the program. No error is
>reported during installation. We are certain, that all necessary DLLs and
>OCXs are included.

Hmmmm... you might look at the two Windows machines (the one that does run
fine, and the one that doesn't). See if the one machine has certain Windows
DLLs that the other one doesn't. Usually it is one of the MFC DLLs or an
OLE DLL.

>The problem can be fixed with running a specially prepared REG-File, that
>does the registration manually. So it seems to be a problem of the self
>registration process. In any case it is not a solution to register manually.

What entries do you have in that REG file?

>1. When the disk generation process is started several times the
>"_setup.lib" file is varying every time. The file size and / or content is

_setup.lib contains a variety of files that are necessary to run the
installation.

When you make these comparisons, did you change anything in the setup? Did
you change any files or did you perhaps include anything?

>the content is not the same. The files differ completely. The _setup.1 file
>also differs, but only in small portions (maybe the date or version entries)

What files differ completely?

>2. When running the disk generation process sometimes a messagebox appears
>complaining about free space on the disk and asking for deleting files in
>the trash bin. We have more than 120MB free disk space and the complete
>program package has only 16MB size. Looking with the Explorer on the disk
>always shows more than 120MB free. Running Scandisk did not reveal any disk
>errors.

This is odd. I agree.

>How much disk space is needed by Installshield, or is the message nonsense?

Usually I calculate the needed diskspace as the amount of the installation
(uncompressed) multiplied by 2 plus the size of the installation
(compressed).

>This causes trouble, because some DLLs depend on each other and I get
>inconsistent combinations of DLLs. Also we can not guarantee for the proper
>function of the program any longer, when we do not know what DLL/OCX is

You can set it to always overwrite the files. This however can also
compromise the applications.

>Is our assumption true, or does the version number influence the
>installation? Is there a possibility to force the installation of the DLL?

Yes there is. Select the group you want to modify, click on "Modify Group"
and set the overwrite options to "Always overwrite". Please do note that
this will include ALL the files in the group.

If you want to only do this with certain files, you can always include them
in a seperate group.

Stefan
ellipse data systems

NewsArchive
02-26-1999, 01:00 AM
Eric,

Thanks for the response.

I finally tracked it down yesterday. I had to add the following files to
the install project:

nmorenu.dll
nmftpsn.dll
nmocod.dll
nmsckn.dll
nmw3vwn.dll
winsck.ocx
wsihk32.dll
wsiwin32.dll

Why I had to add these, I do not know. But with this set of files, it ran
properly. I am probably showing my ignorance, but what are all of these
files used for? I may be able to eliminate some of these files yet, but I
got tired of searching after this.

Gerald

InstallShield Software Corp. wrote in message
<36d6fc43.0@news.installshield.com>...
>Is the BDE engine installed correctly? After the installation can you open
>the bde administrator and perform some basic operations like merge
>a cfg file or create a new alias? Are you getting any errors during the
>setup?
>What is the project type that you chose for the Express project?
>
>Thanks,
>
>Eric
>InstallShield Developer Support
>
>
>
>
>Gerald Johnson wrote in message <36d440fe.0@news.installshield.com>...
>>I have created an installation setup for a Delphi 3 program using BDE.
The
>>application works fine on machines which have Delphi and/or Paradox
>>installed on it. However, when trying to run the application on a machine
>>without either one of these applications, I get the following error
>message:
>>
>>Exception EOleSysError in module xxxxx at 00053FC5
>>Class not registered
>>
>>The application is a simple application.
>>
>>I tried a clean install of Delphi and Install Shield on a computer that
did
>>not have BDE and still get the error message on a third computer.
>>
>>Any help would be appreciated.
>>
>>Gerald Johnson
>>
>>
>>
>
>

NewsArchive
03-04-1999, 01:00 AM
On Fri, 26 Feb 1999 16:12:00 -0600, <gerald@nospam.osborne-ind.com> wrote:
>properly. I am probably showing my ignorance, but what are all of these
>files used for? I may be able to eliminate some of these files yet, but I
>got tired of searching after this.

These files are used by the Internet controls you most likely are using in
your project :)

Stefan Paetow
InstallShield Software Corp.

NewsArchive
09-04-2001, 12:00 AM
Thanks for your response, Leykun.
Actually, it looks like that something wrong with what in my creatUI()
method. because if I erased anything under that method, it could be
added to bean gallery succesfully.
the following is my creatUI() method, it works fine for ISMP 3.03:

protected void createUI(WizardBeanEvent event) {
getContentPane().setLayout(new BorderLayout());
Panel panel = new Panel(new BorderLayout());

String text = "some message";
MultilineTextDisplay textDisplay = new MultilineTextDisplay(text, new

Font("Dialog", Font.PLAIN, 14));

panel.add(textDisplay, BorderLayout.CENTER);
getContentPane().add(panel, BorderLayout.NORTH);

Panel p = new Panel();
GridBagLayout gridbag = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
p.setLayout(gridbag);
c.fill = GridBagConstraints.BOTH;
c.insets = new Insets(0, 5, 0, 5);
c.weightx = 1.0;

c.gridy = 0;

cbg = new CheckboxGroup();

Checkbox box1 = new Checkbox("OPTION1", cbg, true);
gridbag.setConstraints(box1, c);
p.add(box1);


c.gridy = 3;
Checkbox box2 = new Checkbox("OPTION2", cbg, false);
gridbag.setConstraints(box2, c);
p.add(box2);


getContentPane().add(p, BorderLayout.CENTER);


}

Leykun -InstallShield wrote:

> Cathy,
> Please see the attached visual demo on how to register your custom bean.
> Thanks
> Leykun M.
> InstallShield Technical Support
> <user@domain.invalid> wrote in message news:3B8FE2D7.20007@domain.invalid...
>
>>HI
>>I ame using professional-ISMP4.01.
>>I were trying to add a custom wizard panel to bean gallery, but failed
>>WITHOUT any error message. I clicked 'ok' in the registration window,
>>nothing happened. before this, I have registered a custom
>>destinationpanel succesfully.
>>
>>The failed class was used for ISMP 3.03 without any problem. I modified
>>it according to ISMP4.0 doc, so it could compile under ISMP4.01. I put
>>the class under the 'class' directory with it's package structure and
>>also used the full class name(com.install.myclass)when registering.
>>I also exited and restarted ISMP 4.0 after the modification.
>>
>>Does anybody know what might be wrong?
>>thanks
>>cathy
>>
>>
>
>
> Adding a Bean.exe
>
> Content-Type:
>
> application/x-msdownload
> Content-Encoding:
>
> x-uuencode
>
>