4#include "qplatformdefs.h"
10#include <private/qfilesystementry_p.h>
31bool QLibraryPrivate::load_sys()
34 UINT oldmode = SetErrorMode(SEM_FAILCRITICALERRORS|SEM_NOOPENFILEERRORBOX);
49 if (pluginState != IsAPlugin)
50 attempts.append(
fileName +
".dll"_L1);
55 if (fsEntry.isAbsolute())
62 for (
const QString &attempt :
std::as_const(attempts)) {
67 if (hnd || ::GetLastError() != ERROR_MOD_NOT_FOUND)
71 SetErrorMode(oldmode);
86 if (
dir.path() ==
"."_L1)
94 bool ok = GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_PIN |
95 GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS,
96 reinterpret_cast<const wchar_t *
>(hnd),
103 return (
pHnd !=
nullptr);
106bool QLibraryPrivate::unload_sys()
117QFunctionPointer QLibraryPrivate::resolve_sys(
const char *symbol)
120 return QFunctionPointer(
address);
Type loadAcquire() const noexcept
void storeRelaxed(Type newValue) noexcept
static QString toNativeSeparators(const QString &pathName)
QString qualifiedFileName
QAtomicPointer< std::remove_pointer< Handle >::type > pHnd
static QStringList suffixes_sys(const QString &fullVersion)
const QString fullVersion
static QStringList prefixes_sys()
QLibrary::LoadHints loadHints() const
\macro QT_RESTRICTED_CAST_FROM_ASCII
qsizetype lastIndexOf(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
void clear()
Clears the contents of the string and makes it null.
QString arg(qlonglong a, int fieldwidth=0, int base=10, QChar fillChar=u' ') const
static QString fromWCharArray(const wchar_t *string, qsizetype size=-1)
QString & remove(qsizetype i, qsizetype len)
Removes n characters from the string, starting at the given position index, and returns a reference t...
Combined button and popup list for selecting options.
QString qt_error_string(int code)
Q_DECL_COLD_FUNCTION Q_CORE_EXPORT QString qt_error_string(int errorCode=-1)
GLuint GLuint64EXT address
#define QStringLiteral(str)