Форум программистов, компьютерный форум, киберфорум Visual Studio, VS Code
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
 Аватар для Bogradan
4 / 3 / 1
Регистрация: 22.03.2016
Сообщений: 279

Как спрятать внутренний код у проекта по завершению?

31.01.2025, 13:55. Показов 838. Ответов 17

Author24 — интернет-сервис помощи студентам
Короче: Как завершённый проект сделать готовым для пользования, и чтобы он не был понятен пользователям обычным со всем внутренним кодом?
Как скрыть от других программистов свой внутренний код?

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

Ну вот программа готова полностью допустим, что дальше делать? Код написал весь, компилируется всё такое, exe файл есть, чё дальше?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.01.2025, 13:55
Ответы с готовыми решениями:

Как получить проект после его завершения?
Я даже не знаю слов чтобы загуглить такое!

Делаю простую панель управления сайтом. Как спрятать код на JS?
Для управления сайтом используется, в том числе, и некоторый код на JS. Но, ведь он может быть скачан с сайта (в отличие от РНР). Вопрос...

Вакансия Менеджера проекта (внутренний проект разработки ПО)
Вакансия Менеджера проекта (внутренний проект разработки ПО) Наш клиент – крупная российская медийная компания, открывает...

17
Эксперт .NET
 Аватар для Rius
11420 / 7298 / 1617
Регистрация: 25.05.2015
Сообщений: 22,072
Записей в блоге: 14
31.01.2025, 14:09
Обфускация нужна.

Или надо было писать на C++ или подобном языке.

Хотя единственный надёжный способ защитить - не давать физический доступ к файлам программы пользователям.
1
 Аватар для Bogradan
4 / 3 / 1
Регистрация: 22.03.2016
Сообщений: 279
31.01.2025, 14:48  [ТС]
Я на С++ и написал программу. "Обфускация" спасибо за слово.
0
Эксперт .NET
 Аватар для Rius
11420 / 7298 / 1617
Регистрация: 25.05.2015
Сообщений: 22,072
Записей в блоге: 14
31.01.2025, 14:49
Не на C++/CLI .Net
1
 Аватар для Bogradan
4 / 3 / 1
Регистрация: 22.03.2016
Сообщений: 279
31.01.2025, 14:50  [ТС]
Какие варианты у меня есть если проект с++ CLI/Windows Forms.
0
Эксперт .NET
 Аватар для Rius
11420 / 7298 / 1617
Регистрация: 25.05.2015
Сообщений: 22,072
Записей в блоге: 14
31.01.2025, 15:02
  • Переписать всё на основе других средств.
  • Переписать только важные части на C++, но без /CLI.
  • Найти обфускатор для C++/CLI. Хотя мне такие не попадались, это не значит, что их нет.
  • Забить. Оно вам надо?
1
 Аватар для Bogradan
4 / 3 / 1
Регистрация: 22.03.2016
Сообщений: 279
31.01.2025, 15:12  [ТС]
Я просто хочу товарный вид придать и всё. Ну, может мне это и не нужно. Я просто хочу понять что дальше делать чтобы для пользователя готовый вид программе придать. Что делать для этого? Я же не буду visual studio проект выставлять, должно быть как-то для пользователей.
0
Эксперт .NET
 Аватар для Rius
11420 / 7298 / 1617
Регистрация: 25.05.2015
Сообщений: 22,072
Записей в блоге: 14
31.01.2025, 15:19
Лучший ответ Сообщение было отмечено Bogradan как решение

Решение

Обфускация нужна, если хотите усложнить пользователю просмотр исходного кода.
Для работы это не требуется.

Для пользователя нужны:
  • Установщик.
  • Переносная версия без установки (т.н. portable ) .
  • Справка (в комплекте или онлайн на сайте).
  • Сайт, где опубликована программа:
    • Зачем оно вообще надо.
    • Описание фич.
    • Скриншоты и демонстрации.
    • Чем лучше конкурентов.
    • История версий.
    • Где скачать или купить.
    • Контакты разработчика, издателя.
    • Юридическая информация, если есть.
  • Обновлятор, если часто обновляется.
1
 Аватар для Bogradan
4 / 3 / 1
Регистрация: 22.03.2016
Сообщений: 279
31.01.2025, 16:15  [ТС]
Понятно, спасибо за ответы. Вы написали:"Хотя единственный надёжный способ защитить - не давать физический доступ к файлам программы пользователям." Можете уточнить или пример сказать как это делается?
0
Эксперт .NET
 Аватар для Rius
11420 / 7298 / 1617
Регистрация: 25.05.2015
Сообщений: 22,072
Записей в блоге: 14
31.01.2025, 16:16
Веб-приложение.
Код выполняется на сервере и пользователям не доступен, они видят только веб-интерфейс.
Можно даже скопировать файлы, те, что доступны браузеру, но рабочее приложение из них не получить, так как на сервере ещё есть backend, выполняющий всё важное.
0
 Аватар для Bogradan
4 / 3 / 1
Регистрация: 22.03.2016
Сообщений: 279
01.02.2025, 11:28  [ТС]
Так ведь Visual Studio же и так выдаёт в папке Release готовую программу без внутреннего кода. Там только файл формата ".pdb", ".metagen' и сам ".exe" она же самим VS компилируется в готовый вид без возможности открытия кем попало. Или я чего-то не понимаю.
0
Эксперт .NET
 Аватар для Rius
