Class Not Registered - WeOnlyDo Discussion board

Class Not Registered (wodVPN)

by Yaser, Thursday, July 22, 2010, 09:17 (5237 days ago)

Hello All,

I just purchased the WodVPN and was trying the simple example. It works great on the machine where my compiler is located. However when I copy the project to a deployment machine for further testing, it message box appears saying something Class Not Registered .

I went and copied the WodVPN.ocx to the System32 directory and registered it successfully. After running the demo program once again I am still getting the same results. Can someone please tell me what is going on and point me in the right direction?

Thank you in advance

Re: Class Not Registered

by woddrazen, Thursday, July 22, 2010, 09:28 (5237 days ago) @ Yaser

Hi Yaser,


You need to reimport licensed version of wodVPN.ocx inside Delphi. Most probably you are still using DEMO version in Delphi.

When you distributing your application you need to distribute wodVPN.ocx and register it with regsvr32.

You can download license version here:

http://www.weonlydo.com/index.asp?update=1

Let us know how it goes.


Regards,
Drazen

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 09:36 (5237 days ago) @ woddrazen

Hi Yaser,


You need to reimport licensed version of wodVPN.ocx inside Delphi. Most probably you are still using DEMO version in Delphi.

When you distributing your application you need to distribute wodVPN.ocx and register it with regsvr32.

You can download license version here:

http://www.weonlydo.com/index.asp?update=1

Let us know how it goes.


Regards,
Drazen

Hello Drazen,

Thanks for the quick response. But I have just purchased the component less than 1 hour ago. It imported fine in Delphi. Also I did not get a nag screen of any kind. Secondly, I did distribute and register WodVPN.ocx on the deployment machine.

Not sure why I would need to reinstall ?

Re: Class Not Registered

by woddrazen, Thursday, July 22, 2010, 09:41 (5237 days ago) @ Yaser

Yaser,


We have two variations of our products - DEMO version and LICENSED version. They both have the same installation name, but in fact these contain different kind of binaries.

When you download setup from our website it's a DEMO. You can use it for 30 days to make your application, but you cannot distribute it to another computer which does not have our setup package installed. DEMO version can not be unlocked to the LICENSED.

When you place the order, you receive download link from protected part of our website where you download LICENSED version. That one does require license key to be entered to complete the installation.

in order to download licensed version of our product, please go to:

http://www.weonlydo.com/index.asp?update=1

This is automated process. Make sure you use same email address that is registered with our system, one you used when you have purchased the product.


Drazen

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 09:52 (5237 days ago) @ woddrazen

Yaser,


We have two variations of our products - DEMO version and LICENSED version. They both have the same installation name, but in fact these contain different kind of binaries.

When you download setup from our website it's a DEMO. You can use it for 30 days to make your application, but you cannot distribute it to another computer which does not have our setup package installed. DEMO version can not be unlocked to the LICENSED.

When you place the order, you receive download link from protected part of our website where you download LICENSED version. That one does require license key to be entered to complete the installation.

in order to download licensed version of our product, please go to:

http://www.weonlydo.com/index.asp?update=1

This is automated process. Make sure you use same email address that is registered with our system, one you used when you have purchased the product.


Drazen

Drazen,

I understand about DEMO and LICENSED versions. I received my License key and entered it during installation. So in fact I do have a licensed version, correct ?

Secondly, I was deploying the Simple Demo as a test to make sure it can work on different machines. However I realized you are not using the activex component but rather COM version. Is this why I am getting Class Not Registered since i registered the WodVPN.ocx ? If so, what is it that I need to deploy on the target machine and register it to make it work.

Lastly, I have already clicked on the link you provided and waiting for a response.

Thank you

Yaser

Re: Class Not Registered

by woddrazen, Thursday, July 22, 2010, 10:06 (5237 days ago) @ Yaser

Yaser,


Please make sure that you install licensed version of component.

Then in Delphi please remove wodVPN reference.

You need to do this:

Open Delphi go to Component > Install Packages -> select Borland User Component and click on Edit

When Dclusr50.dpk windows is open please select:

Remove all wodVPN objects there and save.

Now reopen Delphi and check if wodVPN icon is on Delphi ActiveX pallet. If there is no more wodVPN please import wodVPN COM reference again.

