I've been able to figure it out... finally. (CR experts...please correct me if I've missed details or gotten them wrong)
The fact that Business Objects was purchased by SAP in 2007 was a major roadblock to the answer. The vast majority of forum links point to the old Business Objects website, and are no longer available (SAP has decided to unhelpfully point 90% of these to their home page). This vastly reduced the helpfulness of such posts.
The first source of my confusion was that the version of Crystal Reports that I was dealing with was Crystal Reports BASIC 2008. This is the version bundled with Visual Studio 2008. Versions 11 and 12 are standalone and were NOT what I was looking for.
I had tried using MSMs (packaged DLLs) and msi (runtime installer) for Crystal Reports 2008 (the standalone version) and this is why it didn't work. I had also tried bundling "Crystal Reports" with the installation by using Prerequisites in my setup program. No luck.
- I had first tried moving the DLLs from C:\Program Files\Common Files\Business Objects\2.7\Managed to the BIN directory of my application (or told VS2008 to include them in the bin directory at compile time). It then couldn't find crystaldecisions.reportappserver.commlayer, and no amount of copying and pasting DLLs could fix this.
- I then navigated the Global Assembly Cache (c:\WINDOWS\assembly) and noticed that on my development machine, the DLLs were available in the correct version, but were not on the client machine (copying them to the bin folder via DOS gave a version/licensing error).
- I then found a hard-to-find zip file that contained the version I needed - but it was the bundle for VS2005! I ended up using the msm file located in cr_net_2005_mergemodules_mlb_x86.zip. I also changed my compilation option from "Any CPU" to "x86". Not sure if this helped as well, but it works now.
So that was my ordeal. Hopefully this helps someone else!