Click here to Skip to main content
15,884,388 members
Home / Discussions / ATL / WTL / STL
   

ATL / WTL / STL

 
GeneralRe: Help : learn ATL, STL and COM Pin
Richard MacCutchan8-Jul-13 21:12
mveRichard MacCutchan8-Jul-13 21:12 
GeneralRe: Help : learn ATL, STL and COM Pin
Jonathan Davies8-Jul-13 22:39
Jonathan Davies8-Jul-13 22:39 
GeneralRe: Help : learn ATL, STL and COM Pin
Ajay_Tiwari3-Sep-13 0:18
Ajay_Tiwari3-Sep-13 0:18 
QuestionHow can I get the ATL Headers for free? Pin
Louai Haimour6-Jul-13 23:37
Louai Haimour6-Jul-13 23:37 
AnswerRe: How can I get the ATL Headers for free? Pin
Richard MacCutchan7-Jul-13 1:23
mveRichard MacCutchan7-Jul-13 1:23 
QuestionChakra: IActiveScript::GetScriptDispatch() fails with E_OUTOFMEMORY Pin
imagiro3-Jul-13 22:13
imagiro3-Jul-13 22:13 
QuestionActiveX in ActiveX problem Pin
leisuregame1-Jul-13 22:29
leisuregame1-Jul-13 22:29 
QuestionCOM Apartment Pin
KRISHNARAYALU16-Jun-13 20:46
KRISHNARAYALU16-Jun-13 20:46 
AnswerRe: COM Apartment Pin
Richard MacCutchan16-Jun-13 20:57
mveRichard MacCutchan16-Jun-13 20:57 
GeneralRe: COM Apartment Pin
KRISHNARAYALU16-Jun-13 21:10
KRISHNARAYALU16-Jun-13 21:10 
GeneralRe: COM Apartment Pin
Richard MacCutchan16-Jun-13 21:24
mveRichard MacCutchan16-Jun-13 21:24 
GeneralRe: COM Apartment Pin
KRISHNARAYALU16-Jun-13 21:35
KRISHNARAYALU16-Jun-13 21:35 
AnswerRe: COM Apartment Pin
imagiro4-Jul-13 2:53
imagiro4-Jul-13 2:53 
First of all an apartment is an abstract concept, means, there is no physical thing behind. When a thread starts it decides in which apartment it wants to "live". It does so by calling CoInitialize or CoInitializeEx.

An apartment is a kind of a convention how to handle things. A thread that initializes a single-threaded apartment states, that it does not allow any other threads to enter the same apartment. COM knows then, that all objects living in this apartment can be accessed only from this same thread and makes sure that these objects are used only from within this thread.

A thread that initializes a multi-threaded apartment allows other threads. COM knows then, that multiple threads might access the objects in this apartment and relies on these objects to handle thread synchronization by themselfs.

So how do other threads enter the same apartment? Simply also via CoInitializeEx. By requesting a multi-threaded apartment they will automatically resist in the same apartment as the other MTA threads since there can only be one MTA.

So in the end each thread that initializes a STA creates its own apartment, while threads initializing MTA enter the one and only MTA. And the same is of course valid for all COM objects created from this thread.
AnswerRe: COM Apartment Pin
Krishnakumartg13-Aug-13 6:53
Krishnakumartg13-Aug-13 6:53 
Questionhow to export an enum type in an ATL prject Pin
astupidboy12-Jun-13 21:58
astupidboy12-Jun-13 21:58 
AnswerRe: how to export an enum type in an ATL prject Pin
Jonathan Davies15-Jun-13 4:10
Jonathan Davies15-Jun-13 4:10 
QuestionHere is a C Program showing some Error, Give some solution Pin
Member 969295410-Jun-13 4:03
Member 969295410-Jun-13 4:03 
AnswerRe: Here is a C Program showing some Error, Give some solution Pin
Richard MacCutchan10-Jun-13 6:03
mveRichard MacCutchan10-Jun-13 6:03 
AnswerRe: Here is a C Program showing some Error, Give some solution Pin
Krishnakumartg13-Aug-13 7:05
Krishnakumartg13-Aug-13 7:05 
Questionstd::map and error checking Pin
bkelly139-Jun-13 10:42
bkelly139-Jun-13 10:42 
AnswerRe: std::map and error checking Pin
Garth J Lancaster9-Jun-13 13:18
professionalGarth J Lancaster9-Jun-13 13:18 
GeneralRe: std::map and error checking Pin
bkelly139-Jun-13 14:16
bkelly139-Jun-13 14:16 
AnswerRe: std::map and error checking Pin
Richard MacCutchan9-Jun-13 21:23
mveRichard MacCutchan9-Jun-13 21:23 
AnswerRe: std::map and error checking Pin
MicroVirus11-Jun-13 12:07
MicroVirus11-Jun-13 12:07 
Questionstatus display in a dialog Pin
bkelly139-Jun-13 5:17
bkelly139-Jun-13 5:17 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.