C++
VM Detection on the Windows platform when linking with the static libraries
VM detection is possible on Windows OS. Linking to the LicenseSpring library can be done statically or dynamically. The LicenseSpring library loads LicenseSpringVMD.dll at run time when detecting for VM. LicenseSpringVMD.dll cannot be used independently — only within the LicenseSpring SDK.
When using C++, there is a large number of files. Is it possible somehow to decrease the number of files to a small number?
To reduce the number of dynamic libraries your application requires, you can statically link the libraries into your executable, incorporating their code directly into the application at compile time. This results in a standalone executable that does not depend on external library files at runtime.
What SSL certificates does the SDK use?
Check out the Extended options document for more information about setting up native TLS for curl.
The C++ SDK uses multiple fallbacks to look up valid SSL certificates for reaching the License API. Certificates are checked in the following order:
system certificates
SDK embedded certificates
certificates from a bundle file
Embedded certificates
The SDK contains a list of root certificates that are included in Mozilla products. See https://wiki.mozilla.org/CA/Included_Certificates.
Certificate bundle file
The SDK also contains a standalone file containing the same certificates that you can bundle with your binary.
On Windows, the SDK searches for curl-ca-bundle.crt and ca-certificates.crt files:
using
SearchPath, see https://learn.microsoft.com/en-us/windows/win32/api/processenv/nf-processenv-searchpathain the
certificatesfolder placed in the executable directory
On Linux and macOS, the SDK searches for the ca-certificates.crt file:
in the executable directory
in the
certificatesdirectory placed in the executable directoryin the current working directory
in the
certificatesdirectory placed in the current working directory
If that fails, the SDK also tries to find a certificate file commonly found on different Linux and BSD distributions:
/etc/ssl/certs/ca-certificates.crt/etc/pki/tls/certs/ca-bundle.txt/etc/pki/tls/cacert.pemetc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem/etc/ssl/cert.pem/usr/local/etc/ssl/cert.pem/usr/local/share/certs/ca-root-nss.crt/etc/openssl/certs/ca-certificates.crt/usr/local/etc/openssl/cert.pem
Was this helpful?