Is there code in visual basic 2008 where i can set my program to expire every 30 days ?
Thank You
Is there code in visual basic 2008 where i can set my program to expire every 30 days ?
Thank You
You could check into the FirstRun property, and somehow save that, and check it each time to program is run by using DateDiff....
i dont follow...do u have a sample code?
You can write the code to count from the day of first run to 30 days and just use a simple message box to display that the program is out of date and needs update.
This way,you can create another form that will accept some serial numbers to update the program so that it will continue for another 30 days and so on....!!!!
you can also save a record to the registry.
write a date of first run there.
then every time your program starts,
It checks the record you saved in the registry to find out if the 30days trial has finished.
The only problem in this type of licensing is when your client knows where you save that record.
Another way is to use licensing softwares.
But you need to pay for that software.
I dont know if there's free versions.
try Google search.
This is a nice codes i generated myself to solve this problem......!!!
You can study and look at what i did and improve upon it.....@@@
Try to copy and put into a blank form and debug it to see what happens but you need to change the day on your system date to the number indicated as 13....!! for the trial period to execute.....###
Public Class Form1
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
If MsgBox("Are you sure to exit", MsgBoxStyle.YesNo, "Exit") = MsgBoxResult.No Then
e.Cancel = True
End If
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
fade_in()
If Date.Now.Day <> 13 Then
MsgBox("Your application is out-of-date and needs update", MsgBoxStyle.Information, "Trial mode")
Me.Close()
Else
Me.Show()
End If
End Sub
'Fade in
Public Sub fade_in()
For FadeIn = 0.0 To 1.1 Step 0.1
Me.Opacity = FadeIn
Me.Refresh()
Threading.Thread.Sleep(100)
Next
End Sub
'Fade out:
Public Sub fade_out()
For FadeOut = 90 To 10 Step -10
Me.Opacity = FadeOut / 100
Me.Refresh()
Threading.Thread.Sleep(50)
Next
End Sub
End Class
i appreciate your help but i need it to stop the user for using the program. I basically want the user to be prompted for a password to launch the application and after 30 days that password stops working and they wont be allowed access
Can you guys help with this? Thanks
This is untested:
'Make a new form, put this code in it, and set it as your startup form
'Also, make a new user setting of the type "date" called Expiration_Date
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If My.Application.Deployment.IsFirstRun Then
My.Settings.Expiration_Date = Now.Date
My.Settings.Save()
End If
If DateDiff(DateInterval.Day, Now, My.Settings.Expiration_Date) > 30 Then '30 is the expiration date
Dim Response As String = "~"
While Response <> "Password here" And Response <> Nothing
Response = InputBox("The 30 day trial is up! Please enter a password to continue using this software!", "Trial")
End While
If Response = Nothing Then End 'A crude, but effective, way of forcing a close
End If
Me.Hide()
Mainform.show() 'If it passes all the tests, start the main program
End Sub
End Class
This is not tested and may need debugging but:
Here is an example that creates settings then handles them, adjust the code to work for your program and/or handle the dates like
#
Public Function DateGood(NumDays As Integer) As Boolean
'The purpose of this module is to allow you to place a time
'limit on the unregistered use of your shareware application.
'This module can not be defeated by rolling back the system clock.
'Simply call the DateGood function when your application is first
'loading, passing it the number of days it can be used without
'registering.
'
'Ex: If DateGood(30)=False Then
' CrippleApplication
' End if
'Register Parameters:
' CRD: Current Run Date
' LRD: Last Run Date
' FRD: First Run Date
Dim TmpCRD As Date
Dim TmpLRD As Date
Dim TmpFRD As Date
TmpCRD = Format(Now, "m/d/yy")
TmpLRD = GetSetting(App.EXEName, "Param", "LRD", "1/1/2000")
TmpFRD = GetSetting(App.EXEName, "Param", "FRD", "1/1/2000")
DateGood = False
'If this is the applications first load, write initial settings
'to the register
If TmpLRD = "1/1/2000" Then
SaveSetting App.EXEName, "Param", "LRD", TmpCRD
SaveSetting App.EXEName, "Param", "FRD", TmpCRD
End If
'Read LRD and FRD from register
TmpLRD = GetSetting(App.EXEName, "Param", "LRD", "1/1/2000")
TmpFRD = GetSetting(App.EXEName, "Param", "FRD", "1/1/2000")
If TmpFRD > TmpCRD Then 'System clock rolled back
DateGood = False
ElseIf Now > DateAdd("d", NumDays, TmpFRD) Then 'Expiration expired
DateGood = False
ElseIf TmpCRD > TmpLRD Then 'Everything OK write New LRD date
SaveSetting App.EXEName, "Param", "LRD", TmpCRD
DateGood = True
ElseIf TmpCRD = Format(TmpLRD, "m/d/yy") Then
DateGood = True
Else
DateGood = False
End If
End Function
'Usage
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Set timer and test
If Not DateGood(30) Then
MsgBox("Trial Period Expired!", vbExclamation, "Unregistered application")
Me.Hide() 'Hide if not
Else
Me.Show() 'Show if good
End If
End Sub
These bits of code are excellent. However, I need need help making it work. I have an exe which was coded in AutoIt.. fully functional, I just need it linked or whatever to this bit of vb code up top so that it only runs for 30 days then becomes useless. any input is greatly appreciated
Any program that uses an expiry date is subject to being overridden by a program such as TimeStopper unless you can embed a call to an external (internet) time service periodically to get the actual date/time.
i need a code vb which i can add to my project, a code that can display greeting message with alart or music at specific time and date i set for the message to display and user or admin of my software will be able to add new date and greeting to the alart message box of when the greet box will display in future, lf any can help pls reply thanks
"A first chance exception of type 'System.Deployment.Application.InvalidDeploymentException' occurred in System.Deployment.dll" error occured durin run of code by Xcelled194.
Please Reply...
We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.