Re: driver, not device, installation

Tyler Bell <[email protected]> Fri, 14 Sep 2018 16:10:27 -0500
Newsgroups gmane.comp.lib.libusb.devel.windows
Message-ID <CAGBb3WdrL0QV0NqCFHM_z-ybhPY4-XAqRYqxMtJLrDOdDnx4Dw@mail.gmail.com>
--===============3782527095678991974==
Content-Type: multipart/alternative; boundary="0000000000006717610575db412e"

--0000000000006717610575db412e
Content-Type: text/plain; charset="UTF-8"

OK, I set up a new VM and it does indeed install correctly there, but does
not on my normal dev machine. I guess I need to figure out why it's not
installing on my normal machine.

On Wed, Sep 12, 2018 at 1:00 PM Tyler Bell <[email protected]> wrote:

>
> On Sun, Sep 9, 2018 at 8:55 PM Xiaofan Chen <[email protected]> wrote:
>
>> On Fri, Sep 7, 2018 at 10:38 PM Tyler Bell <[email protected]> wrote:
>> >
>> > From what I can tell, that is not, what I need. That targets the driver
>> to a device,
>> > which is what the bug 84 conversation indicates I should not do. I only
>> want the .sys and .dll in
>> > the correct windows directories and registered to the system. This is
>> complicated by the need for
>> > UAC and 32/64 bit divide(a 32 bit app cannot install drivers on a
>> 64-bit machine and and 64-bit
>> > app cannot run on a 32-bit machine).
>> >  These are not huge issues, but as libusb has already nicely solved
>> these concerns for "primary
>> > driver" installation, it would be great(and, it seems, trivial?) if we
>> could reuse the existing code for
>> > filter driver installation.
>>
>> If you install this file libusb-win32-devel-filter-1.2.6.0.exe, it
>> will do the necessary for you to put
>> the libusb0.sys and libusb0.dll in the right place. And it will create
>> the start-up menu for the
>> inf-wizard (not working for new version of Windows, that is why I
>> added libusbk-inf-wizard.exe
>> here as well and filter wizard which still works for Windows 10.
>> https://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/
>>
>> Or if you install libusbK-3.0.7.0-setup.exe (recommended over the
>> above package), it will install
>> libusb0.sys/libusbk.sys/libusb0.dll/libusbk.dll in the right place.
>> And in the end it will run the
>> filter wizard for you as well.
>> https://sourceforge.net/projects/libusb-win32/files/libusbK-release/
>
>
> Neither of those are working on my system. If I use
> libusb-win32-devel-filter-1.2.6.0.exe, I only get stuff under C:\Program
> Files\LibUSB-Win32, the DLL/SYS are not in the Windows folder.
> Subsequently, trying to install an INF as a filter driver, the device fails.
>
>
>>
>>
>> > Backing up a bit, I have to interface with a device that has a driver
>> from the manufacturer(FTDI
>> > USB-serial cables). The OEM driver is limited(but also required) so
>> I've augmented it w/ libusb.
>> > The best way to manage this on a client's machine that I can find is to
>> use libusb as a filter driver.
>> > However, to install libusb as a filter driver for a device, libwdi
>> assumes that libusb already exists
>> > on the client machine. This is not a good assumption to make for a
>> client machine. Infwizard doesn't
>> > seem capable of creating an inf for filter driver mode and I'm not sure
>> that, even if it did, it would copy
>> > the DLL&SYS files.
>>
>> If you use FTDI device, better way is to use libftdi-1.0 and it uses
>> libusb-1.0 API, there you
>> have the option of using different libusb-1.0 Windows backend, one of
>> the option is to use
>> usbdk (filter, similar to libusb-win32 filter but works better in new
>> Windows versions).
>>
>
> I would love to use libftdi, but I am stuck w/ the stock driver from FTDI.
> That is why I'm trying to use libusb as a filter driver; I need to add a
> bit of functionality to one tool, but there are a handful of other tools
> that use the same FTDI device and those are built w/ the FTDI driver.
>
>
>>
>> For usbdk, it is the same, you need to the 32bit/64bit installer first
>> (as admin) and then you
>> can use the command line to install/uninstall the filter.
>> https://github.com/daynix/UsbDk
>> https://github.com/daynix/UsbDk/releases
>>
>> You may need to use libusb-1.0.21 build with usbdk for now and not
>> libusb-1.0.22 due to
>> the following change. libftdi has not been updated to incorporate the
>> change.
>> https://github.com/libusb/libusb/issues/443
>>
>> Leagacy libftdi-0.1 uses libusb-0.1 API and you can use libusb-win32
>> filter with it but libftdi-0.1
>> is no longer maintained.
>>
>> --
>> Xiaofan
>>
>>
>> _______________________________________________
>> Libusb-win32-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel
>>
>

--0000000000006717610575db412e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">OK, I set up a new VM and it does indeed install correctly=
 there, but does not on my normal dev machine. I guess I need to figure out=
 why it&#39;s not installing on my normal machine.</div><br><div class=3D"g=
mail_quote"><div dir=3D"ltr">On Wed, Sep 12, 2018 at 1:00 PM Tyler Bell &lt=
;<a href=3D"mailto:[email protected]">[email protected]</a>&gt; wrote:<=
br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;borde=
r-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div dir=3D"ltr"><=
br><div class=3D"gmail_quote"><div dir=3D"ltr">On Sun, Sep 9, 2018 at 8:55 =
PM Xiaofan Chen &lt;<a href=3D"mailto:[email protected]" target=3D"_blank"=
>[email protected]</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quot=
e" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204)=
;padding-left:1ex">On Fri, Sep 7, 2018 at 10:38 PM Tyler Bell &lt;<a href=
=3D"mailto:[email protected]" target=3D"_blank">[email protected]</a>&g=
t; wrote:<br>
&gt;<br>
&gt; From what I can tell, that is not, what I need. That targets the drive=
r to a device,<br>
&gt; which is what the bug 84 conversation indicates I should not do. I onl=
y want the .sys and .dll in<br>
&gt; the correct windows directories and registered to the system. This is =
complicated by the need for<br>
&gt; UAC and 32/64 bit divide(a 32 bit app cannot install drivers on a 64-b=
it machine and and 64-bit<br>
&gt; app cannot run on a 32-bit machine).<br>
&gt;=C2=A0 These are not huge issues, but as libusb has already nicely solv=
ed these concerns for &quot;primary<br>
&gt; driver&quot; installation, it would be great(and, it seems, trivial?) =
if we could reuse the existing code for<br>
&gt; filter driver installation.<br>
<br>
If you install this file libusb-win32-devel-filter-1.2.6.0.exe, it<br>
will do the necessary for you to put<br>
the libusb0.sys and libusb0.dll in the right place. And it will create<br>
the start-up menu for the<br>
inf-wizard (not working for new version of Windows, that is why I<br>
added libusbk-inf-wizard.exe<br>
here as well and filter wizard which still works for Windows 10.<br>
<a href=3D"https://sourceforge.net/projects/libusb-win32/files/libusb-win32=
-releases/" rel=3D"noreferrer" target=3D"_blank">https://sourceforge.net/pr=
ojects/libusb-win32/files/libusb-win32-releases/</a><br>
<br>
Or if you install libusbK-3.0.7.0-setup.exe (recommended over the<br>
above package), it will install<br>
libusb0.sys/libusbk.sys/libusb0.dll/libusbk.dll in the right place.<br>
And in the end it will run the<br>
filter wizard for you as well.<br>
<a href=3D"https://sourceforge.net/projects/libusb-win32/files/libusbK-rele=
ase/" rel=3D"noreferrer" target=3D"_blank">https://sourceforge.net/projects=
/libusb-win32/files/libusbK-release/</a></blockquote><div><br></div><div>Ne=
ither of those are working on my system. If I use libusb-win32-devel-filter=
-1.2.6.0.exe, I only get stuff under=C2=A0C:\Program Files\LibUSB-Win32, th=
e DLL/SYS are not in the Windows folder. Subsequently, trying to install an=
 INF as a filter driver, the device fails.</div><div>=C2=A0<br></div><block=
quote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1=
px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
&gt; Backing up a bit, I have to interface with a device that has a driver =
from the manufacturer(FTDI<br>
&gt; USB-serial cables). The OEM driver is limited(but also required) so I&=
#39;ve augmented it w/ libusb.<br>
&gt; The best way to manage this on a client&#39;s machine that I can find =
is to use libusb as a filter driver.<br>
&gt; However, to install libusb as a filter driver for a device, libwdi ass=
umes that libusb already exists<br>
&gt; on the client machine. This is not a good assumption to make for a cli=
ent machine. Infwizard doesn&#39;t<br>
&gt; seem capable of creating an inf for filter driver mode and I&#39;m not=
 sure that, even if it did, it would copy<br>
&gt; the DLL&amp;SYS files.<br>
<br>
If you use FTDI device, better way is to use libftdi-1.0 and it uses<br>
libusb-1.0 API, there you<br>
have the option of using different libusb-1.0 Windows backend, one of<br>
the option is to use<br>
usbdk (filter, similar to libusb-win32 filter but works better in new<br>
Windows versions).<br></blockquote><div><br></div><div>I would love to use =
libftdi, but I am stuck w/ the stock driver from FTDI. That is why I&#39;m =
trying to use libusb as a filter driver; I need to add a bit of functionali=
ty to one tool, but there are a handful of other tools that use the same FT=
DI device and those are built w/ the FTDI driver.</div><div>=C2=A0</div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-lef=
t:1px solid rgb(204,204,204);padding-left:1ex">
<br>
For usbdk, it is the same, you need to the 32bit/64bit installer first<br>
(as admin) and then you<br>
can use the command line to install/uninstall the filter.<br>
<a href=3D"https://github.com/daynix/UsbDk" rel=3D"noreferrer" target=3D"_b=
lank">https://github.com/daynix/UsbDk</a><br>
<a href=3D"https://github.com/daynix/UsbDk/releases" rel=3D"noreferrer" tar=
get=3D"_blank">https://github.com/daynix/UsbDk/releases</a><br>
<br>
You may need to use libusb-1.0.21 build with usbdk for now and not<br>
libusb-1.0.22 due to<br>
the following change. libftdi has not been updated to incorporate the chang=
e.<br>
<a href=3D"https://github.com/libusb/libusb/issues/443" rel=3D"noreferrer" =
target=3D"_blank">https://github.com/libusb/libusb/issues/443</a><br>
<br>
Leagacy libftdi-0.1 uses libusb-0.1 API and you can use libusb-win32<br>
filter with it but libftdi-0.1<br>
is no longer maintained.<br>
<br>
-- <br>
Xiaofan<br>
<br>
<br>
_______________________________________________<br>
Libusb-win32-devel mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blan=
k">[email protected]</a><br>
<a href=3D"https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel"=
 rel=3D"noreferrer" target=3D"_blank">https://lists.sourceforge.net/lists/l=
istinfo/libusb-win32-devel</a><br>
</blockquote></div></div></div>
</blockquote></div>

--0000000000006717610575db412e--


--===============3782527095678991974==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============3782527095678991974==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Libusb-win32-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libusb-win32-devel

--===============3782527095678991974==--