How are you licencing the code? Per site? Per server? Can the user transfer the licence/software between physical boxes (provided they don't use more than the numbfer of copies they bought?) For example, if the code is licenced per physical server (irrespective of the number of processors), and the code can be moved between boxes (eg the user upgrades/replaces the box) then I would: a) use assymetric key encryption b) have the user tell you what the IP address of the server is c) create an encrypted config file. The message is the IP address, and key is yourp private key. You give this config file to your user. d) you embed the public key into your application. When the component initialises, it reads in the config file, decrypts it using the public key, and checks the IP address against the IP address the machine is using. This may present issues in a load balanced environment, and isn't circumventable by clever programmers, but it's a common technique that works for most cases. Cheers Ken On Sun, 12 Sep 2004 21:29:21 +0930, Craig <cd-ml at aardvark.net.au> wrote: > ok, I should have said "how to do it in an ActiveX DLL", as I've converted > my ASP code into a ActiveX DLL, so the source-code will be secure :) > > Regards, > Craig.