[ros-dev] Re: [ros-svn] [ea] 18050: Required for binary compatibility with MS KERNEL32.DLL.

Alex Ionescu ionucu at videotron.ca
Sun Sep 25 23:53:19 CEST 2005


Emanuele Aliberti wrote:

> Alex Ionescu wrote:
>
>> I don't understand this change; it is incorrect. MS kernel32.dll 
>> sends the name of the port.
>>
>
> It seems that KERNEL32, the 1st (or the 2nd) time, sends L"\\Windows", 
> but, the 2nd (or the 1st) time, sends NULL.

The 2nd call (the one that connects to the console server in 
basesrv.dll) sends NULL, yes, but it's not CsrpConnectToServer's job to 
automagically assume you want \\Windows. That is a total hack, so I just 
wanted to point that out... on Windows, it will actually probably 
-break- ntdll compatibility, since windows's ntdll merrily sends uses 
the NULL, while we'll end up adding \Windows incorrectly.

> This happens during the DLL initialization. As you and other stated, 
> this is probably related to the SM managing subsystem IDs in pairs 
> (2+3 for Win32) and not to the servers (Win32 has 1+3 servers hosted 
> by the CSR).
>
> N.B. Still trying to understand how everything get glued.
>
Best regards,
Alex Ionescu


More information about the Ros-dev mailing list