I have one idea using license for ID CPU:
Example in Visual Basic .NET
Add in Form :
* Label
* ListBox
In Form1.Load
Code:
Control.CheckForIllegalCrossThreadCalls = False
If My.Computer.FileSystem.FileExists("ISD") Then
'Si existe, lo borrara
My.Computer.FileSystem.DeleteFile("ISD")
End If
Dim mbsList As ManagementObjectCollection = New ManagementObjectSearcher("Select ProcessorID From Win32_processor").Get
Dim mo As ManagementObject
For Each mo In mbsList
Me.label7.Text = mo.Item("ProcessorID").ToString
Next
My.Computer.Network.DownloadFile _
("http://www.example.com/LIC.txt", "ISD")
Dim reader As New StreamReader("ISD")
Do While (reader.Peek > -1)
Me.ListBox1.Items.Add(reader.ReadLine)
Loop
reader.Close()
Timer1.Interval = 1
Timer1.Enabled = True
In Timer1.Tick
Code:
If (Me.ListBox1.FindString(Me.label7.Text) <> -1) Then
Me.Timer1.Enabled = False
MyBase.Enabled = True
Else
Me.Timer1.Enabled = False
Me.Text = (Me.Text & " - License Invalid")
MessageBox.Show(("Buy license.."))
Clipboard.SetText(Me.label7.Text)
Application.Exit()
End If