PDA

View Full Version : COM+ proxy app not installed



shlibanov
11-24-2004, 11:15 AM
Hello,

I have a problem when trying to install COM+ proxy application.

First, I created COM+ application with one component (dll) on my development machine.

Then I created new InstallShield Basic MSI project and check my application under Server Configuration/Component Services. On the Installation tab I check Proxy and uncheck Server boxes. After that I build setup.exe.

Finally, I tried to install this package on another machine. The installation process produced no errors, but when I checked Component Services administrative console I didn't found my proxy application. Also, I noticed that dll was successfully copied in "Program Files\ComPlus Application\{GUID}".

What I am doing wrong?

Thanks.

hidenori
11-29-2004, 05:56 PM
InstallShield installs DCOM settings to enable remote access from a client machine to your COM+ server application. It does not install COM+ proxy application.

Hidenori Yamanishi
Macrovision - Software Technologies Group

Tony Patterson
02-17-2005, 02:28 PM
To ressurrect this long dead thread...

If the DCOM information is installed rather than the actual proxy, how can we go about changing the REMOTESERVERNAME variable after installation?
We have clients who install multiple versions of our application server software and so want to be able to change where the clients are pointing to.

Cheers
Tony

hidenori
02-17-2005, 07:39 PM
Here is what you can do:

1. Open Control Panel | Administrative Tools | Component Services applet.
2. Expand "DCOM config" node.
3. Right-click on your application and select Properties.
4. Select the Location tab and change the value under the "Run application on the following computer" checkbox.

Hope this helps.

Tony Patterson
04-25-2005, 06:51 PM
Hi Hidenori,

During installation we want to point these proxies at the machine the COM+ applications are installed on. We don't know this until run-time and don't wish our clients to have to go and do the steps outlined above manually. How would you recommend to do this?

Thanks
Tony

hidenori
04-26-2005, 12:08 AM
You would need to have an end-user dialog that has an edit box associated with the REMOTESERVERNAME property. See the Managing COM+ Application Proxies topic in the InstallShield help library for more information.

Hope this helps.

Tony Patterson
04-26-2005, 12:45 AM
We have decided to store the servername in a central settings file, read that from any proxy installations via a custom action and store the value in the REMOTESERVERNAME property.

Thanks for your help :)

Tony Patterson
05-01-2005, 05:57 PM
In previous versions of our software we installed the application servers and proxies by running the msis as nested installs. This gave the client machines entries in their Component Services view. We decided to go with the new InstallShield Com+ mechanism for our latest release.

However I have been asked my my Project Manager and also by our consultants in the field as to why the proxy will no longer appear in component services. Is there some blurb somewhere I can quote as to why InstallShield decided to implement proxies via dcom? Or can I get something that I can pass on?

Thank you
Tony

hidenori
05-02-2005, 12:59 PM
We are using Microsoft's COMAdminCatalog object to deploy COM+ applications. However, it does not allow to add COM+ proxies as the ApplicationProxy property on the Applications collection is read-only. Hope Microsoft would address this issue in the future.

Tony Patterson
05-14-2005, 09:44 PM
Thanks Hidenori, I passed that information along.

I have noticed that when I add a component service application to my project and select it just to be installed as a proxy, that the dlls are installed to the client machine as well as the tlbs.

I tried removing the dlls from the project so that only the tlbs would be installed. But when I did this, the apps were no longer appearing under dcom.
Is there a way to only have the tlbs appearing on the proxy machines and not the dlls?

Reason I am asking this is that we are trying to limit the spread of when we need to patch our products. For example if a component service dll was modified but without an interface change, then only our application server machines would need to be patched. But if the dlls are necessary on the proxy machines, that means that every single client machine will need to be patched also.

Is there a solution for us to avoid this?

Cheers
Tony