Comments (2)
Hi, here is short "how to add an import" documentation http://secana.github.io/PeNet/articles/imports.html
I'm not sure if replacing the imports will work. Some in the code, a function will call WinHelpA and the loader needs to be able to find it under the same name. As import are resolved on runtime and not statically, you cannot change that in the PE file.
Maybe a much easier approach would be to use the way that Windows searches for DLLs. If you place your own WinG32.dll with an exported stub for WinHelpA in the same directory as the binary you want to patch, it should load your DLL first and resolve the export from there instead of the real DLL in c:\windows\system32. In that case you would not need to change the original binary at all.
from penet.
That's what I'm doing already ( https://github.com/aroenai/Monopoly95 ), most of the imports are just renamed functions in modern gdi32.dll since this came out in the Win 3.1 Era. I'm not concerned about changing the assembly since I'm already having to make other changes and should have space to modify it so it works with the new imports.
The original question remains though, since you linked to more or less the same article I did, how do I setup a project to use PeNet? You just have code examples without context.
from penet.
Related Issues (20)
- Wrong version of `System.Runtime.CompilerServices.Unsafe` used for .NET 4.8 HOT 1
- Possibility to merge .dll into .exe file ? HOT 2
- AddImport produces corrupt binary on linux HOT 3
- Trim warnings (in .NET 7)
- PeNet.FileParser.StreamFile - ReadUnicodeString function issue - infinate loop HOT 7
- MetaDataTableHdr - Malformed Rowcount - Forces out of memory exception - Needs a sanity Check HOT 1
- Add example code which can extract multiple icons as one .ico file HOT 3
- The AuthenticodeInfo.IsAuthenticodeValid property is misleading HOT 2
- Version and Flags are swapped in UnwindInfo HOT 1
- ExportedFunctions is null despite a valid export data directory HOT 2
- Instant crash
- AddImport gives sequence not found
- Not detecting import from RPCRT4.dll HOT 3
- IsAuthenticodeSigned is true, but IsTrustedAuthenticodeSignature is false HOT 1
- ImageDelayImportDescriptor usage?
- SanityCheckFailed from 2.9.5 skips resources? HOT 3
- Request for permissions to use and implement PeNet HOT 1
- System.AccessviolationException occurs while PE files HOT 1
- How to get resource manifest XML using this library? HOT 1
- PeNet attempts to parse NE file as PE file 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 penet.