I have created a program in VC++ and in it I open a report I created in Crystal Reports V6, it does open no problem on my computer, but when other try to open it they have an error telling them that there is the dll Pdsodbc.dll that is missing.
I try to put that dll in the system, system32 and winnt\crystal directories but they still get the same message.
So I was wondering if there a way to make them open the report without having them to install crystal report on their computer, a reader could do the job but all I can find it is one for the higher version or even beter a way to make the file readable to all or maybe some code I can add to make it that way!!!
Thanks a lot for your time!
Christian
p.s. Sorry if my english do not sound good since it not my primary language!
There is a version of InstallShield... but at least when I used it, I had to tell it each of the files I wanted to install and each of the self-registering DLLs (ActiveX COM modules) to install and register.
I don't know how to deploy a VC++ program that uses Crystal Reports, but here is how I'd start:
I'd run my VC++ program in the debugger and watch the "Output screen" It shows a line like:
Loading c:\dir\prog.DLL ...
for each DLL that the program uses. This will include several system DLLs which you should not deploy, but there will be several CR-related DLLs that you will need to use.
Now, go to a different computer and copy your EXE file into a directory. Try to run it and you will get an error. Then copy each of the DLLs from that list into the same directory and try again... until it works or you have copied all of the DLLs.
If it never starts, or starts but fails when you try to generate the report, then it is possible that one of more of the DLLs is an ActiveX/COM module that needs to be registered. TO register a COM object manually, get to a Command prompt in the directory and type:
regsvr32 the_name_of_a_dll
You will problably need to manually register any DLLs that you brought into your project via the #import directory.
Once you find out which DLLs you need to copy and which (if any) need to be registered, I can provide help in how to use InstallShield to create a setup disk.
-- Dan