Re: Problem making device fully register it self



msports.dll will only arbitrate serial port names for pnp drivers, not
legacy drivers

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Bill McKenzie" <bm01_REMOVE_@xxxxxxx> wrote in message
news:eZOm46zFGHA.3944@xxxxxxxxxxxxxxxxxxxxxxx
> The port name is handed to the port driver by the serial port management
> code in the OS, namely msports.dll I believe. The driver reads this name
> from the device's (even virtual device's) registry location. This name,
> such as "COM5" is then used to create a symbolic link and added to the
> legacy SERIALCOMM registry key. The reason symbolic links and kludgey
> registry keys are used to allow legacy applications to access the port is
> due to legacy reasons. Serial ports date back to the original NT 3.x
> days. This was well before plug and play thus device interfaces did not
> exist.
>
> The source code for the serial driver is included with the DDK. You can
> follow what is done in this driver to see what a virtual serial port
> driver needs to do to make itself visible to the world.
>
> Bill M.
>
> <wilhelm.lundgren@xxxxxxxxx> wrote in message
> news:1137007433.236703.288570@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>> So far my research tells me:
>>
>> Using FastInst that came with DDK on an inf file makes my com port show
>> up in device manager. And adding the registry that Bill mentioned
>> (thanks btw) enables apps as hyperterminal to see that the comport is
>> available. As the code is now, i only set up the function pointers in
>> DriverEntry, when i run the FastInst on my .inf, magically the
>> adddevice function is called. Though, doing a Ioregisterdeviceinterface
>> followed by a enable does not make it possible to open the com port via
>> createfile. But by instead doing symbolic link makes this work. This
>> all is alittle wierd i guess...but it seems to do the trick. Im
>> guessing though, that the com port shown in device manager, is nothing
>> more than just an image, since the comport number there ( added
>> automaticly by FastInst?) doesnt matter, the active comport becomes the
>> one i do symbolic link to.
>>
>> Anyone has a clue on how this all is glued together? I sure dont ;)
>>
>> Cheers
>> /Wille
>>
>
>


.



Relevant Pages

  • Re: how to access the serial port exported functions in my applica
    ... you cannot access a serial port by loading the serial ... driver DLL into your application via LoadLibrary. ... I am trying to load com16550.dll using ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Can a USB driver exposed functions like RS232 COM port?
    ... I mean a Serial Appliation S/W talk to USB port? ... you can create a USB class driver which makes your cable ... If you would have all that but a serial port on hand held device, ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Can a USB driver exposed functions like RS232 COM port?
    ... the connection from USB to the serial port connected to whatever is on the ... you can create a USB class driver which makes your cable ... If you would have all that but a serial port on hand held device, ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Serial Communications - Lost Event
    ... "Completion of write" is a moment when all data from the app buffer is ... The driver can keep the data in its internal buffer ... > serial port monitoring and test applications. ... > of a serial port means when all of the data has been transfered. ...
    (microsoft.public.win32.programmer.kernel)
  • Re: Problem making device fully register it self
    ... if he is trying to use an AddDevice routine I assume it will be PnP. ... >> legacy drivers ... >>> The port name is handed to the port driver by the serial port management ...
    (microsoft.public.development.device.drivers)

Quantcast