diff --git a/dlls/oleaut32/regsvr.c b/dlls/oleaut32/regsvr.c
index 9ab5fd4..fc92295 100644
--- a/dlls/oleaut32/regsvr.c
+++ b/dlls/oleaut32/regsvr.c
@@ -544,15 +544,6 @@
 /***********************************************************************
  *		interface list
  */
-
-/* FIXME: these interfaces should be defined in ocidl.idl */
-
-static IID const IID_IFontEventsDisp = {
-    0x4EF6100A, 0xAF88, 0x11D0, {0x98,0x46,0x00,0xC0,0x4F,0xC2,0x99,0x93} };
-
-static IID const IID_IProvideMultipleClassInfo = {
-    0xA7ABA9C1, 0x8983, 0x11CF, {0x8F,0x20,0x00,0x80,0x5F,0x2C,0xD0,0x64} };
-
 static struct regsvr_interface const interface_list[] = {
     {   &IID_IDispatch,
 	"IDispatch",
diff --git a/include/ocidl.idl b/include/ocidl.idl
index 8cfaf5e..c7df316 100644
--- a/include/ocidl.idl
+++ b/include/ocidl.idl
@@ -32,6 +32,14 @@
 ]
 interface IOleControlTypes
 {
+    typedef [v1_enum] enum tagUASFLAGS
+    {
+        UAS_NORMAL       = 0x0,
+        UAS_BLOCKED      = 0x1,
+        UAS_NOPARENTABLE = 0x2,
+        UAS_MASK         = 0x3
+    } UASFLAGS;
+
     typedef enum tagREADYSTATE
     {
         READYSTATE_UNINITIALIZED  = 0,
@@ -110,6 +118,20 @@
 
 
 /*****************************************************************************
+ * IFontEventsDisp interface
+ */
+[
+    object,
+    uuid(4ef6100a-af88-11d0-9846-00c04fc29993),
+    pointer_default(unique)
+]
+interface IFontEventsDisp : IDispatch
+{
+    typedef IFontEventsDisp *LPFONTEVENTS;
+}
+
+
+/*****************************************************************************
  * IPicture interface
  */
 [
@@ -545,6 +567,36 @@
 }
 
 
+[
+    object,
+    uuid(a7aba9c1-8983-11cf-8f20-00805f2cd064),
+    pointer_default(unique)
+]
+interface IProvideMultipleClassInfo : IProvideClassInfo2
+{
+    cpp_quote("#define MULTICLASSINFO_GETTYPEINFO           0x00000001")
+    cpp_quote("#define MULTICLASSINFO_GETNUMRESERVEDDISPIDS 0x00000002")
+    cpp_quote("#define MULTICLASSINFO_GETIIDPRIMARY         0x00000004")
+    cpp_quote("#define MULTICLASSINFO_GETIIDSOURCE          0x00000008")
+
+    cpp_quote("#define TIFLAGS_EXTENDDISPATCHONLY           0x00000001")
+
+    typedef IProvideMultipleClassInfo *LPPROVIDEMULTIPLECLASSINFO;
+
+    HRESULT GetMultiTypeInfoCount( 
+        [out] ULONG *pcti);
+
+    HRESULT GetInfoOfIndex( 
+        [in] ULONG iti,
+        [in] DWORD dwFlags,
+        [out] ITypeInfo **pptiCoClass,
+        [out] DWORD *pdwTIFlags,
+        [out] ULONG *pcdispidReserved,
+        [out] IID *piidPrimary,
+        [out] IID *piidSource);
+}
+
+
 /*****************************************************************************
  * IConnectionPoint interface
  */
