urlmon: Convert the coclasses registration to the IRegistrar mechanism.

This commit is contained in:
Alexandre Julliard 2010-12-13 20:33:36 +01:00
parent 779f88ec90
commit 889ac56f50
4 changed files with 88 additions and 77 deletions

View file

@ -1,7 +1,7 @@
MODULE = urlmon.dll
IMPORTLIB = urlmon
IMPORTS = uuid ole32 oleaut32 shell32 rpcrt4 shlwapi wininet user32 advapi32
EXTRADEFS = -D_URLMON_ -DENTRY_PREFIX=URLMON_ -DPROXY_DELEGATION -DREGISTER_PROXY_DLL \
EXTRADEFS = -D_URLMON_ -DENTRY_PREFIX=URLMON_ -DPROXY_DELEGATION -DWINE_REGISTER_DLL \
-DPROXY_CLSID_IS="{0x79EAC9F1,0xBAF9,0x11CE,{0x8C,0x82,0x00,0xAA,0x00,0x4B,0xA9,0x0B}}"
C_SRCS = \
@ -31,6 +31,7 @@ C_SRCS = \
RC_SRCS = rsrc.rc
IDL_P_SRCS = urlmon_urlmon.idl
IDL_R_SRCS = urlmon_urlmon.idl
EXTRA_OBJS = dlldata.o

View file

@ -435,72 +435,6 @@ error_close_progid_key:
* coclass list
*/
static struct regsvr_coclass const coclass_list[] = {
{ &CLSID_StdURLMoniker,
"URL Moniker",
NULL,
"urlmon.dll",
"Apartment"
},
{ &CLSID_CdlProtocol,
"CDL: Asynchronous Pluggable Protocol Handler",
NULL,
"urlmon.dll",
"Apartment"
},
{ &CLSID_FileProtocol,
"file:, local: Asynchronous Pluggable Protocol Handler",
NULL,
"urlmon.dll",
"Apartment"
},
{ &CLSID_FtpProtocol,
"ftp: Asynchronous Pluggable Protocol Handler",
NULL,
"urlmon.dll",
"Apartment"
},
{ &CLSID_GopherProtocol,
"gopher: Asynchronous Pluggable Protocol Handler",
NULL,
"urlmon.dll",
"Apartment"
},
{ &CLSID_HttpProtocol,
"http: Asynchronous Pluggable Protocol Handler",
NULL,
"urlmon.dll",
"Apartment"
},
{ &CLSID_HttpSProtocol,
"https: Asynchronous Pluggable Protocol Handler",
NULL,
"urlmon.dll",
"Apartment"
},
{ &CLSID_MkProtocol,
"mk: Asynchronous Pluggable Protocol Handler",
NULL,
"urlmon.dll",
"Apartment"
},
{ &CLSID_InternetSecurityManager,
"Security Manager",
NULL,
"urlmon.dll",
"Both"
},
{ &CLSID_InternetZoneManager,
"URL Zone Manager",
NULL,
"urlmon.dll",
"Both"
},
{ &CLSID_PSFactoryBuffer,
"URLMoniker ProxyStub Factory",
NULL,
"urlmon.dll",
"Apartment"
},
{ NULL } /* list terminator */
};

View file

@ -3,19 +3,11 @@ Signature="$CHICAGO$"
[RegisterDll]
AddReg=Classes.Reg, Protocols.Reg, ZoneMap.Reg, Zones.Reg, Misc.Reg
AddReg=Protocols.Reg, ZoneMap.Reg, Zones.Reg, Misc.Reg
[UnregisterDll]
DelReg=Classes.Reg, Protocols.Reg, ZoneMap.Reg, Zones.Reg, Misc.Reg
[Classes.Reg]
;; CLSID_DeCompMimeFilter
HKCR,"CLSID\%CLSID_DeCompMimeFilter%",,,"AP lzdhtml encoding/decoding Filter"
HKCR,"CLSID\%CLSID_DeCompMimeFilter%\InProcServer32",,,"%MODULE%"
HKCR,"CLSID\%CLSID_DeCompMimeFilter%\InProcServer32","ThreadingModel",,"Apartment"
DelReg=Protocols.Reg, ZoneMap.Reg, Zones.Reg, Misc.Reg
[Protocols.Reg]

View file

@ -17,3 +17,87 @@
*/
#include "urlmon.idl"
[
helpstring("URL Moniker"),
threading(apartment),
uuid(79eac9e0-baf9-11ce-8c82-00aa004ba90b)
]
coclass StdURLMoniker { interface IMoniker; }
[
helpstring("http: Asynchronous Pluggable Protocol Handler"),
threading(apartment),
uuid(79eac9e2-baf9-11ce-8c82-00aa004ba90b)
]
coclass HttpProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
[
helpstring("ftp: Asynchronous Pluggable Protocol Handler"),
threading(apartment),
uuid(79eac9e3-baf9-11ce-8c82-00aa004ba90b)
]
coclass FtpProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
[
helpstring("gopher: Asynchronous Pluggable Protocol Handler"),
threading(apartment),
uuid(79eac9e4-baf9-11ce-8c82-00aa004ba90b)
]
coclass GopherProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
[
helpstring("https: Asynchronous Pluggable Protocol Handler"),
threading(apartment),
uuid(79eac9e5-baf9-11ce-8c82-00aa004ba90b)
]
coclass HttpsProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
[
helpstring("mk: Asynchronous Pluggable Protocol Handler"),
threading(apartment),
uuid(79eac9e6-baf9-11ce-8c82-00aa004ba90b)
]
coclass MkProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
[
helpstring("file:, local: Asynchronous Pluggable Protocol Handler"),
threading(apartment),
uuid(79eac9e7-baf9-11ce-8c82-00aa004ba90b)
]
coclass FileProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
[
helpstring("CDL: Asynchronous Pluggable Protocol Handler"),
threading(apartment),
uuid(3dd53d40-7b8b-11d0-b013-00aa0059ce02)
]
coclass CdlProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
[
helpstring("Security Manager"),
threading(both),
uuid(7b8a2d94-0ac9-11d1-896c-00c04fb6bfc4)
]
coclass InternetSecurityManager { interface IInternetSecurityManager; }
[
helpstring("URL Zone Manager"),
threading(both),
uuid(7b8a2d95-0ac9-11d1-896c-00c04fb6bfc4)
]
coclass InternetZoneManager { interface IInternetZoneManagerEx2; }
[
helpstring("URLMoniker ProxyStub Factory"),
threading(apartment),
uuid(79eac9f1-baf9-11ce-8c82-00aa004ba90b)
]
coclass PSFactoryBuffer { interface IPSFactoryBuffer; }
[
helpstring("AP lzdhtml encoding/decoding Filter"),
threading(apartment),
uuid(8f6b0360-b80d-11d0-a9b3-006097942311)
]
coclass DeCompMimeFilter { interface IInternetProtocol; interface IInternetProtocolSink; }