Results 1 to 3 of 3

Thread: Moving From One Server To Another

  1. #1

    Thread Starter
    Lively Member
    Join Date
    Jun 2000
    Location
    A caravan park in the Midlands (UK)
    Posts
    101

    Moving From One Server To Another

    B4 I start..... I've never done any DCOM stuff before!

    Alright I've a DLL sitting on Server A which is used by many routines on other servers. We're getting rid of Server A and so I want to move the DLL to Server B - which already has a routine which references the DLL on Server A.

    So I went thru' Component Services with the intention of registering it on Server B.... only to find a reference already there.

    Why does the routine on Server B look at Server A DLL when the DLL sits on both? How can I force it to reference the one on Server B?

    I fear that the routines were compiled with a reference to the physical DLL on Server A..... which makes a mockery of the whole idea behind DCOM surely? If I've got to recompile the routines I may as well have the DLL sitting on each individual machine.

    A ten minute job is looking like a mareish journey into at least a week of testing at the moment.

    Any help appreciated....
    Anakim

    It's a small world but I wouldn't like to paint it.

  2. #2
    Hyperactive Member
    Join Date
    Sep 2001
    Location
    Orlando
    Posts
    392

    Smile...

    Don't worry, the compiled routines don't have to be changed to access the object in another machine.
    DCOM works transparently so that the caller routine never gets to know where the object is actually located.


    Here is how it works. When the object was registered in Server A, on all client machines, it was registered using a package that registered the component as a remot server. Although you will find a reference of that object in the client machines, deep in the registry it is written that the object is located on Server A.

    Now simply re-registering the object in Server B should cause the clients of Server B to call the local object. However, to make other clients to point to server B, you must go through the process of creating an MTS/COM+ package on Server B that will include the object, export the package, and then install the package on every client machine. Then all of the clients will know that the object is now on server B.

    Again, the client program does not even need to know where the object is actually located. It has to be in the registry.

    Hope it helps.
    Abu Haider
    ____________________________
    100% Data Validation for the MS DataGrid Control. Plus Support for Custom and Foreign Lists, DatePicker and much more...
    The DataGridEnhancer


    I often point to a place where the problem has been discussed, instead of giving you the code that solves it. This is for good, may be you will understand some day...

  3. #3

    Thread Starter
    Lively Member
    Join Date
    Jun 2000
    Location
    A caravan park in the Midlands (UK)
    Posts
    101
    Thanks Abu.... I've now moved the DLL's to another server and everything is running fine. I found the create package routine you referred to ('export') in Component Services, the package that was used previously must've been removed at some point.

    Thanks for your help.
    Anakim

    It's a small world but I wouldn't like to paint it.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width