2. Apply Macrovision SafeDisc copy-protection to the DLL file.
Consult the SafeDisc User Manual on the exact procedure for doing this.
3. Modify your main EXE file to include the following statement:
// NOTE: LoadLibrary is a Win32 API call. The 2 statements below can be
// translated into any programming languages (VB, .NET, Delphi, etc)
if (LoadLibrary("do_nothing.dll") == 0) // if LoadLibrary returns 0, it means safedisc couldn't find the CDROM signature
ExitProcess(0); // Quit the program. For better security, set a flag and quit your program at a later stage
4. Create a Thinstall project where:
- Your input EXE is the EXE described in step 3
- You have added the SafeDisc protected version of do_nothing.dll to your project as a virtual file
The virtual file should have the following properties set:
·
Caching / Extraction -> set to "Never cache or extract"
·
Module Search Path -> set to "Always load this DLL"
- You may also include other datafiles, DLLs, and project settings as you need.
5. Build the final EXE, this will have both Thinstall and SafeDisc protections applied