PreviousNext
Macrovision

Trialware Technology

InstallShield 2008

With the Trialware view, you can configure a license for trialware. InstallShield uses the license to wrap a trialware shell around your product’s executable file (.exe, .dll, .ocx, or .scr file). The file can be unwrapped and used only according to the license settings that you configure, such as the trial limit (a specified number of days or a specified number of uses).

The trialware technology available in InstallShield should not be confused with freeware or shareware. Often freeware and shareware have limited functionality. For example, end users sometimes cannot print anything from shareware or freeware, or a watermark might be added to every page. Such limitations are established to encourage prospective customers to purchase a fully functional version of a product; however, building such limitations into your product can be costly and waste valuable development time.

With trialware, the only limitation is the time limit or the limited number of uses. You enable a prospective customer to use the latest version of your product—with all of its features fully available—on a trial basis. No dongle is used to limit or lock software access. After a predetermined trial limit has been reached, the trialware expires.

Licenses

Trialware technology actually involves two types of licenses: a license that wraps the protected executable file and a license that identifies a protected trialware product on the end user’s machine. Both types of license are associated with each other by a license number, and the term license is used to refer to both types of licenses.

When you create trialware with InstallShield, you acquire a unique license for your product. The license is downloaded from the license server to your machine, and it is stored in your InstallShield project file.

InstallShield uses the license to wrap a trialware shell around your product’s application file. The application file can be unwrapped and used only according to the license settings that you configure.

When an end user runs your trialware for the first time on their machine, the trialware stores a license in both a license file and an anchor. Both must be present on a system to allow licensing to work. The anchor is stored in an operating system–specific location to hinder end users from trying to reset the license state by simply deleting the license file. This approach allows license data to remain safe even if the trialware product or the operating system requires reinstallation.

If an end user reformats a hard drive that has trialware, it will not affect license data stored on that machine. However, repartitioning the hard drive will. End users can use ghosting utilities to back up a disk or partition to an image and restore the trialware later.

InstallShield Licensing Service

The InstallShield Licensing Service is required for all trialware products. During the installation of a trialware product, the installation checks to see if the service is already on the machine:

During the uninstallation of a trialware product, the uninstallation decreases the reference count by one:

The reference count helps prevent the service from being removed if remaining trialware products need the service.

Files Installed with a Trialware Product

When you build a trialware version of a product, InstallShield automatically adds a file called IsSvcInst<FileName>.dll to your installation, where <FileName> is the name of your wrapped file without the dot or file extension. This IsSvcInst<FileName>.dll file is installed with the executable file that you are protecting, and the trialware technology uses it if an end user manually removes the InstallShield Licensing Service.

For the Try and Buy/Product Activation type of trialware, a file called INetTrans.exe is also installed with the executable file that you are protecting. The INetTrans.exe file handles online activation transactions.

Uninstallation of Try and Buy/Product Activation Trialware

If an end user uninstalls Try and Buy/Product Activation trialware that has already been activated, the uninstallation automatically deactivates the trialware. This deactivation decrements the number of activations in use. The end user can reinstall and then reactivate the product on the same machine or on another machine.

End-User Privacy with Try and Buy/Product Activation Trialware

When end users start the activation process, an online activation (through the Internet) is first attempted automatically. If end users have anti-spyware or firewall applications running on their machines, they may receive warnings during activation. That is because the trialware must send a license request to the activation server in order to perform an online activation of the product on the target machine. The activation process uses a minimal amount of information about the product and the machine to create that request for a product license. The license request consists of the following data:

The request code is created using the following information:

The license request is sent to the InstallShield Activation Service either through a secure Internet connection (SSL) or by manually submitting the request code through email or phone. If the request code is valid, a response code that activates the product immediately is returned.

The activation process is completely anonymous and never requests, collects, or transmits personal information. It does not scan end users’ hard drives, and none of the information collected can be used to identify end users’ individual hardware components.

End-User Privacy with Try and Die Trialware

Try and Die trialware is completely anonymous. It does not allow or involve product activation. No information is sent to any sort of server for activation when an end user runs Try and Die trialware.

Workarounds for Trialware Issues with .NET, Java, PowerBuilder, or Other Interpretive Languages

InstallShield cannot wrap .NET or Java files for the Try and Buy/Product Activation or Try and Die types of trialware. In addition, InstallShield cannot wrap files that were created with applications such as PowerBuilder, which uses interpretive languages.

With .NET and Java-based applications, build errors may occur in InstallShield when users attempt to build the installation. With PowerBuilder-created applications, end users can install the application, but the application cannot be launched when end users click Finish in the trialware run-time dialog.

If your application is a .NET or Java-based application or you used a tool such as PowerBuilder to create your application, create a traditional Windows-based .dll file:

With this workaround, when an end user tries to launch the executable file, the executable file calls the protected .dll file, which triggers the trialware technology.

See Also




Copyright Information | Contact Macrovision