Comments (2)
The compiler error is caused because the calling convention of ImTheTrashMan is wrong. Casting it is a terrible idea and if called would cause a crash on x86.
I haven't used the debug builds in years and don't know why I've changed the calling convention on them. Compile it with /Gd and it'll be fine (Settings -> C/C++ -> Advanced -> Calling Convention). This will be fixed in the next version.
Micro optimizations like that are pointless. I prefer to use const only for ensuring const correctness. The compiler does the rest.
Spaces in the name look a lot better than GHInjectorX86 and I don't see how spaces would ever cause issues.
The project can handle both unicode and multibyte and basically doesn't use TCHAR at all. However there are a few string references in the DllMain which cause issues because I haven't used the correct unicode macros with %ls which then causes vsprintf_s to do dumb shit and to deadlock (instead of maybe calling the fucking handle I've installed like 2 lines before???).
Again, I'll fix this in the next update but I've tested it now and there aren't any issues with multibyte and unicode.
from gh-injector-library.
Thanks for your support. So, from what I understood casting should always be avoided whenever possible especially in X86. When a casting is added and project compiles without even a warning it is easy to feel a fake sense of safety. Thanks for the quick fix, you saved me future headaches from trying to understand where could come from the crashes.
I couldn't work without Debug builds, because is the best and only way where I can see and learn what the code does.
You're right about micro optimizations, it's R# that present so many and sometimes I am tempted to disable them because can become annoying and intrusive.
I rarely see assemblies with spaces and even VS projects templates does not contains space. I believe it is not compliant because can create problems with escaping, namespaces which are tied to assembly name and many other things scripting included. However, in your case (and my too) is different, once the library is loaded it make no more difference if it was loaded as GHInjectorX86 or "GH Injector - X86".
Yes, the deadlock was exactly what I experienced when I tried to load the library and I had hard time trying to figure out the root of the cause because it doesn't even generate an exception or a timeout. It just block for always. Yes, I am afraid that calling the handled at the right time would avoid the issue, but not sure if leaving the uncorrect unicode macros would have caused other troubles.
Would you consider to publish the new releases on NuGet? The process is simple and can be enabled directly from VS. Once enabled you just press the publish button and your lib is on the repo. In this way you can also enable SourceLink support which allow us to step through code if we need and this does not affect in any way how you normally compile the project. Honestly, I think that today no one can survive without NuGet. In addition to that it will makes your lib available to much more people (most of them search packages directly inside VS and if your isn't there they don't know about its existence). I discovered your library just by accident and a good dose of luck.
While exploring the lib I saw many interesting functions that would be very useful, but they are not exported and therefore I cannot access them from my code. It would be nice if you could expose more things from the library.
Your library really deserve to be known from the community!
Thanks
from gh-injector-library.
Related Issues (20)
- injection keep failing HOT 4
- Cannot run the program HOT 1
- Won't run on Windows 11 HOT 2
- Shellcode Injector execution time exceeded SR_REMOTE_TIMEOUT HOT 1
- How do i get it to inject into a game called PolyGon HOT 1
- Feature Request, Manual Map from file in memory HOT 8
- support uwp apps
- How to handle Error code: 0x1010000C HOT 10
- This shit crashes with csgo now 😡😡😡😡 HOT 1
- My injector closes when I finish injecting. HOT 4
- Shell failed with 0x0040000A HOT 5
- GetDownloadProgress Doesn't work correctly... HOT 8
- Manual map injection keep failing HOT 3
- Don't know how to make it run HOT 4
- Error! HOT 5
- BUG??? HOT 1
- From memory mapping and handle hijacking not supported HOT 4
- Issues injecting HOT 7
- Error code: 0x00000012 HOT 1
- Handle Hijacking often makes windows shut down to critical error in 1 minute. HOT 2
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 gh-injector-library.