After that start your project and build it again. Please check do you have now LicenseKey Property.


Drazen

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 10:46 (5237 days ago) @ woddrazen

Yaser,


Please make sure that you install licensed version of component.

Then in Delphi please remove wodVPN reference.

You need to do this:

Open Delphi go to Component > Install Packages -> select Borland User Component and click on Edit

When Dclusr50.dpk windows is open please select:

Remove all wodVPN objects there and save.

Now reopen Delphi and check if wodVPN icon is on Delphi ActiveX pallet. If there is no more wodVPN please import wodVPN COM reference again.

After that start your project and build it again. Please check do you have now LicenseKey Property.


Drazen

Drazzen,

I did everything you said. However Activex component is the only component that shows license key property. I then uninstalled and reinstalled the setup. During the setup process i get an error saying Error creating INI entry

Re: Class Not Registered

by woddrazen, Thursday, July 22, 2010, 11:56 (5237 days ago) @ Yaser

Yaser,


When did you receive such error? During wodVPN setup? I didn't see such error in paste.

When you install wodVPN you are receiving two component types. One is COM object (wodVPN.dll) and other is ActiveX control (wodVPN.ocx).

Only COM object has LicenseKey Property. This version is used inside our samples.

Inside samples you cannot find LicenseKey Property because sample is made for DEMO version and LicenseKey Property is only supported in licensed version.

ActiveX control (wodVPN.ocx) is licensed when you drag and drop it to your form so LicenseKey Property is not needed there.

In order to insert the wodVPN COM object in your project, follow these steps:
1. Install the component on your system by starting its setup program.
2. In the Borland Delphi Compiler IDE, create a project or open an existing one.
4. Click on 'Project', then on the 'Import Type Library' menu
5. Find 'WeOnlyDo! COM VPN Component' and click on the 'Install' button
6. You will be prompted to create and build a package for wodVPN, answer with Yes
7. You should see an icon in the Component Palette on the ActiveX Component's tab representing the wodVPN control
8. You can drag&drop wodVPN's icon onto your form
9. Do not forget to distribute wodVPN.DLL when using the COM object!


Drazen

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 19:36 (5236 days ago) @ woddrazen

Yaser,


When did you receive such error? During wodVPN setup? I didn't see such error in paste.

When you install wodVPN you are receiving two component types. One is COM object (wodVPN.dll) and other is ActiveX control (wodVPN.ocx).

Only COM object has LicenseKey Property. This version is used inside our samples.

Inside samples you cannot find LicenseKey Property because sample is made for DEMO version and LicenseKey Property is only supported in licensed version.

ActiveX control (wodVPN.ocx) is licensed when you drag and drop it to your form so LicenseKey Property is not needed there.

In order to insert the wodVPN COM object in your project, follow these steps:
1. Install the component on your system by starting its setup program.
2. In the Borland Delphi Compiler IDE, create a project or open an existing one.
4. Click on 'Project', then on the 'Import Type Library' menu
5. Find 'WeOnlyDo! COM VPN Component' and click on the 'Install' button
6. You will be prompted to create and build a package for wodVPN, answer with Yes
7. You should see an icon in the Component Palette on the ActiveX Component's tab representing the wodVPN control
8. You can drag&drop wodVPN's icon onto your form
9. Do not forget to distribute wodVPN.DLL when using the COM object!


Drazen

Hello Drazzen,

I received this error during setup as i had mentioned in my previous post.I selected to Ignore and continue with the setup process.

1) The com objects are still in my palatte bar, but when i put them onto a form the License Key property does not appear in the object inspector.

2) When I try to import the Com objects....I CANNOT ! Only the WeDo ActiveX component shows up.

3) Can u please provide me a step-by-step on how to remove the components from Delphi and try fresh?

Thanks

Re: Class Not Registered

by wodDamir, Thursday, July 22, 2010, 19:46 (5236 days ago) @ Yaser

Yaser,

You most probably received that error during the setup, because the .ocx or .dll was still in use. You will need to re-install it, but make sure that it's not in use (perhaps it's best to do a restart).

Also, Did you try Drazen's instructions:
-----------------------------------------
Open Delphi go to Component > Install Packages -> select Borland User Component and click on Edit