11420 / 7298 / 1617
Регистрация: 25.05.2015
Сообщений: 22,072
Записей в блоге: 14
01.02.2025, 12:06
Не понимаете.
В Net программу можно декомпилировать.
Возьмите получаемый exe или dll и засуньте в программу ILSpy.
Я думал, вы об этом спрашиваете.

Добавлено через 56 секунд
В таком случае, к перечисленным выше пунктам стоит добавить, что ещё исходники выкладывают, например, на гитхаб, и ссылку приводят на сайте.
0
3054 / 3013 / 553
Регистрация: 17.02.2019
Сообщений: 4,987
01.02.2025, 12:06
Цитата Сообщение от Bogradan Посмотреть сообщение
Release готовую программу без внутреннего кода.
Программкой ILSpy можно открыть проект и посмотреть что там
Как примерчик:
скрин
Как спрятать внутренний код у проекта по завершению?


А уже ответили
0
 Аватар для Bogradan
4 / 3 / 1
Регистрация: 22.03.2016
Сообщений: 279
02.02.2025, 04:33  [ТС]
Я так понял нужно скачивать обфускатор, это отдельные готовые программы каждая под свой язык программирования, и благодаря им можно получать свою же программу в зашифрованном виде.
0
Эксперт .NET
 Аватар для Rius
11420 / 7298 / 1617
Регистрация: 25.05.2015
Сообщений: 22,072
Записей в блоге: 14
02.02.2025, 09:38
Bogradan,
Вы написали программу и хотите её оформить прилично?
Или
Написали офигенно сложный уникальный алгоритм, решающий ранее не решаемую задачу, и хотите продавать программу, но так, чтобы они не могли вытащить/исправить исходники и получить её бесплатно?
0
 Аватар для Bogradan
4 / 3 / 1
Регистрация: 22.03.2016
Сообщений: 279
02.02.2025, 10:48  [ТС]
Чтобы программист не мог просто так скопировать мою программу без взлома.
0
Эксперт .NET
 Аватар для Rius
11420 / 7298 / 1617
Регистрация: 25.05.2015
Сообщений: 22,072
Записей в блоге: 14
02.02.2025, 10:50
А вы уверены, что там что-то нужно скрывать? Обычно такие вопросы задают те, кому не нужно.

Способы выше.
0
Модератор
Эксперт Java
 Аватар для alecss131
2744 / 1239 / 391
Регистрация: 11.08.2017
Сообщений: 3,851
Записей в блоге: 2
02.02.2025, 11:27
Цитата Сообщение от Bogradan Посмотреть сообщение
Чтобы программист не мог просто так скопировать мою программу без взлома.
Даже на компилируемых языках по типу С++ это далеко не тривиальная задача, не говоря уже про C# где исходники достать не проблема (и они почти без правок собираются).
Самый надежный вариант как было сказано это
Цитата Сообщение от Rius Посмотреть сообщение
Веб-приложение.
Все остальное ломается, вопрос времени популярности и необходимости

Если же цель скрыть только исходники, то как было написано
Цитата Сообщение от Rius Посмотреть сообщение
Переписать всё на основе других средств.
Переписать только важные части на C++, но без /CLI.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.02.2025, 11:27
Помогаю со студенческими работами здесь

Код способствующий завершению или продолжению программы
Написал код. Нужно сделать так, чтобы в конце кода предлагалось продолжить работу (создавать новые массивы) или же завершить работу кода....

Спрятать код
Здравствуйте. Создал сайт. Для управляющих элементов написал скрипт на vbs. Хочу, что бы мой скрипт никто не видел. Но любой, зайдя на...

Спрятать код
Как сделать чтоб id посетителя перешедший с вк или уже авторизирован вк на сайт заносилось в базу но при этом сам посетитель в этом не...

Спрятать код
Подскажите, как можно спрятать такой код: const pass='1234'; var pas: Integer; f:TextFile; A: Array of Integer; begin ...

Спрятать стандартный реквизит Код
Здравствуйте. Интересует возможно ли убрать вывод стандартного реквизита Код при отображении справочника когда пользователь просматривает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
JavaScript: Управление памятью и улучшение производительности
run.dev 29.03.2025
В отличие от низкоуровневых языков программирования, JavaScript не требует ручного выделения и освобождения памяти. Здесь работает автоматический сборщик мусора, который определяет, какие объекты. . .
Мультитенантная архитектура со SpringBoot и PostgreSQL
ArchitectMsa 29.03.2025
SaaS-приложения редко обслуживают одного клиента и обычно они должны поддерживать множество организаций, каждая из которых работает в своём изолированном пространстве. Мультитенантная архитектура. . .
std::span в C++: Производительность и лучшие практики
NullReferenced 28.03.2025
std::span — одно из самых недооценённых нововведений стандарта C++20, которое радикально меняет подход к работе с непрерывными последовательностями данных. По сути, это невладеющее представление. . .
Многопоточность в C#: Threadpool
UnmanagedCoder 28.03.2025
Пул потоков в C# — это коллекция заранее созданных и готовых к использованию потоков, которые находятся в распоряжении приложения. Вместо того чтобы создавать и уничтожать потоки для каждой небольшой. . .
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
Взаимодействие Python с REST API
py-thonny 27.03.2025
REST API - это архитектурный стиль взаимодействия компонентов распределённого приложения в сети. Python располагает функциональным набором инструментов для работы с REST API и основная библиотека для. . .
sshd restrictions, ssh access limitations
jigi33 26.03.2025
sshd restrictions | ssh access limitations рестрикции доступа на сервер sshd статья: https:/ / www. golinuxcloud. com/ restrict-allow-ssh-certain-users-groups-rhel
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточность в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер