PowerBuilder runtime files

List of runtime files

All PowerBuilder runtime DLL files are digitally signed (starting from PowerBuilder 2019 R2).

Database connectivity

Files required for database connectivity are listed separately in Database connections.

Core runtime files

The following table lists the core PowerBuilder runtime files.

Name

Required for

pbvm.dll

All.

pbshr.dll

All. pbvm.dll has dependencies on this file.

libjcc.dll (required in 32-bit only)

All. pbvm.dll has dependencies on this file.

libsybunic.dll (required in 32-bit only)

All. pbvm.dll has dependencies on this file.

libjutils.dll (required in 32-bit only)

All. libjcc.dll has dependencies on this file.

libjtml.dll (required in 32-bit only)

All. libjcc.dll has dependencies on this file.

nlwnsck.dll (required in 32-bit only)

All. libjcc.dll has dependencies on this file.

pbuis.dll

All. pbvm.dll has dependencies on this file.

pbdwr220.pbd (required in 32-bit only), pbdwe.dll

DataWindows and DataStores.

pbsysfunc.dll

System functions.

pbresource.dll

PowerBuilder resource file.

pbacc.dll, PBAccessibility.dll

UI accessibility and automation support (Section 508)

The UI accessibility and automation support (Section 508) can be turned on through the PowerBuilder initialization file. For more, see here.

pbtra.dll, pbtrs.dll

Database connection tracing

pbdpl.dll

Data pipeline support

pbcomrt.dll (required in 32-bit only)

COM/COM+ support.

pbcrypt.dll

Encryption and decryption support

AtlAuxiliary.dll

InkEdit and InkPicture support


Microsoft files

When you deploy the core PowerBuilder runtime files, you must also deploy the Microsoft Visual C++ runtime libraries, if they are not present on the user's computer. The PowerBuilder runtime files have a runtime dependency on these files. See Third-party components and deployment for more information.

  • For 32-bit: vcruntime140.dll, concrt140.dll, msvcp140.dll

  • For 64-bit: vcruntime140.dll, vcruntime140_1.dll, concrt140.dll, and msvcp140.dll

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 Rich Text controls or RichText DataWindow objects.

Name

Required for

pbhttpclient.dll

HTTPClient support

pboauth.dll

OAuth 2.0 support

pbrestclient.dll, pbhttpclient.dll, pboauth.dll, pbcompression.dll, pbjson.dll

RESTClient support

pbwebbrowser.dll and "pbcef" folder

WebBrowser 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

pbcompression.dll

Compression and extraction support (used by CompressorObject and ExtractorObject)

pbjson.dll

JSON support

PBDWExcel12Interop.dll, Sybase.PowerBuilder.DataWindow.Excel12.dll

MS Excel12 support

pbpdf.dll, pdflib.dll

NativePDF support (Saving DataWindows as PDF files using the NativePDF! method)

pdflib.dll, pbpdfbuilder.dll

PDFBuilder support

PBDOM.pbx

PB DOM

PBRibbonBar.dll (and its dependent DLLs: PBXerces.dll, xerces-c.dll, pbjson.dll)

RibbonBar support

pbtheme.dll, pbjson.dll, and "theme" folder

("theme" folder must be manually copied from the "%AppeonInstallPath%\PowerBuilder [version]\IDE" directory)

UI theme support

PBXerces.dll, xerces-c.dll

XML support (for DataWindows\DataStores and Web DataWindow)

PBDotNet.dll, PBDotNetInvoker.dll, PBDotNetCoreInvoker.dll, PBDotNetFrameworkInvoker.dll, Ijwhost.dll, pbdotnetinvoker.runtimeconfig.json

.NET assembly calls

pblab.ini

Label DataWindow presentation-style predefined formats

pbrtc.dll, PBMSText.dll

Microsoft RichEdit Control (64-bit) (Obsolete)


Installed path

%systemdrive%\Program Files (x86)\Appeon\Common\PowerBuilder\Runtime [version].

The Sybase DLLs are installed to %AppeonInstallPath%\PowerBuilder 22.0\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, in a directory on the system path, or in the App Path registry key.

Registry entries

See App Path registry key.

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 PowerBuilder. The localized runtime files let you deploy PowerBuilder applications with standard runtime dialog boxes in the local language. They handle language-specific data when the application runs.

For more information, see Localizing the product.

Installing PowerBuilder Runtime

Starting from version 2019 R3, the PowerBuilder runtime files are provided as an installable independent component in the PowerBuilder Installer. When you run the PowerBuilder 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 PowerBuilder Runtime:

  1. Run the PowerBuilder Installer.

  2. Click Install/Modify or Update and then select PowerBuilder Runtime in the Components tab and then click Install or Update.

    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 22.0.0.1234 ("22" indicates version 2022); and its version number and installation directory are recorded in the system registry path:

