Я думаю, что Вы могли бы найти интересным статья "Using Templates for Reflection in C ++" Dominic Filion. Это находятся в разделе 1.4 из Игровые Драгоценные камни Программирования 5 . К сожалению, я не имею своей копии со мной, но ищу ее, потому что я думаю, что она объясняет, что Вы просите.
Если вы настроены делать это самостоятельно, вы можете отслеживать установку среды выполнения Crystal Reports, чтобы увидеть, какие файлы / записи реестра / настройки она создает / изменяет. Кроме того, вы можете декомпилировать msi или загрузить и декомпилировать файл преобразования mst из Crystal Reports. Как только вы поймете, что он делает, напишите что-нибудь, чтобы сделать это самостоятельно.
Ненавижу сообщать плохие новости, но Crystal Reports для Visual Studio .NET не предназначен для развертывания в один клик. Crystal Reports - это собственное приложение, и сборки, которые вы используете для работы с отчетом, зависят от многих библиотек, отличных от .NET.
Множество COM-объектов, требующих регистрации, поддерживают библиотеки DLL, которые необходимо установить ... Информация о лицензировании, которая необходимо где-то разместить (Crystal Reports всегда уделял большое внимание лицензированию).
Теоретически, если ваше приложение работает с полным доверием, вы можете отслеживать установку Crystal Reports для среды выполнения .NET и дублировать ее в C #, но это большая работа, и она будет в лучшем случае ненадежной.
К сожалению, окончательный ответ - вы не можете.
Вы можете проверить Active Reports или некоторые другие решения для создания отчетов на чистом .NET.
Я почти уверен, что существует распространяемый пакет библиотек, который поставляется с окончательной версией Crystal Reports, когда вы его покупаете (не уверен, поставляется ли этот пакет с версией Visual Studio).
Я бы предоставил отдельную ссылку на распространяемый компонент Crystal на сайте установки и встроил проверку в приложении ClickOnce на наличие файлов Crystal.