Developer's checklist

Protect main EXE, not installer

You might get a message that looks like this:

01

This is most common mistake. You need to wrap original EXE file, not installer:

02

If you wrap just installer then you will be asked for unlock key during installation only. This is huge security risk. Instead you need to protect your main application EXE file and then put that file into installer.

This way when your customers install your product, on the first run they will be asked to enter valid unlock code. The only way they can get access to your product is entering valid license code. On consecutive runs they won’t be bugged by code, however Software Defender will check if their license is still valid.

Now let's suppose one of your customers made refund. Most likely you have a line in your License Agreement that says something like "if you make refund then you need to remove this product from your computer". However some people are not honest and they will try to use your product even after they got their refund. What will happen in this case? Software Defender will detect that license has been blocked and will show error message:

03

Of course anton@softwaredefender.com will be replaced with your actual email address.

Have multiple EXE files? You can include any other important files on "Add extra files" step and they will be packed with main EXE file (read below). When in doubt, protect the most important EXE file. For example, you might have another EXE file that takes care of updates. There's no real reason to protect it since it's virtually useless without main program. Or just write us at support@softwaredefender.com if you need help with your particular scenario. We'll be glad to help.

What if customer has no Internet connection? Not a problem. Software Defender will allow normal usage scenario if there's no connection at the moment. Your customers will need Internet connection to perform first activation, though.

What do you mean by that "normal usage scenario"? Software Defender looks into program usage patterns. For example, if you customer will install your product on laptop and one day he will decide to take a short vacation to the place where no Internet connection is available, he will be able to run your software just fine. However if he will try to cheat by disabling Software Defender access to Internet, that won’t work.

Adding extra files to wrapper

Extra files are added in dialog that is shown below:

04

What are extra files? Basically, they are dependency files. For example, your program might rely on SQLite database library and that library needs to be placed in the same directory as main EXE file. Or you might be writing some data to file in "parent" application directory.

Though it's better to save these files in proper places (store all the data in Local Settings instead of writing to Program Files\YourApplication\YourFile.ext) it's possible to include them into "bundle" as well. Just add them as "extra files" as shown above and your program will be able to read/write to these files when needed. Even better, these files will remain protected by Software Defender as well, which gives you a little bit more security.

If your other "part" of product needs to change some of these files, you need to add that "part" as extra files and check "My product needs to change some of these files" checkbox. For example, on screenshot above we included "PE_service.exe" in extra files since this program needs to change some of database files as well.

Most likely you will need to modify shortcuts in Start Menu as well (in your installer program). For example, your old shortcut might point to this file:

PE_service.exe

However now this file is included as "extra file", so you need to change your shortcut to look like this:

MyProtectedProduct.exe SDRUNEXTRA=pe_service.exe

In this example, MyProtectedProduct.exe is your "wrapped" product (i.e., file that you got in the end of wrapping process) and pe_service.exe is the name of extra file included.

If you're still unsure if you should add any files, contact us at support@softwaredefender.com and we'll be glad to help.

Requirements for products sold as "documents" (PDF, DOC, etc)

Protect the most important thing. If you're selling PDF e-book, protect PDF file and leave things like examples or README files as-is.

When your protect PDF, DOC (or any other format) the "result" will always be EXE file. However, keep in mind that your customers need to have correct viewer installed to open your product — like Adobe Acrobat Reader for PDF files, Microsoft Word for DOC files and so on.

Misc

If you need to pass any command-line arguments to your product, you can do that with no changes. Let's suppose your original EXE filename is myProduct.exe. You want to run something like this:

myProduct.exe /param1 /param2

After you wrapped your product with Software Defender you got file called myProtectedProduct.exe. To achieve the same effect with command-line parameters, you can run it like this:

myProtectedProduct.exe /param1 /param2

If you need to run one of "extra files" and pass command-line parameters at the same time, you can do it like this:

myProtectedProduct.exe SDRUNEXTRA=myExtraFile.txt /paramForExtra1 /paramForExtra2

Any questions?

Write us at support@softwaredefender.com if you need some help.