The 32-bit apps in 32-bit OS search for this registry: HKEY_LOCAL_MACHINE\SOFTWARE\Sybase\PowerBuilder Runtime

The 32-bit apps in 64-bit OS search for this registry: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Sybase\PowerBuilder Runtime

The 64-bit apps in 64-bit OS search for this registry: HKEY_LOCAL_MACHINE\SOFTWARE\Sybase\PowerBuilder Runtime

If there are multiple versions of "PowerBuilder 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\PowerBuilder 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 files (including .dll, .ini, .pbx, .pbd etc.) are 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 any external program has called the runtime file, you may need to change the code accordingly.

Download runtime files for 2017 R3, 2019, and 2019 R2

To help developers conveniently get the runtime files for versions earlier than 2019 R3, Appeon provides the runtime files as zip packages on the site: https://www.appeon.com/developers/get-help/knowledgebase-for-pb. You can download from here the runtime files for 2017 R3, 2019, and 2019 R2.

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.

Selecting a version of PowerBuilder Runtime

Selecting a version of PowerBuilder Runtime for the PowerBuilder IDE

Starting from version 2022, PowerBuilder IDE can only work with PowerBuilder Runtime at the same major versions, for example, IDE 2022 works only with Runtime 2022.

When there are more than one build (minor version) of PowerBuilder Runtime installed, you can determine which build of PowerBuilder Runtime will be loaded by the PowerBuilder IDE. By default, the latest PowerBuilder Runtime that is installed will be used by the PowerBuilder IDE. If a newer build of PowerBuilder Runtime is installed, you will be prompted to switch to the newer build and compile the PowerScripts with the newer build when you open PowerBuilder IDE. Or you can manually change to use a different PowerBuilder Runtime for the IDE. The PowerBuilder Runtime will be used by the IDE to run, debug, compile, and build the application.

To manually change a PowerBuilder Runtime for the PowerBuilder IDE:

  1. Select Tools>System Options.

  2. On the General tab, select a build from the Switch PowerBuilder Runtime Version list.

  3. Restart PowerBuilder IDE for the change to take effect.

    If more than one instances of IDE are running, make sure to restart all instances.

The PowerBuilder IDE will load the runtime files according to the specified build number. If the specified build of runtime failed to load, IDE will load the latest build of runtime that is installed and compatible with the IDE.

Carefully check the following table to find out which PowerBuilder Runtime is compatible with your PowerBuilder IDE.

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


Selecting a version of PowerBuilder Runtime for the application executable

The application executable can only run with PowerBuilder Runtime at the same major version. If there are more than one builds of PowerBuilder Runtime installed, you can determine which build of PowerBuilder Runtime will be loaded by the application executable.

The application executable in this section refers to the native C/S application compiled using Pcode only, excluding the application compiled using machine code and the application deployed by PowerClient.

If the application is compiled using machine code, follow instructions in Compiler basics to configure the runtime files.

If the application is deployed using PowerClient, it will not be able to select PowerBuilder Runtime (the runtime version used by the IDE will be used by the application by default).

Note

Applications deployed using PowerClient cannot switch the runtime version like the native C/S application. But developers can deploy the same application with different application names and with different runtime versions (the runtime version used by the IDE will be used for deployment, so developers can manually change the runtime version in the IDE before deployment), and then run the application using different names against the corresponding runtime version.

To configure which version of PowerBuilder Runtime will be used by the application executable,

  1. Specify the version of PowerBuilder 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. (However, this file will not be generated if the application is compiled using machine code.)

    By default, the configuration file contains the runtime path and version which is specified on the Run tab of the application project painter. You can open the configuration file in an editor and change the runtime path and version that will be loaded by the application executable.

    If the PowerBuilder 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>

    Note

    In the configuration file (executable-name.xml), you can only input one path and that path should point to the location of the runtime files; you cannot specify any other files or paths such as pb.ini (they should be deployed and distributed like before).

    Runtime files here refer to the files that are installed by the PowerBuilder Runtime component and required by the application at runtime.

  2. 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 (deleting the executable-name.xml file from the same folder as the application executable). Then the application will search for the runtime DLLs in the following sequence:

  1. the runtime version used during the application compilation

  2. 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)

  3. the runtime path listed in the PATH environment variable (if any)

Environment variable

The location of PowerBuilder Runtime 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 only run with PowerBuilder Runtime at the exact same version, 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