Еще раз к началу. Все, что может приложение, это управлять реестром. Можно использовать короткие CMD команды.
Приложению не нужно пытаться защитить от всего, главная задача защитить от первого запуска подозрительного файла.
В идеале, каким я хочу видеть приложение, это при открытии файлов...