The following tables list the files included in runtime, and which feature each file is required to support. For example, PBVM.dll, PBSHR.dll, LIBJCC.DLL, and LIBJUTILS.DLL are required for all deployed applications, pbpdf.dll is required only when your application allows to save reports as PDF files using the NativePDF! method.
Database connections
The runtime files needed to enable database connections are listed separately in Making the data source available.
Core runtime files
The following table lists the core InfoMaker runtime files.
Name |
Required for |
---|---|
pbvm.dll |
All |
pbshr.dll |
All. pbvm.dll has dependencies on this file. |
libjcc.dll |
All. pbvm.dll has dependencies on this file. |
libsybunic.dll |
All. pbvm.dll has dependencies on this file. |
libjutils.dll |
All. libjcc.dll has dependencies on this file. |
libjtml.dll |
All. libjcc.dll has dependencies on this file. |
nlwnsck.dll |
All. libjcc.dll has dependencies on this file. |
pbuis.dll |
All. pbvm.dll has dependencies on this file. |
pbdwe.dll |
Reports and forms |
pbresource.dll |
InfoMaker resource file |
Microsoft files
When you deploy the core InfoMaker runtime files, you must also deploy the msvcr100.dll and msvcp100.dll Microsoft Visual C++ runtime libraries and the Microsoft .NET Active Template Library (ATL) module atl100.dll, if they are not present on the user's computer. The InfoMaker runtime files have a runtime dependency on these files.
Additional runtime files
The following table lists additional runtime files that your application might not require. For example, pbvm.dll is required for all deployed applications, but pbrtc.dll and its associated runtime files are required only if your application uses RichText objects.
Name |
Required for |
---|---|
pbdpl.dll |
Data pipeline support |
PBDWExcel12Interop.dll, Sybase.PowerBuilder.DataWindow.Excel12.dll |
Excel format support |
tx30.dll, tx30_css.dll, tx30_doc.dll, tx30_dox.dll, tx30_htm.dll, tx30_ic.dll, tx30_obj.dll, tx30_pdf.dll, tx30_rtf.dll, tx30_tls.dll, tx30_wnd.dll, tx30_xlx.dll, tx30_xml.dll, tx4ole30.ocx, mfc120u.dll, msvcr120.dll, pbrtc.dll, pbtxtext.dll |
TX Text Control ActiveX |
PBXerces.dll, xerces-c.dll |
XML Web report support and XML support for reports |
pbtra.dll, pbtrs.dll |
Database connection tracing |
pbpdf.dll, pdflib.dll |
Saving reports as PDF files using the NativePDF! method |
Installed path
%systemdrive%\Program Files (x86)\Appeon\Common\PowerBuilder\Runtime [version].
The Sybase DLLs are installed to %AppeonInstallPath%\InfoMaker [version]\DotNET\bin.
The Sybase.PowerBuilder.DataWindow.Excel12.dll file will be automatically installed to the Windows GAC folder, for example, C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Sybase.PowerBuilder.DataWindow.Excel12, if you run the MSM or MSI package. However, if you manually copy runtime DLLs to the client (instead of using the MSM or MSI package), make sure to copy the Sybase.PowerBuilder.DataWindow.Excel12.dll file to the same directory as the application executable, as this file is a C# assembly DLL and cannot be loaded through the environment variable.
Deployment path
Same directory as the application, or in a directory on the system path.
Localized runtime files
Localized runtime files are provided for French, German, Italian, Spanish, Dutch, Danish, Norwegian, and Swedish. These files are usually available shortly after the general release of a new version of InfoMaker.
The localized runtime files let you deploy InfoMaker applications with standard runtime dialog boxes in the local language. They handle language-specific data when the application runs, including:
-
DayName function manipulation
The DayName function returns a name in the language of the runtime files available on the machine where the application is run.
-
DateTime manipulation
When you use the String function to format a date and the month is displayed as text (for example, the display format includes "mmm"), the month is in the language of the runtime files available when the application is run.
-
Error messages
InfoMaker error messages are translated into the language of the runtime files.
Starting from version 2019 R3, the InfoMaker runtime files are provided as an installable independent product in the InfoMaker Installer. When you run the InfoMaker Installer, the latest Runtime and IDE can be selected and installed respectively; and you will need to install Runtime before IDE if no runtime has been installed on the machine, because IDE requires a runtime to start.
To install the runtime files:
-
Run the InfoMaker Installer.
-
Click Install/Modify and then select PowerBuilder Runtime in the Components tab and then click Install. "PowerBuilder Runtime" is used by both PowerBuilder and InfoMaker.
Multiple versions of "PowerBuilder Runtime" can be installed on the same machine.
"PowerBuilder Runtime" is always installed to %systemdrive%\Program Files (x86)\Appeon\Common\PowerBuilder\Runtime [version], for example, C:\Program Files (x86)\Appeon\Common\PowerBuilder\Runtime 21.0.0.1215; and its version number and installation directory are recorded in the system registry path:
For 32-bit apps in 32-bit OS: HKEY_LOCAL_MACHINE\SOFTWARE\Sybase\PowerBuilder Runtime
For 32-bit apps in 64-bit OS: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Sybase\PowerBuilder Runtime
If there are multiple versions of runtime installed, there will be multiple "Runtime [version]" installation folders and multiple registry entries.
Note
Pay attention to the following major changes caused by the separation of Runtime from IDE:
-
All runtime DLLs that used to be installed to the "Shared" folder are now separately installed to the "Runtime [version]" folder and the "IDE" folder instead, in order to physically separate Runtime files from IDE files.
"Runtime [version]" folder contains the files required at runtime. Example location: C:\Program Files (x86)\Appeon\Common\PowerBuilder\Runtime 22.0.0.1234;
"IDE" folder contains the support files required by IDE. Example location: C:\Program Files (x86)\Appeon\InfoMaker 22.0\IDE;
-
The runtime file location is no longer recorded in the PATH environment variable; it is recorded in the system registry instead.
-
The runtime file (including .dll, .ini, .pbx, .pbd etc.) is renamed so that the version number indicator (such as "170", "190") that used to be appended to the file name is removed, for example, pbvm190.dll is renamed as pbvm.dll.
If you want to uninstall a runtime version which is currently used by the IDE, you will be prompted to confirm the uninstall; and if you continue to uninstall, the IDE will automatically find the best matching version (normally the latest) available on the machine, or will fail to work if no compatible runtime version is found.
When there are more than one version of runtime installed, you can determine which version of runtime will be loaded by the InfoMaker IDE or by the application executable.
Selecting a version of runtime for the InfoMaker IDE
By default, the latest runtime that is installed will be used by the InfoMaker IDE. If a newer version of runtime is installed, you will be prompted to switch to the newer version and compile the source code with the newer version when you open InfoMaker IDE. Or you can manually change to use a different runtime for the IDE. The runtime will be used by the IDE to run, debug, compile, and build the application.
To select a runtime for the InfoMaker IDE:
-
Select Tools>System Options.
-
On the General tab, select a version from the PowerBuilder Runtime Version list.
-
Restart InfoMaker IDE for the change to take effect.
If more than one instances of IDE are running, make sure to restart all instances.
The InfoMaker IDE will load the runtime files according to the specified version. If the specified version of runtime failed to load, IDE will load the latest version of runtime that is installed and compatible with the IDE.
InfoMaker IDE can work with runtime at the same major versions, for example:
IDE (including MRs) |
Supported Runtime (including MRs) |
Unsupported Runtime |
---|---|---|
2019 R3 |
2019 R3 |
2021 or later |
2021 |
2019 R3, 2021 |
2022 or later |
2022 |
2022 |
2019 R3, 2021, 2022 R2 or later |
2022 R2 |
2022, 2022 R2 |
2019 R3, 2021, 2022 R3 or later |
2022 R3 |
2022*, 2022 R2*, 2022 R3 |
2019 R3, 2021, 2023 or later |
* To load 2022 or 2022 R2 Runtime in 2022 R3 IDE, make sure your PBL involves no new features of 2022 R3.
Selecting a version of runtime for the application executable
The application executable will by default load the runtime files under the same directory as the executable file. If any runtime file is missing under the same directory, it will load the runtime file in the path specified in the environment variable (if any).
To configure which version of runtime files will be used by the application executable,
-
Specify the version of runtime in the configuration file (executable-name.xml).
The configuration file is automatically created by default using the same name under the same directory as the application executable, for example, if the application executable is app1.exe, then the configuration file is app1.xml.
You can open the configuration file in an editor and specify the runtime path and version that will be loaded by the application executable.
If the runtime files are placed in the same directory as the application executable, you could specify a relative path.
For example, if the "Runtime" folder is in the same folder as the executable file:
<RuntimePath>\Runtime\Runtime 22.0.0.1234</RuntimePath>
or if the "Runtime" folder is placed next to the folder which contains the executable file:
<RuntimePath>..\Runtime\Runtime 22.0.0.1234</RuntimePath>
-
Make sure to keep the configuration file in the same folder as the application executable when you distribute the application package.
Note
If you want to use the configuration file to determine the runtime files, make sure no runtime files exist under the same directory as the executable file, otherwise, these runtime files will be loaded before the ones specified in the configuration file.
Make sure you have correctly specified the runtime path in the configuration file, otherwise, the application will throw an error if it failed to load the runtime file. If you do not want to use the configuration file, make sure to remove it, then the application will search for the runtime DLLs in the following sequence:
-
the runtime version used during the application compilation
-
the best matching version recorded in the system registry (normally the latest compatible version; and the application will not look for a version older than the one used for compilation)
-
the runtime path listed in the PATH environment variable
Environment variable
The location of runtime files is no longer listed in the environment variable starting from version 2019 R3; instead it is recorded in the system registry by default. But you can add the location to the PATH environment variable by yourself.
The application executable can run against the runtime files at the same major versions, for example:
Application executable compiled with Runtime |
Can run with Runtime |
Cannot run with Runtime |
---|---|---|
2019 R3 |
2019 R3 |
2019 R2 or earlier, 2021 or later |
2021 |
2021 |
2019 R3 or earlier, 2022 or later |
2022 |
2022 |
2021 or earlier, 2023 or later |
2022 R2 |
2022 R2 |
2022 or earlier, 2023 or later |
2022 R3 |
2022 R3 |
2022 R2 or earlier, 2023 or later |