ole32: questions about the COINIT flags

Paul Vriens Paul.Vriens at xs4all.nl
Tue Jan 11 03:59:49 CST 2005


Hi,

I was looking through some MSDN doc:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/com/htm/cmf_a2c_5iyg.asp

there it's stated that:

If neither concurrency model is specified by the dwCoInit parameter, the
default is COINIT_MULTITHREADED.

Does this mean we should change the way we interpret these flags (in
compobj.c for example) because COINIT_MULTITHREADED equals 0 (which is a
bit strange value for a flag)?

The native QUARTZ.DDL calls CoInitializeEx with a COINIT of 4 which
effectively has the COINIT_DISABLE_OLE1DDE and the COINIT_MULTITHREADED
flags set.

Shouldn't we have a check for COINIT_APARTMENTTHREADED and if this flag
is not set we have to assume COINIT_MULTITHREADED? Especially because
both these flags cannot be set at the same time (see mentioned MSDN
doc).

Cheers,

Paul.





More information about the wine-devel mailing list