Подпишите его, а затем проверьте, что подпись действительно и есть. Я бы использовал какой-то официальный сертификат для компании, но самозаверяющий будет делать.
Быстрый Google оказался:
Digital Code Signing Step-by-Step Guide (Altho, похоже, это для Office XP)
Prevent DLL Tampering on Windows Apps
UPDATE:
Он также платит подписать EXE, а также.
Как указано в комментарии, вы не можете остановить кого-либо с достаточным навыком от вмешательства в ваше приложение. Все дело в управлении рисками. Сколько вам нужно «рисковать» кем-то, кто подделывает ваше приложение. Стоит ли время и силы поднимать планку так, чтобы вам требовался более высококвалифицированный человек, чтобы нравиться с вашим приложением? Это зависит от вас.
Я бы по крайней мере подписал все ваши файлы кода, которые вы выпускаете в любом случае. Он проверяет, что эти файлы поступают от вас и не были подделаны.
Если кто-то действительно желает взломать/изменить свой ресурс, вы не сможете его избежать. Я бы посоветовал просто принять тот факт, что если ваш продукт будет достаточно хорош, кто-то его взломает. Подумайте, как это, например, комплимент: если вы найдете какой-то ваш ресурс в другом месте, чем в ваших DLL, это будет означать, что ваша программа считается очень хорошей! Короче говоря, с моей точки зрения: время, которое вы потратите на защиту своей программы от воров, - это чистая потеря времени. –
@Olivier Pons, это верно только в том случае, если ваша защита неэффективна, и вы тратите много времени на ее установку. Если вы можете сделать что-то быстро, что будет мешать неопытным хакерам, это, вероятно, стоит того. –
@ Оливье, каждый общий замок двери можно выбрать за считанные минуты, даже секунды. Тем не менее, большинство людей используют их. – peterchen