Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
The Trouble with DCOM
Message
 
To
28/10/2002 11:14:00
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
00716007
Message ID:
00716080
Views:
28
>Do you know of any articles on this? I've used DCOM but not COM+ !
>

A bulkload of info is available at http://www.microsoft.com/com/tech/complus.asp

However, for a jump start, follow these steps on the Component Services console:

-Expand My Computer/ COM+ Applications, create new (empty) application as Server application.
-Assign application identity to a domain account (not the "currently logged user")
-Set the Server Process Shutdown setting (Advanced tab) to a longer interval, o select "Leave running when idle" (you will have to manually Unload the application for recompiling your DLL)
-In the Components folder add a new component, always select "Install new applicatation" and look for the DLL on disk (doesn't matter if it's already registered or not)
-Test the component locally
-Select the Application and Export it as an MSI file (select Application Proxy!)
-Install the generated MSI into client machines, test the component with CREATEOBJECT(progid)

If you want to avoid the registration on the client machine, you can use CREATEOBJECTEX() with the ClassId and server name, instead of CREATEOBJECT()

A final recommendation:
If you don't explicitly call any COM+ context methods (SetComplete, SetAbort) inside your component's code, and if you know your code behaves as "stateless" (no properties required to be mantained after return) you should check the "automatically deactivate this object when this method returns" box on each method of your component (from the Component Services console, expand your component and then Interfaces, Ixxxxxxxx, Methods). The checkbox is located on the property page of each method.
This way, the objects will be inmediately released on return, even if the client machine "forgets" or delays releasing the object reference. BTW, if the reference is used again, a new object is created.

Regards,
------------------
Jose Marcenaro
Tercer Planeta - Argentina
http://www.tercerplaneta.com
Previous
Reply
Map
View

Click here to load this message in the networking platform