Libraries for creating PowerBuilder Extensions using PowerBuilder Native Interface (PBNI).
- Informaticon Exception Framework
- Microsoft Visual C++
If you are creating a new project, you can use this template repository. You can find some (partially outdated) examples over there.
To check how to create classes and export functions, you can also check out one of these repositories (only available to Informaticon employees):
- lib.pbni.base.tse
- lib.pbni.base.string-utils
- lib.pbni.base.pepper
- lib.pbni.base.mail-client
- lib.pbni.base.libcurl
- lib.pbni.base.serializer
- lib.pbni.base.graphics-utils
Now works for x64 Builds. Things to consider:
longptr
isn't natively supported by PBNI. But the PBNI Framework offers aFakePBLongPtr
, which is just aPBLong
in Win32 Builds andPBLonglong
in x64 Builds.- The Editor doesn't yet support x64. So during development you need to use the Win32 Version of the PBNI Dll's, then you only use the x64 Builds when you ship your 64-bit Application.
This repository uses Doxygen and MKDocs for documentation. You may need to have the following software to build/view the documentation:
- Doxygen (on Windows:
choco install doxygen
) - Doxybook2 (on Windows:
choco install doxybook2
) - MkDocs (install it with
pip install mkdocs
) - On Windows you have to manually install make (
choco install make
)
To generate and view the documentation locally, run make
and make serve
.
This will create and open a Web documentation on localhost:8000
.
Tip
You can also check out the pre-compiled documentation on Github instead: https://github.com/informaticon/lib.cpp.base.pbni-framework/blob/main/docs/index.md.
If you want regenerate the documentation for Github, you have to run make doxygen
and make doxybook-git
before committing.
This is a cpp library, you only have to build it for testing purposes, otherwise you use it in your C++ project (see PBNI Template).
- PowerBuilder PBNI Library
- CMake (direct download or via choco)
-
- Microsoft Visual C++ Build Tools (e.g. from MS Visual Studio 2022 Community Edition)
- vcpkg (to get these libraries):
- boost-stacktrace
- boost-utility
- boost-multiprecision
Build the test dll by running
conan build .\test\cpp\ -pr pbni_x86 -b missing -o *:pb_version=22.0
Run tests by doing
make -C test/pb tests
Please read CONTRIBUTING.md before sending a pull request.