When Dclusr50.dpk windows is open please select:

Remove all wodVPN objects there and save.

That should remove the component from the IDE.
-----------------------------------------

Can you please try that?

Regards,
Damba

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 19:50 (5236 days ago) @ wodDamir

Yaser,

You most probably received that error during the setup, because the .ocx or .dll was still in use. You will need to re-install it, but make sure that it's not in use (perhaps it's best to do a restart).

Also, Did you try Drazen's instructions:
-----------------------------------------
Open Delphi go to Component > Install Packages -> select Borland User Component and click on Edit

When Dclusr50.dpk windows is open please select:

Remove all wodVPN objects there and save.

That should remove the component from the IDE.
-----------------------------------------

Can you please try that?

Regards,
Damba

Hello Damba,

Thanks for the response. I will restart the machine and try again. I am sure you guys are very busy trying to respond to all of your users, but this is my third time stating that i received the error during setup.

I will give Drazzel instructions a try again and let you know what happens.

Thanks
Yaser

Re: Class Not Registered

by wodDamir, Thursday, July 22, 2010, 19:52 (5236 days ago) @ Yaser

Yaser,

One more thing. Please make sure that you install the component with Admin privileges.

Regards,
Damba

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 20:08 (5236 days ago) @ wodDamir

Yaser,

One more thing. Please make sure that you install the component with Admin privileges.

Regards,
Damba

Hello Damba,

Can u please explain a bit further. Are u saying I have to login to wINDOWS as a System Administrator to properly install the components?

Re: Class Not Registered

by wodDamir, Thursday, July 22, 2010, 20:13 (5236 days ago) @ Yaser

Yaser,

It's same as for any other ActiveX component. When registering the component with the system, certain registry entries (ClassID) are written. In order for that to succeed, the user needs to have permission to access registry, which limited user accounts don't have.

Ofcourse, that's needed only for installing the component / registering it on the system. After that they can be used by any other user account.

Regards,
Damba

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 20:34 (5236 days ago) @ wodDamir

Yaser,

It's same as for any other ActiveX component. When registering the component with the system, certain registry entries (ClassID) are written. In order for that to succeed, the user needs to have permission to access registry, which limited user accounts don't have.

Ofcourse, that's needed only for installing the component / registering it on the system. After that they can be used by any other user account.

Regards,
Damba

Hello Damba,

I managed to uninstall all of the WOD components. Do I need to UN-install using uninstall.exe or just try to re-register the components again in Delphi? Secondly, does it matter which component gets registered first, COM or ActiveX ?

Thanks

Yaser

Re: Class Not Registered

by wodDamir, Thursday, July 22, 2010, 20:40 (5236 days ago) @ Yaser

Yaser,

Please try completely uninstalling the component using uninstall (or Arr/Remove programs). Then install it using our installer (it will register both components on the system). You shouldn't receive any errors.

If that all goes well, you should only import the component that you will use in Delphi. They can both be registered on the system, but delphi gets confused if you import both of them into the project(since some objects are names the same way).

However, that's not important, since you can remove/add any one of them into the package file, and installing / uninstalling it.

Regards,
Damba

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 20:53 (5236 days ago) @ wodDamir

Yaser,

Please try completely uninstalling the component using uninstall (or Arr/Remove programs). Then install it using our installer (it will register both components on the system). You shouldn't receive any errors.

If that all goes well, you should only import the component that you will use in Delphi. They can both be registered on the system, but delphi gets confused if you import both of them into the project(since some objects are names the same way).

However, that's not important, since you can remove/add any one of them into the package file, and installing / uninstalling it.

Regards,
Damba

Hello Damba,

I had only planned on using the ActiveX version. I only installed the COM to see how the demos work. So from my understanding, uninstall and only install the aCTIVEx, correct ?

Thanks

Yaser

Re: Class Not Registered

by wodDamir, Thursday, July 22, 2010, 20:56 (5236 days ago) @ Yaser

Yaser,

In Delphi, yes. Import only the one you are going to use (In this case ActiveX Control).

Regards,
Damba

Re: Class Not Registered

by Yaser, Thursday, July 22, 2010, 21:36 (5236 days ago) @ wodDamir

