diff --git a/include/winuser.h b/include/winuser.h
index 68b9e34..b61304f 100644
--- a/include/winuser.h
+++ b/include/winuser.h
@@ -2118,6 +2118,7 @@
 #define SBM_SETRANGEREDRAW     0x00e6
 #define SBM_SETSCROLLINFO      0x00e9
 #define SBM_GETSCROLLINFO      0x00ea
+#define SBM_GETSCROLLBARINFO   0x00eb
 
 /* Scrollbar info */
 typedef struct tagSCROLLINFO
@@ -2133,6 +2134,19 @@
 
 typedef const SCROLLINFO *LPCSCROLLINFO;
 
+#define CCHILDREN_SCROLLBAR 5
+
+typedef struct tagSCROLLBARINFO
+{
+    DWORD   cbSize;             /* Size of SCROLLBARINFO struct */
+    RECT    rcScrollBar;        /* Coordinates of the scroll bar */
+    INT     dxyLineButton;      /* Height or width */
+    INT     xyThumbTop;         /* Position of the top or the left */
+    INT     xyThumbBottom;      /* Position of the bottom or the right */
+    INT     reserved;
+    DWORD   rgstate[CCHILDREN_SCROLLBAR+1];
+} SCROLLBARINFO, *PSCROLLBARINFO, *LPSCROLLBARINFO;
+
 /* GetScrollInfo() flags */
 #define SIF_RANGE           0x0001
 #define SIF_PAGE            0x0002
@@ -4239,6 +4253,7 @@
 #define     GetProp WINELIB_NAME_AW(GetProp)
 DWORD       WINAPI GetQueueStatus(UINT);
 BOOL      WINAPI GetScrollInfo(HWND,INT,LPSCROLLINFO);
+BOOL      WINAPI GetScrollBarInfo(HWND,LONG,LPSCROLLBARINFO);
 INT       WINAPI GetScrollPos(HWND,INT);
 BOOL      WINAPI GetScrollRange(HWND,INT,LPINT,LPINT);
 HWND      WINAPI GetShellWindow(void);
