HighTechTalks DotNet Forums  

COM+ and WndProc in .Net

Dotnet Framework (Interop) microsoft.public.dotnet.framework.interop


Discuss COM+ and WndProc in .Net in the Dotnet Framework (Interop) forum.



Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old   
igalvelis@gmail.com
 
Posts: n/a

Default COM+ and WndProc in .Net - 08-09-2007 , 11:16 AM






Hello,
I have a COM+ component which i am trying to use from a .Net
application. I have a requirement to make it hang-safe, so that if any
function in COM+ would hang, the application itself would be able to
recover.

Of course the correct approach would be to eliminate all hangs in COM+
component., but nobody would give me the time or tools for that .

So what i am currently doing is starting a new thread, creating the COM
+ component there, calling its methods. The problem is that this
approach doesn't help, because when a COM+ method is invoked, the
WndProc method seems to lock up. I am guessing that there is some kind
of a proxy between the COM+ and managed code.

Is there a simple way to workaround that?
Could using a thread in COM+ solve that problem?

Regards,
Ignas


Reply With Quote
  #2  
Old   
Johannes Passing
 
Posts: n/a

Default Re: COM+ and WndProc in .Net - 08-09-2007 , 12:44 PM






Hi Ignas,

is your COM+ component in-process (Library application) or
out-of-process? Then what is the apartment model of the COM+ class you
are instantiating and which apartments do your threads use (the main
thread seems to be STA, but what about the helper thread)? As your
problem seems to be apartment-related, this information would help.

--Johannes

igalvelis (AT) gmail (DOT) com wrote:
Quote:
Hello,
I have a COM+ component which i am trying to use from a .Net
application. I have a requirement to make it hang-safe, so that if any
function in COM+ would hang, the application itself would be able to
recover.

Of course the correct approach would be to eliminate all hangs in COM+
component., but nobody would give me the time or tools for that .

So what i am currently doing is starting a new thread, creating the COM
+ component there, calling its methods. The problem is that this
approach doesn't help, because when a COM+ method is invoked, the
WndProc method seems to lock up. I am guessing that there is some kind
of a proxy between the COM+ and managed code.

Is there a simple way to workaround that?
Could using a thread in COM+ solve that problem?

Regards,
Ignas


--
Johannes Passing - http://int3.de/


Reply With Quote
Reply




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.