User gets missing key message - WeOnlyDo Discussion board

User gets missing key message (wodSFTP / wodSFTP.NET / wodSFTPdll)

by ltoews, Saturday, January 03, 2009, 09:07 (5804 days ago)

I have developed a VB6 application that uses wodFtpDLX as a COM object. Once in a while, a user will get the following error message:

License key missing. You cannot use this component in design environment. (Error code is 39999)

This puzzles my poor users, because they have no idea what a design environment is. They're just trying to use a compiled executable. The license key property is set before the call to the Connect method. The DLL is included in the installer. About 20 people are using this application on a daily basis, and about once a month somebody will get this error message. They can get around it by rebooting and restarting my application, but the message makes it appear that I've given them a program with a pirated component in it.

Re: User gets

by woddrazen, Saturday, January 03, 2009, 10:15 (5804 days ago) @ ltoews

Hi ltoews,


Is there any chance you can duplicate this on your machine?

Usually when this error happened DEMO version is used instead licensed one.

In order to get licensed version for 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.

Can you please try with that version and let us know how it goes?

Please also make sure that you include LicenseKey Property in your code.


Regards,
Drazen

Re: User gets

by ltoews, Sunday, January 04, 2009, 10:19 (5803 days ago) @ woddrazen

Is there any chance you can duplicate this on your machine?

No. I've been using this control for nearly a year, and I've never seen this message on my development computer. I have never seen it on my test computer either.

Usually when this error happened DEMO version is used instead licensed one.

I'm not using the demo version of the control. As suggested in the Knowledgebase article Licensed version in your project returns DEMO window? , I've checked the wodFtpDLX version information from within my code, and it returns 2.8.6.437 with no mention of Demo version.

Please also make sure that you include LicenseKey Property in your code.

Yes, it's there.

I found something interesting -- I removed the line in my code that sets the LicenseKey property, and my application runs without any error messages. Is the code cached somewhere in the Registry the first time the control is used?

Re: User gets

by wodDamir, Sunday, January 04, 2009, 13:14 (5803 days ago) @ ltoews

Hi ltoews,

What OS is this occuring on? What programming language are you using?

Did you recently update the component?

As for the registry, the license key isn't stored in registry, and doesn't use it for license validation. Please do note however, that you will never receive this error on your development environment (where the component was installed using our installer).

Regards,
Damba

Re: User gets

by ltoews, Monday, January 05, 2009, 05:49 (5802 days ago) @ wodDamir

What OS is this occuring on?

WinXP Pro, Service Pack 3

What programming language are you using?

VB6 on a WinXP development computer

Did you recently update the component?

Yes, but there were occurrences of the problem prior to the latest update. I have copies of my email correspondence with WeOnlyDo Support when this program first appeared in April, 2008.

As for the registry, the license key isn't stored in registry, and doesn't use it for license validation. Please do note however, that you will never receive this error on your development environment (where the component was installed using our installer).

Good to know. I'll keep that in mind.

The user that is currently experiencing this problem has not been able to get around it. She has rebooted (which has been sufficient for other users in the past), and she has also used regsvr32 to unregister and then re-register wodFtpDLX.dll.

Lorin

Re: User gets

by wodDamir, Monday, January 05, 2009, 09:29 (5802 days ago) @ ltoews

Hi Lorin,

How exactly did you obtain the update? Did you simply download it from our site or did you use our Request update page?

Can you make sure that your client removes all the component's dll's from the machine (search the computer), and then copy the one you have in C:\Windows\System32 and register it there?

Regards,
Damba

Re: User gets

by ltoews, Thursday, January 08, 2009, 08:10 (5799 days ago) @ wodDamir

How exactly did you obtain the update? Did you simply download it from our site or did you use our Request update page?

I clicked the link in the email that notified me the new version was available.

Can you make sure that your client removes all the component's dll's from the machine (search the computer), and then copy the one you have in C:\Windows\System32 and register it there?

OK. She only had one copy of the dll on her system, and replacing it did not make any difference.

I've noticed one other bit of odd behavior with this user's computer: when my app starts up it's supposed to use the msinet.ocx control to send version information to my server (by calling a php page with the user's version info in a $_POST variable). Her computer has failed to do this since Dec 17, which is around the same time that the license key error started appearing.

Lorin

Re: User gets

by woddrazen, Thursday, January 08, 2009, 09:19 (5799 days ago) @ ltoews

Lorin,


Maybe your customer has some firewall or some antivirus that block ActiveX component to execute properly. What happened when firewall and antivirus is disabled?