Yaser,

In Delphi, yes. Import only the one you are going to use (In this case ActiveX Control).

Regards,
Damba

Damba,

I reinstalled the ActiveX component only. In the Object Inspector it has the License Key Property. From my understanding, this should only be reserved for COM.

Thanks

Yaser

Re: Class Not Registered

by wodDamir, Thursday, July 22, 2010, 22:05 (5236 days ago) @ Yaser

Yaser,

When importing the component, which one did you choose to import, Import a type library or Import ActiveX Control ?

Both versions are ActiveX, but one is a COM component, while the other is Control.

The Control doesn't have LicenseKey property implemented.

Regards,
Damba

Re: Class Not Registered

by Yaser, Friday, July 23, 2010, 01:18 (5236 days ago) @ wodDamir

Yaser,

When importing the component, which one did you choose to import, Import a type library or Import ActiveX Control ?

Both versions are ActiveX, but one is a COM component, while the other is Control.

The Control doesn't have LicenseKey property implemented.

Regards,
Damba

I imported the ActiveX control (.ocx) with Component|Import ActiveX Control.

When I place the control on the form, the License Key Property in the Object Inspector appears.

As a side note, the COM objects do not show the License key in the Object Inspector.

Thanks

Yaser

Re: Class Not Registered

by wodDamir, Friday, July 23, 2010, 01:28 (5236 days ago) @ Yaser

Yaser,

That's ok. The LicenseKey property is available in Object Inspector , but you don't need to use it.

Can you tell me the name of main wodVPN object? It should be TwodVPN .

Regards,
Damba

Re: Class Not Registered

by Yaser, Friday, July 23, 2010, 01:53 (5236 days ago) @ wodDamir

Yaser,

That's ok. The LicenseKey property is available in Object Inspector , but you don't need to use it.

Can you tell me the name of main wodVPN object? It should be TwodVPN .

Regards,
Damba

Hello Damba

In the ActiveX Control the main Object is TwodVPN. It is this control that has the License key property.

Also the TwodVPNCom i installed and it does not have the License property.

Am I fine or is there is a problem with my current settings ?

Thanks

Re: Class Not Registered

by wodDamir, Friday, July 23, 2010, 02:02 (5236 days ago) @ Yaser

Yaser,

Yes, you should be ok. If i'm correct, that's Delphi error with generating wrapper files for the component.

Regards,
Damba

Re: Class Not Registered

by Yaser, Friday, July 23, 2010, 03:32 (5236 days ago) @ wodDamir

Yaser,

Yes, you should be ok. If i'm correct, that's Delphi error with generating wrapper files for the component.

Regards,
Damba

Hello Damba,

Very interesting since I was under the impression from Drazzel that it is COM component that should have License Key Property in the Object Inspector and not the ActiveX.

Also it is possible to replace the COM object with the ActiveX in the Simple example to get it to run or will this cause issues ?

Thanks

Re: Class Not Registered

by wodDamir, Friday, July 23, 2010, 08:51 (5236 days ago) @ Yaser

Yaser,

That is true. However, I can only assume that Delphi mixes something up when generating wrapper files for the component (same as it changes Connect method to Connect1).

You could change the sample. However, not so easy, since events have completely different declarations, so you would have to re-add all of them.

However, is there any specific reason why you want to use .ocx?

Regards,
Damba

Re: Class Not Registered

by Yaser, Friday, July 23, 2010, 10:39 (5236 days ago) @ wodDamir

Yaser,

That is true. However, I can only assume that Delphi mixes something up when generating wrapper files for the component (same as it changes Connect method to Connect1).

You could change the sample. However, not so easy, since events have completely different declarations, so you would have to re-add all of them.

However, is there any specific reason why you want to use .ocx?

Regards,
Damba

Hello Damba

I do not have any specific reason to using OCX. I am up for anything that will make the connection between 2 or more computers work for me. What do u suggest, COM or ActiveX?

Thanks

Yaser

Re: Class Not Registered

by wodDamir, Friday, July 23, 2010, 11:24 (5236 days ago) @ Yaser

Yaser,

It's basically the same in Delphi, since it will show both as a Control. However, I would suggest COM object, since even our sample is written using COM.

Regards,
Damba