自定义USB驱动程序的Windows? 苹果电脑?

我想修改一个USB驱动程序,通过networking发送和接收USB数据。

举个例子,一个iMac和一台PC。 我有一个iPod插入我的电脑(在纽约)。 我希望我的iMac(位于洛杉矶)将iPod识别为插入本地USB端口,并能够与iPod通信。

忘记我的资格,或缺乏(我有背景的networking,iOS应用程序,我玩过Java和C)。

我可以从哪里获得可以修改的Windows驱动程序的源代码? 苹果系统?

任何提示或指示,以实现我的目标,也将不胜感激。

看起来人们正在想出一些你想要的东西。 如果你决定推出自己的,你要求的USB驱动源是libusb 。

在Mac OS X上,驱动程序建立在一个堆栈中。 你想要做的事情应该是相对简单的(在核心土地上没有什么是非常简单的)。 您需要创建一个可以通过以太网与PC进行通信的驱动程序,并且看起来像USB设备,以便与驱动程序相匹配的软件。 那么一切都会自动发生。

源代码可用于Apple的USB堆栈 。 您还应该阅读有关IOKit API和IOKit设备驱动程序指南和IOKit基础知识 。

哦,是的,你说你已经玩了Java和C.要在OS X上编写设备驱动程序,你需要学习一些C ++。

听起来很像这个产品 ,但是有些人不确定他们是否在广域网上工作。

我有一个大概的想法,但不是任何细节。 基本上,我会使用该平台的驱动程序开发工具包在客户机上编写USB设备仿真程序。 然后,我将虚拟设备添加到名为“网络USB主机”的系统,或类似的维护一个开放的端口来监听来自服务器的通信,并将其传递到您的虚拟USB设备。 IIRC,Windows DDK带有一个USB仿真框架,可以帮助你。

在服务器上,您必须挂接到USB子系统才能将原始USB数据包发送到客户端计算机。 libpcap和wireshark有USB捕捉设备,但我不确定这是否适用于winpcap和Windows版本的wireshark。

编辑:看看这个跨平台USB捕获的替代品。

您可以购买OSR USB学习套件: https ://www.osronline.com/custom.cfm?name = index_fullframeset.cfm&pageURL =https : //www.osronline.com/store/index.cfm

这实际上是具有已知接口的小型USB设备。 Windows驱动程序工具包(WDK)包含此设备的示例KMDF驱动程序: http : //www.microsoft.com/whdc/driver/wdk/

这是学习Windows驱动程序开发和USB驱动程序开发的好起点。 但是,它仍然远离您的问题解决方案。

你不能使用某种远程桌面?

我建议你去看看USBIP项目。 这在Linux和Windows上是可用的,但是不能清除MAC。 如果你可以得到一个为MAC安装的VHCI控制器驱动程序,我们可以启动启动USBIP的MAC。