Demo software management

I have a software product written in VB6. This is a paid software product and it has a demo version for 1 month. There is no separate installation file for the demo version. The software turns the demo into the full version when you enter the product key. I used to write information in the registry for tracking 1 month for demo and after that the software will not work. Also, if the Windows user is not an administrator, the registry cannot be written to HKLM. If I write the registry in HKCU, the user can create a new user and reuse the software by installing it. So how can I manage the demo up to 1 month and the user cannot use it after 1 month without purchasing a key?

+3


source to share


4 answers


I would have thought that you would need to create a license key file and save it with an .exe file. It must be encrypted in some way and will contain details of when it was created and on what machine, etc. Perhaps you could work around it, but it would certainly be durable enough for your requirements.



+2


source


If you are worried about the user creating new user accounts to restart the demo, you will need to write the global location. You can write HKLM as standard if you have configured the appropriate location during setup.

Please note: if a user is able / willing to create a new user account every 30 days, then a registry entry will also not stop them.



The best option without a centralized activation service is to misuse the demo to prevent prolonged use.

Our demo software shuts down after 30 minutes, but they can register a (dated) trial key, which allows full access, reverting back to the demo when it expires.

+1


source


the best way is to let your software connect to your server and log its install date there and let it connect to your server every time it starts up

this requires your software to have access to your server, so it must have access to the internet, which may not always be true.

Another plus of this method is that your software can check for available updates on your server.

0


source


another idea, although I've never tried it:

you can make your app the checked file size of your exe app and compare it with current date / time

of course the user can always specify the date and time in the future and then install the app or install it in the current date / time and change the date / time in the past before launching it

I don't know if your application has access to its own properties, but on startup this gives some data when I run the exe and click in the textbox:

'1 form with
'    1 textbox : name=Text1    multiline=true

Option Explicit

Private Sub Form_Resize()
  Text1.Move 0, 0, ScaleWidth, ScaleHeight
End Sub

Private Sub Text1_Click()
  Dim intFile As Integer
  Dim strFile As String
  Dim lngSize As Long
  Dim dateMod As Date
  Dim fs As New Scripting.FileSystemObject
  Dim f As File
  Text1.Text = ""
  ' length of file
  strFile = App.Path & "\FileProp.exe"
  intFile = FreeFile
  Open strFile For Input As #intFile
    lngSize = LOF(intFile)
  Close intFile
  Text1.SelText = "LOF : " & CStr(lngSize) & vbCrLf
  ' last modified
  dateMod = FileDateTime(strFile)
  Text1.SelText = "FileDateTime : " & CStr(dateMod) & vbCrLf
  ' filesystemobject
  Set f = fs.GetFile(strFile)
  Text1.SelText = "fs.DateCreated : " & f.DateCreated & vbCrLf
  Text1.SelText = "fs.DateLastAccessed : " & f.DateLastAccessed & vbCrLf
  Text1.SelText = "fs.DateLastModified : " & f.DateLastModified & vbCrLf
End Sub

      

0


source







All Articles