# Visual Basic > Visual Basic 6 and Earlier >  ActiveLock

## pattycake

Is there anyone around that still uses, or has used ActiveLock?  Yeah, I know, old but I actually really like it.  Problem is generating a license file - cannot seem to be able to create one.  Hopefully, there's still someone around that can lend a hand.

btw: I have generated a 30 day trial period for the software, just need to be able to create a license file when a person wants to purchase the software.

-pat-

----------


## OptionBase1

There's a few threads on this site about it, not sure if you've seen them or not.  If you search google for:

ActiveLock site:vbforums.com

you should find them.  That being said, one of the threads had a link to an unlisted youtube video that seems like it might have information about implementing ActiveLock from start to finish, since it is almost 30 minutes long.

https://www.youtube.com/watch?v=YwaOyOduqdQ

Hopefully that will help you out.

----------


## pattycake

Yes, I've seen that video.... painful is a word I'm thinking of.  Besides being painful to watch, it's very very old or some ancient version of ActiveLock thats nothing like the latest 3.6 version.

I hate to switch but I might need to go find another add-on to protect this old vb6 progarm

I'll try your search

----------


## VanGoghGaming

What does your program do that it needs such a complicated protection?

----------


## Little John

Hello Pat,

Warning there is a bug in Windows 10.

Quoting from another forum:

**********
-2147221463: Crypto API Error: Irnralid signature.[5-2]

ALUGEN has been working fine on XP and VISTA, but has been producing the above error message when validating VCode/GCode pairs in Windows 10, both 64 bit and 32 bit. With Vista now "end of life" I needed an urgent solution to the problem.

After weeks of research into the workings of CryptoAPI I believe I have uncovered a bug in the ALUGEN download available on this site. The offending lines are in clsCryptoAPI.cls in the definition of the ImportPrivateKey subroutine. The offending lines are 

lngType = AT SIGNATURE Or CRYPT EXPORTABLE Or CRYPT NO_SALT
If UseExchangeKeyPair Then _
lngType = AT KEYEXCHANGE Or CRYPT _EXPORTABLE Or CRYPT NO_SALT

The lngType is used as the dwFlags argument in the CryptimportKey call at the end of the subroutine. Nothing in any of the documentation / books 1 have read suggests that either AT _SIGNATURE or AT KEYEXCHANGE should have anything to do with the call to CryptimportKey. Consequently, I replaced the two lines above with the line below and have found that the revision worked on XP, Vista and Windows 10 - both 32 and 64 bit.

lngType = CRYPT EXPORTABLE Or CRYPT _NO_SALT

I hope this correction will be of help to others.

************
I've been using it for a long time and I'm quite happy with it.

I did change the code a bit for me though.

Greetings and a happy new year to all.

----------