Also maybe there is some issue with that machine. Is there any chance they can try same on some different machine?


Drazen

Lots of users now having this problem

by ltoews, Saturday, March 28, 2009, 07:12 (5720 days ago) @ woddrazen

The invalid license problem seemed to clear up on its own in January, 2009, but it has returned with a vengeance two months later.

I now have seen the WOD invalid license message on every user's computer in our organization. This just started this week, and there has been no change to the dll in the installer since the update to version 2.8.8 in mid-February.

As before, the error is intermittent. A user will be able to transfer files with my app many times before the error appears. Most users see the error two or three times during the course of the day.

In most cases the user is able to resume normal use of my app by exiting the app and restarting it. In extreme cases it has been necessary to reboot the computer.

The intermittent nature of the error has made it impossible to establish any kind of pattern to this, and I am unable to reproduce the error on my development computer because I have a valid license for wodFtpDLX.

I've invested a lot of time and effort to fit your control into my code, and I really don't want to have to do that all over again with somebody else's dll, but these error messages are unacceptable.

Please help me with this or refund my money.

Re: Lots of users now having this problem

by woddrazen, Saturday, March 28, 2009, 08:29 (5720 days ago) @ ltoews

Hi Lorin,


We are really trying to help you. It's hard to resolve your issue without duplicating it first.

First of all did you set LicenseKey Property in your code before Connect Method? Can you show us how? You should send us your LicenseKey code to:

techsupport@weonlydo.com

So it will be not publicly exposed.

Are you maybe using more then one instance of wodFtpDLX? If you do please set LicenseKey Property in each instance before Connect Method.

Also if you are destroying wodFtpDLX object in your code and start is again please also set LicenseKey Property.

Hope this helps. Let u know how it goes.


Drazen

Re: Lots of users now having this problem

by ltoews, Saturday, March 28, 2009, 09:30 (5720 days ago) @ woddrazen

Drazen,

Believe me, I understand the difficulty of not being able to duplicate the problem!

Here's the code that I use to set the LicenseKey. cnx is an object variable that contains various parameters for the connection. I've emailed you the actual license key that I use.

With Ftp1
If .State = Connected Then .Disconnect
.LicenseKey = XXXX-XXXX-XXXX-XXXX
.HostName = strHost
.Login = cnx.FTP_Username
.Password = cnx.FTP_Password
.Protocol = IIf(cnx.FTP_SecureFTP, SFTP, FTP)
.Port = cnx.FTP_Port ' this has to be set AFTER setting the protocol
.Timeout = 30
.Blocking = True
.ProxyHostname = cnx.FTP_Proxy
.Tag = cnx.FTP_RootFolder ' original root folder -- restore to this on disconnect
.Connect
strInitialRemotePath = .RemotePath ' get initial home path
End With

The above code is part of a function called FTPConnect, and it is called before any ftp activity. FTPConnect is on a form called frmFTP, which is unloaded when the ftp activity is complete. The following code is in frmFTP.Unload.

If Not Ftp1 Is Nothing Then
Ftp1.Disconnect ' in case this hasn't already been done
Set Ftp1 = Nothing
End If

Re: Lots of users now having this problem

by woddrazen, Saturday, March 28, 2009, 20:19 (5720 days ago) @ ltoews

Lorin,


I send you reply to you ticket. We can continue discussion there.


Drazen

Re: Lots of users now having this problem

by Al Moser, Saturday, December 11, 2010, 02:20 (5098 days ago) @ woddrazen

I am also having the problem. I started with your Sample | VC |ATL|ConsoleApp

_bstr_t key( xxxx-xxxx-xxxx-xxxx );
pFtpCom->PutLicenseKey(key);
printf( license key= s
, (LPCTSTR) pFtpCom->GetLicenseKey());
try {
pFtpCom->Connect ();
} catch (...) {

On computers like my development one, I get an echo of the license key, and it runs fine (Windows 7, Windows XP SP3, ...). On other computers (Windows XP SP3 with McAfee) I get:
license key=(NULL)
and then the offer to buy a license pops up. A previously compiled version of this same routine works properly on the machines where the newly compiled version fails.

So, I downgraded the WodFTPDlx.dll and WodFTPDlx.ocx files back to the 2.7.3 (from 3.0.7) in my c:windowssystem32 folder (on the development computer), recompiled the routine, and now it works on the machine where it was previously failing.

Then, I upgraded again. Found that an older version of WodFtpDlx.dll was being distributed with the newly compile executable. Once I put the right version of WodFtpDlx.dll in the distribution, the problem went away.