Skip to content

A wrapper library around native windows sytem APIs

License

Notifications You must be signed in to change notification settings

clayne/nt_wrapper

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nt_wrapper version badge

A header only wrapper library around native windows system APIs.

WARNING: the API of version 2 is still unstable

Highlights of currently implemented features

System information:

Object manipulation:

  • Process -> ntw::ob::process
  • Thread -> ntw::ob::thread
  • File -> ntw::ob::file
  • Token -> ntw::ob::token
  • Registry -> ntw::ob::registry And more

Design goals

  • No exceptions - if a function can fail it will return a status code.
  • No overhead - every single abstraction is costless and is as fast as it can be.
  • Ease of developer use - it is a much more consistent and pleasant to work with compared to win32.

Why?

The main reason to choose this library over existing windows constructs are:

  • Speed - even with lazy_importer your code is likely to be faster compared to win32 API.
  • Ease of use - the language of choice is c++ and allows you to use modern alternatives to old C.
  • Obfuscation - it is a lot harder to reverse engineer an application which uses obfuscated imports or direct syscalls.

Installing dependencies using vcpkg

> git clone https://github.com/microsoft/vcpkg
> cd vcpkg
> ./bootstrap-vcpkg.sh
> ./vcpkg install phnt

About

A wrapper library around native windows sytem APIs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 99.5%
  • CMake 0.5%