Программное обеспечение, как правило, не содержит автоматически, так как оно обычно (в зависимости от конструкции системы) записывает данные в пути системы и пользователя, в реестр (для регистрации некоторых функций в текущей системе), во временный путь и т.д.
Некоторое программное обеспечение можно сделать переносимым, перенаправляя эти данные по временному пути или по пути программы, но это широко зависит от дизайна самой программы, если это возможно или нет.
Поэтому, когда вы копируете папку Office, вы пропускаете много данных, записанных в другом месте, поэтому не получится просто скопировать эту папку на другой компьютер.
Но при копировании данных у вас нет этой проблемы, если пользователь может прочитать данные, он может скопировать их либо с помощью системного файлового менеджера, либо с помощью множества других хитростей, даже если вы попытаетесь сделать это намеренно сложным - вы можете отключить просмотр (то есть доступ с помощью обслуживание терминала только для определенной программы), отключение USB-портов, использование данных, связанных в других местах и т. д., поскольку каждый метод защиты имеет свои недостатки.
Самый экстремальный способ предоставления данных без возможности их копирования - использование удаленного уровня представления, такого как веб-интерфейс веб-сайта или веб-приложение, для отображения данных аутентифицированным пользователям, но в любом случае пользователь может записывать данные - даже записывать путем записи, используя некоторую автоматизацию - и вам все равно нужно тщательно проверить безопасность вашего решения (наиболее очевидная вещь - атаки с использованием SQL-инъекций в вашу базу данных)
Суть в том, что когда пользователь может читать данные, вы не можете быть очень эффективными в том, чтобы помешать ему развернуть решение для их экспорта - лучшее, что вы можете сделать, это 1) быть избирательным в отношении того, кто имеет доступ к данным, и 2) отслеживать их Запросы данных для выявления возможных злоупотреблений.