My project is dynamic linked to PackageCommon.bpl. Distributed My project.exe wants PackageCommon.EXE on runtime but when i rename .bpl to .exe it is works fine. What is the reason?
I'm running Delphi XE3 on Windows 7.
Related
I'm trying to modernize a legacy Delphi project (probably from Delphi 7). I'm using Delphi 10.3.3 now.
When I build the project, Delphi creates the .exe file in the project directory. But I want the .exe file to be created in Win32\Release or Win32\Debug folder. How can I change it?
The help says "You can use GetIt Package Manager to discover and install additional third-party software onto RAD Studio." but Indy is not available in GetIt
I dowloaded newest files from Github. I run the Fullc_Rio.bat file then opened Indy260.groupproj but when compiling I got:
[Fatal Error] Cannot compile package 'IndySystem260' which is currently required by Delphi 10.3.
Indy comes pre-installed in every IDE version, and has been for a very long time.
However, if you want to install a newer version than what Embarcadero ships, you have to first remove the pre-installed version. This is mentioned in Indy's installation notes:
All package names are followed by X0 (where X0 is your Delphi/C++Builder/RAD Studio product version).
...
If Indy 10 is already installed, it needs to be uninstalled first:
Remove the pre-compiled design-time BPL files - dclIndyCoreX0.bpl and dclIndyProtocolsX0.bpl - from the IDE via the "Components > Install Packages" dialog.
Delete all of the existing binaries - IndySystemX0.*, (dcl)IndyCoreX0.*, and (dcl)IndyProtocolsX0.*
Delete any Indy 10 source files, if present.
Be sure to check for files in the IDE's \bin, \lib, and \source folders, \Indy subfolders, and OS system folders.
...
You can either:
Use the command-line FULLD#.BAT script that corresponds to your Delphi version.
Open the individual DPK files in the IDE and compile them, in the following order:
IndySystemX0.dpk (in Lib\System)
IndyCoreX0.dpk (in Lib\Core)
IndyProtocolsX0.dpk (in Lib\Protocols)
dclIndyCoreX0.dpk (in Lib\Core)
dclIndyProtocolsX0.dpk (in Lib\Protocols)
...
Refer to the installation notes for full instructions.
Indy is already installed in Rio during the product installation. It's used in parts of the RTL. It's already installed in all versions of Delphi.
If you open a new VCL or FMX application, click on a form to activate the designer, and go to the component palette, and enter TId in the search box, you can find the Indy related component pages in the palette.
I'm Using Delphi Xe7 with Dbexpress in Windows 32 . After Deploy
The program runs on Windows 64. This problem appears
Unable to load dbxmss.dll (ErrorCode 193). It may be missing from the system Path.
But Does not appear in Windows 32
There are two files named dbxmss.dll located in the redist\win32 and redist\win64 subfolder of your XE7 installation. You have to deploy the one suited for your exe, depending you compiled a 32-bit application or a 64-bit application. It doesn't matter whether the target system is 64-bit or not (despite that you cannot run a 64-bit application on a 32-bit OS).
Recently i got a chance to work on delphi 7. I just created a sample application which display a welcome message and that exe is working fine on Delphi machine. if i moved that exe to non-delphi machine(where delphi is not installed), it is throwing error as "The program can't start beause rtl70.bpl is missing from your computer. Try reinstalling the program to fix the problem".
if i follow the same process with Delphi 5, it is working fine.
You have built the program to rely on runtime packages. That means that each machine that needs to run the program needs to have the runtime packages available.
There are two solutions:
Distribute the runtime packages that you use alongside the executable.
Disable runtime packages and so build an executable that contains the runtime.
The runtime packages options are determined by settings specified in the project options.
Unless you have some compelling reason to use runtime packages, the second option is much simpler because it allows the executable file to stand alone, with no external dependencies.
I migrated all my components from one pc to another. On the old pc the Jedi JCL installer will correctly detect a Delphi XE2 installation and will show its tab, but on the new pc it does not (it only recognizes a Delphi 7 installation). Notice that on the new pc when I run the jcl install.bat it will use the Delphi XE2 compiler to create the installer exe.
What step can I do to have this sorted out?
The version of Jedi is the latest one at the moment that is 3.47
Problem solved by reinstalling Delphi XE2 (Full installation with registry). The problem was that I had copied the registry keys from my other pc into the new pc. The problematic key was the library key. For some reason the JCL installer did not like the paths in the library, most probably could not find the paths it expected.