Re: start-up creating of virtual LPT2: port from USB prn by sergeir
sergeir
Thu Jul 29 01:24:48 CDT 2004
Hi David,
thank you for quickly taking a look at our problem.
Yes, we use a National Semiconductor Geode BSP, which is a
part of a platform builder 4.1 It is based on CEPC x86. We
tried to use generic CEPC BSP but got the same result.
To your question I can add that it is not that simple. The
difference, to my opinion, is in the fact, that the
platform is using persistent registry and it has ot be
used on boot up. In particular, customer saves printer
settings at the following key
HKLM/Drivers/BuiltIn/WBT_PRN# where # means the sequential
installed printer Nr.
Under this key there is a value name "DevicePath" and its
value data are something like "LPT#:" where # is one digit
number for the port, which uses the connected printer.
If that value data is LPT1: for parallel printer,
everything works fine, and saved into persistent the
installed printer are retained and survies reboot well.
If that value data are LPT2: for virtual parallel port,
created by CE for USB printer, then it works fine, but
does not survive reboot - registry is saved correctly, but
USB printer needs to be unlugged and re-plugged in to
start working. That re-plugging causes CE to create
virtual parallel port LPT2:, which is already listed in
that persistent key value data (even before that virtual
parallel port is created), and then it works just like
physical parallel port printer.
Sincerely
Sergei
>-----Original Message-----
>From software point of view, Re-inserted USB device
should be same as
>plug-in before booting up. The question is why first time
it does not
>enumerate this USB printer?
>Did you use CEPC platform?
>David Liao.
>"sergeir" <anonymous@discussions.microsoft.com> wrote in
message
>news:59e101c4749e$001b7230$a601280a@phx.gbl...
>> Hello experts,
>>
>> here is the question on CE 4.1.
>>
>> The scenarion in short is this. A customer has Windows
CE
>> 4.1 based device with USB port. The image we build for
>> them contains all drivers to support that port.
>> Customer conencts a USB printer to this USB port. Then
>> after a few seconds CE creates a virtual LPT2: port for
>> this USB printer. Customer then uses a control panel and
>> adds a new printer, as a parallel printer connected to
>> LTP2: port. And then saves settings into persistent
>> registry on flash disk. All works fine so far. Good !
>>
>> Now customer turns the power off on the device. The USB
>> printer is still connected. Then next day customer turns
>> power on back on the devices and it boots up into CE.
>> However, it was found that LPT2: virtual port isn't
>> created !
>> Further, it was found that if a customer disconnects a
USB
>> printer and then reconnects it back, then, after a few
>> seconds CE does create back again the virtual LPT2: port
>> for this printer.
>>
>> My question is that : how do we ask CE to create virtual
>> LPT2: on startup, if a USB printer is detected connected
>> and up ? Is that possible at all or not - I cannot get
>> definite information from the documentation. We need to
>> know this to tell customer that, say, USB printers
aren't
>> supported after reboot or so.
>>
>> PS. Windows CE 4.1, enterprise web pad-like application,
>> has control panel. Device has built-in one parallel port
>> and one USB port.
>>
>> Sincerely
>> Sergei
>
>
>.
>