You can not just include the dll's for crystal reports and get them to work. There are a lot more dll's and registry settings that need to be installed on the computer to get crystal reports to work. You are going to have to create a setup project and include the Crystal Report Merge Modules for the specific version of crystal you are targeting.
Creating a setup project with crystal reports merge modules
. This is an older article but the basic steps are the same, you just need to use the correct Crystal Reports Merge Modules
for the version you are using. For license key step you will use the license key for crystal reports installed on the other machine.
Certain older versions of crystal reports are only 32-bit, with no 64-bit version available. So you may need to specifically set your application to compile to x86 for your .net application. Else you will run into errors if you try to run crystal reports in a 64-bit operating system. Also older versions like crystal reports XI you will need to find the merge modules for service pack 5 to get crystal reports to run in Vista/Windows 7.
I usually create the installer in a separate setup project then the main setup project for our application for several reasons. The crystal reports adds about 80Mb to size of the installer at least for the version we use. Since it only has to be installed once we don't want our clients to have to download a large file when everything else is like 15Mb. Which means a faster download when they want to update. Crystal reports also takes a long time to install compared to our application and we don't want support to have to spend the extra time wanting for crystal to do its thing every time. This is better for support since not all our clients have IT and are tech savy and we have to install updates on multiple computers for them over GoToMeeting or other services like that.