Comments (5)
@CaffeMrDe Well, if I understand correctly, you are trying to wrap system malloc() function (more precisely malloc() from msvcrt.dl) via dlsym+RTLD_NEXT like on linux/ELF systems. The problem is that dlsym() implementation in dlfcn-win32 project internally uses malloc() function, so you are not able to resolve malloc symbol via dlsym+RTLD_NEXT. I do not think that on Windows it is possible to write RTLD_NEXT support without dynamic allocation.
@traversaro GetProcAddress()
does not support RTLD_NEXT flag. And I'm not aware of any Win32 API function which could provide RTLD_NEXT-like feature. This is really unique for dlfcn-win32 and in past I was in doubt if something like this is even possible to implement on Windows (but it is - we have it).
from dlfcn-win32.
Hello @CaffeMrDe, I am not sure how to address your problem. To debug further, did you check if this works correctly if you use directly Win32 APIs like GetProcAddress
without passing via dlfcn-win32
?
Anyhow, I marked the issue as help wanted
so if anyone from the community knows how to solve this problem or has any pinput, they are welcome to comment!
from dlfcn-win32.
Thanks @pali !
from dlfcn-win32.
@CaffeMrDe As a simple "hack", you can replace malloc() in dlfcn-win32 project by some other dynamic allocator. For example by LocalAlloc() from WinAPI/kernel32.dll (and free() by LocalFree()). Then you should be able to wrap msvcrt.dll's malloc(), but you cannot wrap kernel32.dll's LocalAlloc().
from dlfcn-win32.
Okay, I see what you mean! Thank you for your help!
from dlfcn-win32.
Related Issues (20)
- Understand why settting cmake_minimum_required to 3.20 make test fail HOT 1
- Use of LoadLibraryExA with LOAD_WITH_ALTERED_SEARCH_PATH flag HOT 9
- config.mak: No such file or directory HOT 5
- Add support and docs for using dlfcn-win32 using CMake's FetchContent module HOT 1
- Installation instructions HOT 7
- MAX_PATH restriction feasible after Windows dropped it for Win10? HOT 3
- ERROR Non-library file %TEMP%\temp.dll was processed via WINAPI: 18 From line 138 HOT 3
- Should common subset of ZDICT_cover_params_t and ZDICT_fastCover_params_t be moved into a separate struct and put it into the front of the struct, implementing inheritance this way? HOT 1
- UTF-8 path failes to dlopen HOT 11
- Add automatic tests with Dr. Memory
- dlsym multiple defintion HOT 2
- undefined reference to `GetModuleHandleExA' HOT 6
- AppVeyor test problems HOT 4
- Using dlfcn-win32 as a subproject of libbacktrace, gollvm HOT 3
- Write docs on how to use the dlfcn-win32 in a buildsystem agnostic way
- no RTLD_NOLOAD HOT 6
- Add support to dladdr() to inspect export table for additional symbols
- Release 1.3.0 HOT 7
- Testing i586-mingw32msvc-gcc builds via cmake HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dlfcn-win32.