.NET «Приватное» приложение - PullRequest
       37

.NET «Приватное» приложение

1 голос
/ 23 сентября 2010

Я создаю приложение .NET (WPF) и компилирую его в .EXE.Затем я создаю второй проект и добавляю ссылку на скомпилированный .exe, вижу все классы и формы, могу использовать их для автоматизации и т. Д.

Я хочу запретить другим людям использовать мойскомпилировал .exe как .dll, поэтому я изменил все мои классы на «Друг» вместо «Public», но это не работает для форм (wpf).И каждый раз, когда я создаю новый класс, я должен помнить, чтобы изменить его на «Друг».

Итак, есть ли лучшее решение для предотвращения использования вашего приложения в качестве DLL?

ОБНОВЛЕНИЕ: Мне известно, что .NET легко декомпилируется, и что модификаторы доступа могут быть изменены с помощью определенного «взломщика».Но я только хочу сделать это немного сложнее, чем просто добавить ссылку.

Возможно, мне следовало бы сформулировать мой вопрос по-другому: как я могу сделать все формы / классы в моем проекте «Другом», не указав егоза каждый предмет.

Ответы [ 2 ]

3 голосов
/ 23 сентября 2010

В конце концов, вы мало что можете сделать;Отражение позволит вам обойти любые сделанные вами заявления о доступе.

Вы можете запутать свой код, чтобы сделать его более трудным для понимания и, следовательно, использования, но он не защитит от решительного вторжения.

2 голосов
/ 23 сентября 2010

Лучший способ сделать это - вставить в лицензионное соглашение конечного пользователя что-то, запрещающее это.

Изменение класса на друга не помешает кому-либо использовать его, если он этого действительно хочет.Все, что им нужно сделать, - это изменить DLL, чтобы сделать класс общедоступным, и ваша система защиты вышла из строя.

...