29 static int runDll(WId windowId,
const QString& libraryName,
const QByteArray& functionName,
30 const QString& arguments)
32 HMODULE libHandle = LoadLibraryW( (LPCWSTR)libraryName.utf16() );
35 typedef int (WINAPI *FunctionType)(HWND, HMODULE, LPCWSTR, int);
37 QString functionNamestr = QString(functionName);
39 = (FunctionType)GetProcAddressW( libHandle, functionNamestr.utf16() );
42 = (FunctionType)GetProcAddress( libHandle, functionName.constData() );
46 int result =
function((HWND)windowId, libHandle, (LPCWSTR)arguments.utf16(), SW_SHOW);
47 FreeLibrary(libHandle);
51 static int runDll(WId windowId,
const QString& libraryName,
const QByteArray& functionName,
52 const QByteArray& arguments)
54 HMODULE libHandle = LoadLibraryW( (LPCWSTR)libraryName.utf16() );
57 typedef int (WINAPI *FunctionType)(HWND, HMODULE, LPCSTR, int);
59 QString functionNamestr = QString(functionName);
61 = (FunctionType)GetProcAddressW( libHandle, functionNamestr.utf16() );
64 = (FunctionType)GetProcAddress( libHandle, functionName.constData() );
68 int result =
function((HWND)windowId, libHandle, (LPCSTR)arguments.constData(), SW_SHOW);
69 FreeLibrary(libHandle);
74 static int runDll(
QWidget* parent,
const QString& libraryName,
const QByteArray& functionName,
75 const QString& arguments)
77 return runDll(parent ? parent->winId() : 0, libraryName, functionName, arguments);
83 const QString& suggestedFileName,
const QByteArray& asn )
86 Q_UNUSED(suggestedFileName);
92 fnames += QDir::toNativeSeparators( url.
path() );
94 int result =
runDll( window,
95 QLatin1String(
"shell32.dll"),
97 fnames.join(QLatin1String(
" ")) );
static bool displayNativeOpenWithDialog(const KUrl::List &lst, QWidget *window, bool tempFiles, const QString &suggestedFileName, const QByteArray &asn)
KUrl url() const
Returns the url.
static int runDll(WId windowId, const QString &libraryName, const QByteArray &functionName, const QString &arguments)
QString path(AdjustPathOption trailing=LeaveTrailingSlash) const