In general, we will reference multiple DLLs in our project, which may be written by Delphi2005, or it may be written in other languages. If it is written in other languages, the situation is relatively simple, as long as the required DLL is also copied, but if this DLL is written by Delphi, there is a matter of attention:
At the first point, as I mentioned earlier, the official recommendation from Borland is to use the BPK (package) syntax to replace the traditional lib grammar to develop .NET's assembly DLL, the reason is also mentioned earlier, and, Do not use the package to develop a DLL, the developed DLL cannot be used in Delphi's own project.
Second, because the package is used, you need to pay attention to it. In order to avoid conflicts, in the Require section in the package, it is a reference to borland.delphi.dll, but this DLL is in the global program-level cache, Therefore, by default, it is not copied to the project's folder, so if only the project's EXE and DLL copies to other and it, what 0X *** address error will occur, even I can't come out, I can't make it wrong. I first released my procedure to others' machines, which was got to be dizzy by this problem. I didn't know what happened. I finally found it.