Commit Graph

44 Commits

Author SHA1 Message Date
Vadim Zeitlin
15c1b97786 Explicitly include wx/dynlib.h from src/msw/dlmsw.cpp
Don't rely on wx/dynlib.h being included implicitly via wx/msw/debughlp.h.
2016-03-15 20:11:05 +01:00
Vadim Zeitlin
5cce48186c Link with shlwapi.lib and version.lib under MSW
These libraries are required now that we don't load the functions from them
dynamically (see e78be14ac1)

Closes #17180
2015-10-07 18:56:33 +02:00
Tobias Taschner
e78be14ac1 Remove dynamic loading of version.dll.
The version info APIs GetFileVersionInfoSize, GetFileVersionInfo, VerQueryValue are available since Win2k no need to load them dynamically any more.
2015-09-27 19:08:14 +02:00
Tobias Taschner
8282c1be0f Remove Windows CE support
Windows CE doesn't seem to be supported by Microsoft any longer. Last CE
release was in early 2013 and the PocketPC and Smartphone targets supported by
wxWidgets are long gone.

The build files where already removed in an earlier cleanup this commit
removes all files, every #ifdef and all documentation regarding the Windows CE
support.

Closes https://github.com/wxWidgets/wxWidgets/pull/81
2015-09-23 00:52:30 +02:00
Suzumizaki-Kimitaka
28587c97d8 Add support for Unicode to wxStackWalker.
Use wide-char versions of debug help functions if available, falling back to
the narrow char ones otherwise.

Also improve 64 bit support by using 64 bit versions of the functions if
available as well.

Closes #15138.
2015-07-27 02:44:36 +02:00
Vadim Zeitlin
f51dc81c85 Add wxDynamicLibrary::GetModuleFromAddress().
Use dladdr() under Unix, if available, to provide the same functionality as we
get from GetModuleHandleEx() under MSW and export it in a new public function.

Closes #15248.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-11 16:04:06 +00:00
Vadim Zeitlin
1d31e79e5d Replace c_str() with t_str() in wxWinCE code.
This should work correctly even in UTF-8 build, should someone want to use it
under Windows CE.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-10-05 15:05:38 +00:00
Vadim Zeitlin
5dcfc82cca Don't call SetDllDirectory() when loading dynamic libraries in wxMSW.
SetDllDirectory() modifies the per-process DLL loading behaviour which is
already unexpected as it can affect other threads, running code completely
unrelated to wxWidgets, but, even worse, we can't undo its effect as calling
SetDllDirectory(NULL) as we used to discarded any changes to the DLL directory
done by the program itself, while restoring the result of GetDllDirectory()
would never restore the "compatible" algorithm for DLL search used by default.

So the simplest, and the only 100% correct solution, is to not call this
function at all from here and call it from some higher level code only, either
in the user application or wxPython itself.

Closes #15534.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-10-05 15:05:32 +00:00
Vadim Zeitlin
7dbb435338 Revert "Make wxMSW stack walking methods work with Unicode identifiers."
This reverts r74817 because it broke compilation with VC8 and it doesn't seem
obvious to fix this.

See #15138, closes #15500.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-09-15 11:57:23 +00:00
Vadim Zeitlin
bf9ce7b55e Make wxMSW stack walking methods work with Unicode identifiers.
This allows to show the stack properly for e.g. Japanese programs.

Closes #15138.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-09-15 00:16:34 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Václav Slavík
31f125ed00 Use correct extensions in wxDynamicLibrary::CanonicalizeName() on OS X.
Contrary to the documentation, this function incorrectly appended the
.bundle extension on OS X for libraries as well as modules.

Fixed to use .dylib for libraries (wxDL_LIBRARY) and continue to use
.bundle for loadable modules (wxDL_MODULE). Change GetDllExt() to take optional wxDynamicLibearyCategory argument.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-11 16:46:49 +00:00
Vadim Zeitlin
5ae1a66970 Add missing t_str() call to fix wxUSE_STL build after r73792.
Don't rely on implicit conversion from wxString to wxChar* which is not
available in all builds.

Closes #15145.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-11 16:54:36 +00:00
Vadim Zeitlin
252e3b2c29 Support Unicode module names in wxDynamicLibrary::MSWGetModuleHandle().
The module names are not necessarily ASCII strings, so use wxString instead of
"char*" and W-version of GetModuleHandle() if appropriate.

See #15138.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-08 14:15:31 +00:00
Dimitri Schoolwerth
685a9fa61d Fixed dlmsw.cpp compilation with older SDKs and at run-time for systems prior to XP SP1.
Kernel32's SetDllDirectory is only available since XP SP1 and as such also not available in the SDK that comes by default with for example VS6. Attempt to retrieve the function from the DLL at run-time instead. Regression since r68935.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-30 15:20:05 +00:00
Robin Dunn
932d0768aa * Implement dynamic loading of the Cairo DLL on Windows similar to how it was
done for GDI+.

* Enable the use of the wxCairoContext on MSW.

* Enable creating a wxGCDC from an exisiting wxGraphicsContext.

* Since it's possible for a DLL that is using wx to not be on the PATH nor in
  the same location as the .exe, change the wxDynamicLibrary::RawLoad method to
  explicitly look first in the same place as the main wx-using binary.  This way
  it will find DLLs that are in the same folder as the wx-using binary even if
  that would not be in the normal DLL search path.  

