From 6d94009faa51ae4018e08ced13cfdfe575b03f08 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 1 Apr 2005 20:56:00 +0000 Subject: [PATCH] implemented GetProgramHandle() for Win32 and documented it git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/dynlib.tex | 8 ++++++++ src/common/dynlib.cpp | 7 ++++--- src/msw/dlmsw.cpp | 9 +++++++++ 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/docs/latex/wx/dynlib.tex b/docs/latex/wx/dynlib.tex index f29e1ca6d1..505832463b 100644 --- a/docs/latex/wx/dynlib.tex +++ b/docs/latex/wx/dynlib.tex @@ -103,6 +103,14 @@ contains no such symbol. \helpref{wxDYNLIB\_FUNCTION}{wxdynlibfunction} +\membersection{wxDynamicLibrary::GetProgramHandle}\label{wxdynamiclibrarygetprogramhandle} + +\func{static wxDllType}{GetProgramHandle}{\void} + +Return a valid handle for the main program itself or \texttt{NULL} if symbols +from the main program can't be loaded on this platform. + + \membersection{wxDynamicLibrary::HasSymbol}\label{wxdynamiclibraryhassymbol} \constfunc{bool}{HasSymbol}{\param{const wxString\& }{name}} diff --git a/src/common/dynlib.cpp b/src/common/dynlib.cpp index 357a013e5e..8df394b0e4 100644 --- a/src/common/dynlib.cpp +++ b/src/common/dynlib.cpp @@ -64,8 +64,8 @@ WX_DEFINE_USER_EXPORTED_OBJARRAY(wxDynamicLibraryDetailsArray); const wxChar *wxDynamicLibrary::ms_dllext = wxEmptyString; #endif -// for Unix it is in src/unix/dlunix.cpp -#if !defined(__UNIX__) || defined(__EMX__) +// for MSW/Unix it is defined in platform-specific file +#if !(defined(__WXMSW__) && (!defined(__UNIX__) || defined(__EMX__))) wxDllType wxDynamicLibrary::GetProgramHandle() { @@ -73,7 +73,8 @@ wxDllType wxDynamicLibrary::GetProgramHandle() return 0; } -#endif // __UNIX__ +#endif // __WXMSW__ || __UNIX__ + bool wxDynamicLibrary::Load(const wxString& libnameOrig, int flags) { diff --git a/src/msw/dlmsw.cpp b/src/msw/dlmsw.cpp index 9f904a240c..aebf3e5165 100644 --- a/src/msw/dlmsw.cpp +++ b/src/msw/dlmsw.cpp @@ -244,6 +244,15 @@ wxDynamicLibraryDetailsCreator::EnumModulesProc(PSTR name, // wxDynamicLibrary implementation // ============================================================================ +// ---------------------------------------------------------------------------- +// misc functions +// ---------------------------------------------------------------------------- + +wxDllType wxDynamicLibrary::GetProgramHandle() +{ + return (wxDllType)::GetModuleHandle(NULL); +} + // ---------------------------------------------------------------------------- // loading/unloading DLLs // ---------------------------------------------------------------------------- -- 2.45.2