Howdy, Everyone !

Today I’ll share my C++ library which I am being used for all of C++ projects since I started at C++ programming until now. I’ve updated this library day by day, anytime I wanted and needed. It named Vutils or Vic Utilities. One more thing, this is a significantly improved version of CatEngine that I shared before. ?

It is available on GitHub at

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.




  • [x] Windows 32-bit & 64-bit
  • [x] MS Visual Studio
    • [x] for 32-bit application
    • [x] for 64-bit application
  • [x] GNU MinGW
    • [x] for 32-bit application
    • [x] for 64-bit application



Released under the MIT license (and its third parties per se are also released under the MIT license)


Vutils requires the C++ Compiler that supported at least C++ 11

The minimum version of the following IDEs are supported C++ 11

  • MS Visual Studio C++ 2012 or later
  • GNU MinGW 4.6 or later


  • Clone Vutils repository to your machine

  • Run the batch file tools\Getting.Started.CMD

  • Build

    MS Visual Studio C++

    • Run the batch file tools\VS<version>.Build.Static.Library.CMD (<version> is your Visual Studio version)


  • Run the batch file tools\MinGW.Build.Static.Library.CMD
  • Configuration

    MS 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 copy Directory.Build.props file to your solution folder that contains the .sln file.
  • GNU MinGW

    • Include : You don't need to do anything, automatic included in the global settings.
    • Library : -lVutils -lgdi32 -lole32 -lcomdlg32
      • If SOCKET enabled, insert option -DVU_INET_ENABLED -lws2_32 -lwinhttp
      • If GUID enabled, insert option -DVU_GUID_ENABLED -lrpcrt4
      • If WMI enabled, insert option -DVU_WMI_ENABLED -loleaut32 -lwbemuuid
  • 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.
  • Examples


    Feel free to contact via Twitter / Gmail / Blog / Website

    Leave a Reply

    Your email address will not be published. Required fields are marked *