What is Vutils ?
Vutils or Vic Utilities is an utility library written in Modern C++ and for Modern C++.
It helps your programming go easier, faster and simpler.
Status
Information
- Windows 32-bit & 64-bit
- TCHAR - ANSI & UNICODE
- MS Visual Studio
- for 32-bit application
- for 64-bit application
- GNU MinGW
- for 32-bit application
- for 64-bit application
- RAD C++ Builder
- for 32-bit application
- for 64-bit application
Features
- Features
- GUID - Globally/Universally Unique Identifier
- WMI - Windows Management Instrumentation
- Smart Buffer Memory
- Run-time Link Library
- Object-Oriented Path
- Object-Oriented Process
- Object-Oriented Registry
- Service Manager
- Sync/Async Socket
- Thread Pool
- Read/Write/Parse INI File
- Parse PE File
- Create/Parse LNK File Shortcut
- Smart Stop Watch
- File System
- File Mapping
- IAT/INL API Hooking
- Windows Message Hooking
- Critical Section
- Smart Singleton DP Template
- Input Dialog
- In-Memory Dialog
- AOB Find Pattern
- Window Message Decoder
- Font/Color/File/Directory Picker
- Cryptography (B64, CRC, MD5, SHA, Big Number, etc)
- File/Directory, Window, Process, Math Manipulation
- Shorten Formatting for Date/Time, String, Message Box, Debug Message
- Miscellaneous
License
Released under the MIT license
Requirements
Vutils requires the C++ Compiler that supported at least C++ 11
The minimum version of the following IDEs are supported C++ 11
- MS Visual C++ 2012 or later
- GNU MinGW 4.6 or later
- RAD C++ Builder 10 or later
Installation
-
Clone or Download the repository
Vutils
to your machine -
Run the batch file
tools\Getting.Started.CMD
-
Build
- For
MS Visual Studio C++
- Run the batch file
tools\VS<version>.Build.Static.Library.CMD
that<version>
is your Visual Studio version
- Run the batch file
- For
GNU MinGW
- Run the batch file
tools\MinGW.Build.Static.Library.CMD
- Run the batch file
- For
RAD C++ Builder
(later)
- For
-
Configuration
- For
Visual Studio C++
- If you are using
Visual Studio 2012~2015
, you don't need to do anything, it automatic included in the global settings. - If you are using
Visual Studio 2017
or later, you have to copyDirectory.Build.props
file to your solution folder that contains the.sln
file.
- If you are using
- For
GNU MinGW
- Include : You don't need to do anything, automatic included in the global settings.
- Library :
-lVutils
-lgdi32 -lcomdlg32
- If
SOCKET
enabled, insert option-DVU_SOCKET_ENABLED -lws2_32
- If
GUID
enabled, insert option-DVU_GUID_ENABLED -lrpcrt4
- If
WMI
enabled, insert option-DVU_WMI_ENABLED -lole32 -loleaut32 -lwbemuuid
- If
- For
RAD C++ Builder
(later)
- For
-
Usage
- Insert
#include <vu>
to your source code. - Let's get started with
vu
. Eg.vu::format(...)
,vu::find_top_window(...)
,vu::Socket
,vu::Process
,vu::Service
, etc. - Note: If building error or conflict, add
#define VU_NO_EX
above of#include <vu>
to disable all extended utilities.
- Insert
Examples
- Test\Sample.Misc.h
- Test\Sample.WMI.h
- Test\Sample.Crypt.h
- Test\Sample.Picker.h
- Test\Sample.Process.h
- Test\Sample.Singleton.h
- Test\Sample.StopWatch.h
- Test\Sample.ThreadPool.h
- Test\Sample.AsyncSocket.h
- Test\Sample.WMHooking.h
- Test\Sample.INLHooking.h
- Test\Sample.IATHooking.h
- See more examples in the
Test
project