* Change wxDCImpl and wxDC::GetLogicalScale to be const methods.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-27 23:26:53 +00:00
Dimitri Schoolwerth
80fdcdb90e No changes, synchronised source names that appear commented at the top of files with the actual path to the files.
Fixed commented names (path, filename, and extension) of files in include/ and src/. Prepended the names in src/ with "src/" everywhere, while starting those in include/wx/ with "wx/".

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-03-20 00:14:35 +00:00
Vadim Zeitlin
ba97f6f8a3 Fix compilation of EnumerateLoadedModules() call for MinGW64 4.5.
Our logic for detection of whether the first argument of
PENUMLOADED_MODULES_CALLBACK is const or not didn't work for MinGW64 4.5.

Replace it with a less error-prone (even if more ugly) version which simply
casts the callback to the type expected by the function.

Closes #12465.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-12 22:58:48 +00:00
Václav Slavík
142ae7b388 Don't include wx/msw/private.h from dynlib.h.
Because it's private header and introduces dependency on window.h.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64139 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-25 12:07:37 +00:00
Václav Slavík
fe42ab1d7b Declare various WXH* handles compatibly with SDK.
It is no longer necessary to cast between e.g. HINSTANCE and
WXHINSTANCE, they are now declared as the same type (without including
Windows SDK header).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-25 12:07:30 +00:00
Vadim Zeitlin
c118a47691 Add semi-public wxDynamicLibrary::MSWGetModuleHandle().
Rename old private wxGetModuleHandle() function to wxDynamicLibrary::
MSWGetModuleHandle() to allow its use in the dll sample.

This fixes the sample compilation with VC6 which lacks GetModuleHandleEx()-
related declarations.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-07 03:04:33 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
c0c133e13b add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Vadim Zeitlin
e2d4ce7d36 don't load comctl32.dll, just get the handle of the already loaded instance of it instead, this avoids accidentally loading 2 different versions of this DLL in the same process (see #10203)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-20 16:45:45 +00:00
Vadim Zeitlin
5c33522fca replace wx_{const,static,reinterpret}_cast with their standard C++ equivalents
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 02:39:52 +00:00
Vadim Zeitlin
83a4297638 fix mingw32 4.3 warning about passing literal string as non-const char*
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-30 15:01:31 +00:00
Robert Roebling
dc874fb4ce Use t_str() instead of c_str()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-04 14:05:16 +00:00
Robert Roebling
c6867dcd51 Make wxMSW wxBase compile in UTF-8 mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-03 20:34:51 +00:00
Vadim Zeitlin
3f49efdba9 /Wp64 warnings fixes (mostly simply use wxUIntToPtr/wxPtrToUInt() instead of C casts)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-02-26 17:55:19 +00:00
Vadim Zeitlin
d6f2a8911e many compilation fixes for WinCE using VC8 (it now build, although still doesn't work)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-27 16:34:24 +00:00
Václav Slavík
e0a050e347 more changes to make wx compile without implicit wxString->char* conversion (for STL build)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-20 07:44:45 +00:00
Václav Slavík
00711afdd6 return wxString from wxDynamicLibrary::GetDllExt()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-19 19:29:07 +00:00
Václav Slavík
c9f7896861 first phase of transition to unified Unicode build:
1. changed c_str() to return wxCStrData (implicitly convertible to wxChar*)
2. added template type-safe wrappers for vararg functions
3. added wxUniChar class representing single Unicode character
4. changed wxString::operator[] and wxString::iterator to return wxUniChar


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-17 10:26:10 +00:00
Vadim Zeitlin
090afcf011 fix compilation for latest SDK where EnumModulesProc() first parameter is now const (bug 1629333)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-07 23:35:49 +00:00
Vadim Zeitlin
e7f28a5864 compilation fix: last commit broke non-Win64 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-05-22 17:55:30 +00:00
Julian Smart
106d80ad37 Applied patch [ 1195797 ] Fixes to compile on Win64
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-05-22 12:10:55 +00:00
Vadim Zeitlin
6d94009faa implemented GetProgramHandle() for Win32 and documented it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-04-01 20:56:00 +00:00
Vadim Zeitlin
79e385875b compilation fix for CE: don't use GetModuleHandleA() which doesn't exist there
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 14:06:58 +00:00
Włodzimierz Skiba
23ee4b4874 wxWinCE fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 10:10:23 +00:00
Włodzimierz Skiba
60431236a3 MinGW fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 19:08:44 +00:00
Vadim Zeitlin
5ef1ba92e6 fixed GetModuleHandleExA() call after last fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 14:04:09 +00:00
Włodzimierz Skiba
94534bf8db Build fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 13:47:50 +00:00
Vadim Zeitlin
da55d0644f extracted Unix code in a separate new file (src/unix/dlunix.cpp), it remains only to refactor Mac/OS2 versions to finally fix the mess in common/dnylib.cpp...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 22:21:44 +00:00
Vadim Zeitlin
defbed48e7 1. extracted MSW-specific part of wxDynamicLibrary in msw/dlmsw.cpp
2. added and documented wxDynamicLibrary::ListLoaded()


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 20:50:06 +00:00