Click here to Skip to main content
12,756,298 members (34,902 online)
Click here to Skip to main content

Stats

96.9K views
16.2K downloads
230 bookmarked
Posted 9 Oct 2012

Creating Secure Trial Versions for .NET Applications - A Tutorial

, 16 Oct 2012 CPOL
Implement trial licensing model for your .NET applications with minimal costs
Imports System.IO
Imports System.Xml

Public Class AppSettings
    Private settings As XmlDocument
    Private settingsFile As String

    Public Sub New()
        settingsFile = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + "\\SampleApp\\Settings.xml"
    End Sub

    Public Function GetProperty(ByVal name As String) As String
        Dim val As XmlNode = settings.SelectSingleNode("/Settings/" + name)

        If val Is Nothing Then Return Nothing

        Return val.InnerText
    End Function

    Public Sub SetProperty(ByVal name As String, ByVal value As String)
        Dim val As XmlNode = settings.SelectSingleNode("/Settings/" + name)

        If Not IsNothing(val) Then
            val.InnerText = value
        Else
            val = settings.CreateNode(XmlNodeType.Element, name, Nothing)
            val.InnerText = value

            settings.DocumentElement.SelectSingleNode("/Settings").AppendChild(val)
        End If
    End Sub

    Public Sub Load()
        Try
            settings = New XmlDocument()
            settings.Load(settingsFile)
        Catch ex As Exception

        End Try

        If settings.SelectSingleNode("/Settings") Is Nothing Then
            settings.AppendChild(settings.CreateElement("Settings", Nothing))
        End If

    End Sub

    Public Sub Save()
        Try
            Dim settingsPath As String = Path.GetDirectoryName(settingsFile)

            If Not Directory.Exists(settingsPath) Then
                Directory.CreateDirectory(settingsPath)
            End If

            settings.Save(settingsFile)

        Catch ex As Exception

        End Try
    End Sub

End Class

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Ansel Reynard
United States United States
No Biography provided

You may also be interested in...

Pro
Pro
Permalink | Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.170217.1 | Last Updated 16 Oct 2012
Article Copyright 2012 by Ansel Reynard
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid