12-05-2010 04:16 AM
Hi Rafi,
I've been having actually this same issue "Couldn't find DLL entry point XXXX in XXX.dll - Error 453". Maybe with your experience you would be able to help me.
Basically what I am trying to do is to reverse - engineer the communication parameters and steps between an proprietary application and an FTDI device (connected on the USB port of the PC). This application uses the FT2XX.dll to allow configuration of the port settings, write data, read status etc of the FTDI chip. FTDI provides the Labview VIs that access this dll. So I downloaded this set of functions thinking in writing a Wrapper DLL in Labview, but modifying each VI, so that I can at least trace the parameters and calling functions order.
So, I created this wrapper DLL fine, through which I can call the functions in LV without a problem. After this, I put the original aside, being replaced by this new one (with the same file name etc). When I run the application that error (453) pops up (with the function FT_Get_Status). I tried changing to "Standard Calling" conventions, buat t still did not work.
First of all, is that a feasible approach to debug the comm? Should this hypothetically work? If yes, what am I missing?
Thansk for your time.
Edgar
12-06-2010 05:09 PM
Hi Edgar,
What do you mean by "put the original aside" are you referring to the FT2XX.dll? Just slightly confused as to which files are being created and replaced.
Thank you!
12-06-2010 05:13 PM
Hi Christopher,
I meant that I place the original ftd2xx.dll into a different folder, and copied the wrapper DLL (with the same name) in the folder of the application.
So the application doesn't know he's talking to the wrapper, instead of the original dll.
Thanks
Edgar Charry
12-07-2010 09:52 AM
Hi Edgar,
So let me verify, you are making a wrapper DLL that is calling into the ftd2xx.dll, but you're replacing the ftd2xx.dll by copying your wrapper DLL in place of the original.
If so, then it kind of makes since your new dll is giving an error since it is referencing the ftd2xx.dll where you just put your wrapper dll. Basically, it is trying to call itself. Perhaps build the wrapper around the ftd2xx.dll that is already in a different directory. This way the dll doesn't call itself and is calling the original ftd2xx.dll in a different location.
Hope this helps!
12-07-2010 11:04 PM
To go a step further, if your "debug" wrapper DLL has the same name as the DLL you are trying to call, you should probably not just move that DLL but actually rename it. I don't know an easy way to guarantee that you won't have path issues and Windows isn't always friendly about loading two DLLs with the same name into the same process.