c++ / delphi package - dll injection and api hooking
- Site Admin
- Posts: 10527
- Joined: Sun Mar 21, 2004 5:25 pm
Glad to hear the latest build helped! To be honest, I'm not sure which change made the difference, I don't recall having fixed a bug in the DLL Approval Callback. But anyway, happy to hear the issue seems resolved.
Sorry to you and iconic for wasting your time. I should have asked you to try the latest build right when you started the thread.
Anyway. ETA? The latest build should be fine for production use. Please ignore the "beta" in the file name. You can consider it identical to the official version with some added hotfixes. I'm not sure yet when I'll release a new "official" build. Might be soon, but it might also take a few weeks.
OpenProcess() should work within the approval callback. But please don't create remote threads in the new process. That would harm stability for the new process (in some cases, sometimes it might seem to work ok).
- Site Admin
- Posts: 1027
- Joined: Wed Jun 08, 2005 5:08 am
As madshi mentioned remote thread creation inside an uninitalized process is not a good idea. In some cases if the process creates windows there is main thread confusion about who registered the window and when the remote thread dies the window is left in a state of confusion which can cause instability. If you need to execute code at a safe time you can queue an APC to the main thread, it will execute just a moment before the main module’s entry point is called by the loader.