Thanks for the help.
I tried to apply the code but I'm doing something wrong, the tabs won't even show up.

Code:
#include <windows.h>
#include <commctrl.h>
#include <iostream>
using namespace std;
#pragma comment(linker, "/subsystem:\"console\" /entry:\"WinMainCRTStartup\"")

#include <gdiplus.h>
using namespace Gdiplus;

#define ID_TAB  113
#define RED     RGB(255,0,0)
#define YELLOW  RGB(255,255,0)
#define MAGENTA RGB(255,0,255)
#define WHITE   RGB(255,255,255)
#define BLUE    RGB(0,0,255)

char className[]="TabControl";
HWND hTab;
HINSTANCE hInst;

static DRAWITEMSTRUCT * lpdis;


LRESULT CALLBACK WindowProcedure(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpszArgument,int nFunsterStil)
{
    MSG messages;
    WNDCLASSEX wincl;
    hInst = hInstance;

    wincl.hInstance=hInstance;
    wincl.lpszClassName=className;
    wincl.lpfnWndProc=WindowProcedure;
    wincl.style=0;
    wincl.cbSize=sizeof(WNDCLASSEX);
    wincl.hIcon=LoadIcon(NULL,IDI_APPLICATION);
    wincl.hIconSm=LoadIcon(NULL,IDI_APPLICATION);
    wincl.hCursor=LoadCursor(NULL,IDC_ARROW);
    wincl.lpszMenuName=NULL;
    wincl.cbClsExtra=0;
    wincl.cbWndExtra=0;
    wincl.hbrBackground=HBRUSH(COLOR_3DFACE+1);

    if(!RegisterClassEx(&wincl))return 0;

    HWND windowHandle=CreateWindow(className,"TabControl",
                                   WS_OVERLAPPEDWINDOW,
                                   200,325,480,320,
                                   NULL,NULL,hInstance,NULL);
    ShowWindow(windowHandle,SW_SHOW);

    while(GetMessage(&messages,NULL,0,0))
    {
        TranslateMessage(&messages);
        DispatchMessage(&messages);
    };
    return messages.wParam;
}

LRESULT CALLBACK WindowProcedure (HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
    HDC hdc;
    PAINTSTRUCT ps;
    HBRUSH hbr;
    COLORREF bkColor;
    TCITEM tci;

    switch(message)
    {
    case WM_CREATE:
        INITCOMMONCONTROLSEX icce;
        icce.dwSize=sizeof(INITCOMMONCONTROLSEX);
        icce.dwICC=ICC_TAB_CLASSES;
        InitCommonControlsEx(&icce);

        hTab=CreateWindow(WC_TABCONTROL,"",
                          WS_CHILD|WS_VISIBLE|TCS_OWNERDRAWFIXED,
                          6,0,474,320,
                          hwnd,
                          (HMENU)ID_TAB,hInst,NULL);

        TCITEM Tab0;
        Tab0.mask=TCIF_TEXT;
        Tab0.pszText="Tab0";
        TabCtrl_InsertItem(hTab,0,&Tab0);
        TCITEM Tab1;
        Tab1.mask=TCIF_TEXT;
        Tab1.pszText="Tab1";
        TabCtrl_InsertItem(hTab,1,&Tab1);
        TCITEM Tab2;
        Tab2.mask=TCIF_TEXT;
        Tab2.pszText="Tab2";
        TabCtrl_InsertItem(hTab,2,&Tab2);
        TCITEM Tab3;
        Tab3.mask=TCIF_TEXT;
        Tab3.pszText="Tab3";
        TabCtrl_InsertItem(hTab,3,&Tab3);
        TCITEM Tab4;
        Tab4.mask=TCIF_TEXT;
        Tab4.pszText="Tab4";
        TabCtrl_InsertItem(hTab,4,&Tab4);
        return 0;
    case WM_DRAWITEM:
        lpdis = (LPDRAWITEMSTRUCT) lParam;

        if(hTab == lpdis->hwndItem)   // is this the tab control?
        {
            // which tab? first, second...fifth
            switch (lpdis->itemID)
            {
            case 0:
                hbr = CreateSolidBrush (RGB(255,0,0)) ;
                bkColor = RED;
                break;
            case 1:
                hbr = CreateSolidBrush (RGB(255,0,0)) ;
                bkColor = YELLOW;
                break;
            case 2:
                hbr = CreateSolidBrush (RGB(255,0,0)) ;
                bkColor = MAGENTA;
                break;
            case 3:
                hbr = CreateSolidBrush (RGB(255,0,0)) ;
                bkColor = WHITE;
                break;
            case 4:
                hbr = CreateSolidBrush (RGB(255,0,255)) ;
                bkColor = BLUE;
                break;
            }

            tci.mask = TCIF_TEXT;
            tci.pszText = "Hello";
            tci.cchTextMax = 5;

            TabCtrl_GetItem(hTab, lpdis->itemID, &tci);

            FillRect(lpdis->hDC, &lpdis->rcItem, hbr);
            SetBkColor(lpdis->hDC, bkColor);

            TextOut(lpdis->hDC,
                    lpdis->rcItem.left,
                    lpdis->rcItem.top,
                    tci.pszText,
                    lstrlen(tci.pszText));
        }
        return TRUE;
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hwnd,message,wParam,lParam);
    };
    return 0;
}