Bastien Continsouzas wrote:
> I know that this question arise every now and then but since the posts
> I found were quite old, I give it a try.
>
> I am working on a Linux project that needs to collect data from a
> Windows server via DCOM. I need to be able to access this DCOM
> connector from Linux.
>
> The Windows product was written by some other company and is installed
> on a Windows server that we are not supposed to modify. Changing OS is
> not an option (either for my program or for the windows box).
>
> Is there a way to run DCOM on Linux ? A free/opensource alternative
> would be better but I can consider a proprietary one.
>
> Has anybody already used Combridge by Octatec or Software AG's EntireX
> DCOM on Linux ? Is Wine a viable alternative ?
>
> Thanks
>
> Bastien Continsouzas
You don't actually need anything special to make use of DCOM. Assuming you
have taken care of the security/permissions side, then a php line such as,
$myshell = new COM("module to run","server&user&password");
is all that you need.
I thought that the implementation of COM in php allowed you to send the key
at the time of the request (I mean open the communications tunnel at the
same time as the call), but I just looked it up and it looks like I was
wrong, unless it was in one of the related libs or an encapsulated class
that I was reading at the time.
But then maybe that action was dropped in php 5, because as with the likes
of 'com_propget' these have been dropped to follow a truer OO syntax.
I don't know the setting up of the security side of a MS Win server, but
presumably as with remote unix/linux, you would just set up a secure tunnel
between host and client, I suspect also that you enter within some kind of
reduced shell which you must add permissions to to allow a remote system to
activate local processes.
I haven't programmed making use of DCOM myself, but I can see from a couple
of links I followed on this that they have been problems passing complex
objects (as opposed to just standard data types), C++ and Perl have a lib
just for that purpose which I suspect is the same (or very simmilar) lib
that php uses.
|