Windows ポータブル デバイス用WPDUSB.SYS ドライバーの削除

影響を受けるプラットフォーム

クライアント - Windows 7
サーバー - Windows Server 2008 R2

機能への影響

重大度 - 低
頻度 - 低

Description

Microsoft は、Windows ポータブル デバイス (WPD) 用 Windows Vista USB ドライバー スタック (WPDUSB.SYS) のカーネル モード コンポーネントを汎用WINUSB.SYS ドライバーに置き換えています。 元のWPDUSB.SYS ドライバーとの通信は、プライベート I/O コントロール (IOCTL) コードを介して行われました。のサポートも削除されました。

これらの IOCTL コードのコンシューマーは、メディア転送プロトコル (MTP) の適切な解釈と実装を担当していたでしょう。 Windows Vista では、サード パーティ製アプリケーションによるこれらの IOCTL コードの使用はサポートされていませんでした。

影響の現れ

これらのプライベート IOCTL コードの可用性に依存するアプリケーションは、USB に接続された MTP デバイスにアクセスできなくなります。

対応策

プライベート IOCTL コードに依存するアプリケーションのユーザーは、USB 接続された MTP デバイスにアクセスするために、別のアプリケーション (またはアプリケーションの更新バージョン) を使用する必要があります。

解決策

アプリケーションでは、Windows ポータブル デバイス (WPD) API を使用して、WPD デバイスを検索して操作する必要があります。 WPD デバイスのかなりの割合は、PC との通信に MTP を実装していますが、WPD は MTP デバイスのみに限定されません。 さらに、プライベート IOCTL を介してデバイスに直接アクセスすると、アプリケーションが USB 接続デバイスとの通信のみに制限される場合、WPD API を使用すると、接続オプションの一覧が他の通信プロトコル (Wi-Fi など) に拡張されます。 まれに、アプリケーションが MTP 対応である必要がある場合、WPD API は未加工の MTP コマンドのパススルー メカニズムを提供します。

機能機能の活用

WPD API は、Windows XP (Windows フォーマット SDK 経由)、Windows Vista、Windows 7 でサポートされています。 WPD の Windows 7 実装では、Bluetooth 経由の MTP のサポートが追加されています。

Windows ポータブル デバイス