This answerは、WMIを使用してドライブ文字で接続されたUSB大容量記憶装置を検索する方法を説明していますが、添付されたMTPデバイスまたはPTPデバイスの名前(またはUNCパス)カメラやモバイルデバイスがドライブ文字なしでマウントされているため、ディレクトリをクロールしてイメージを検索できます。これどうやってするの?MTPおよびPTPデバイスの列挙方法
答えて
まず、MTPデバイス名を使用すると、ディレクトリをクロールしたり、単純なPCファイルシステムで使用する方法でイメージを検索することはできません。 Windowsエクスプローラからの単純な表示であり、実際の状態ではありません。
私はどのようにexeactlyデルファイでそれを行うのかわかりませんが、Windows Portable Devices APIがあり、それはすべてCOMを使用するので、私はそれがデルファイでも動作する方法がありますbeleave。
もう1つの方法として、libmtpを使用しています。これはプレーンなCライブラリです。間違いなくcan callです。デルファイのdllメソッドでヘルパーコードを使用しています。
名前だけが必要な場合は、SetupDiGetDeviceRegistryProperty WinApi関数を使用して、接続されているWPDデバイス(Windowsポータブルデバイス、MTPおよびPTPプロトコルを使用している)の名前を見つけることができます。
あなたはGUID_DEVINTERFACE_WPDでSetupDiGetClassDevsを呼び出す必要がまず(それはPortableDevice.hで定義されていますが、グーグル
{6AC27878-A6FA-4155-BA85-F98F491D4F33}で、それは簡単に見つけることができます)
その後のデバイス上で反復SetupDiEnumDeviceInfoは、CM_Get_Device_ID関数呼び出しとWPDのcathegoryから、各デバイスのIDを取得し、SPDRP_FRIENDLYNAMEでSetupDiGetDeviceRegistryPropertyにそれを渡す使用して(またはSPDRP_DEVICEDESC、多分あなたは、異なるパラメータを試してみてください)
この機能を使用してのサンプルの多くは、たとえば、ありますこの1つ: SetupDiGetDeviceProperty usage example
- 1. Mtp/Ptp Android
- 2. 列挙ダイナミックメンバー(および値)
- 3. WPDを持つすべてのMTP/PTPカメラのリスト
- 4. web.configでリストを定義および列挙する方法
- 5. エリクサー列挙、フィルタおよびグループ
- 6. 列挙型、シングルトンおよび逆シリアル化
- 7. バイナリ 'スイッチ'で反復および/または列挙するPythonic方法
- 8. フォントサイズおよびデバイス・ピクセル比
- 9. カラースキームのためのスウィフトの拡張および列挙
- 10. 整数、スキャナ、およびメニューオプションとしてのJavaの列挙型
- 11. 列挙型のElementCollectionsとQueryDSLおよびHibernateの比較
- 12. AndroidデバイスとのWindows MTP/WPD通信
- 13. 列挙子C++のsetterおよびgetterメソッド
- 14. 同じ名前の列挙型およびクラスメンバー関数
- 15. 乖離 - Eclipseで列挙型、インターフェイス、およびジェネリック
- 16. OpenFileDialog.InitialDirectoryをMTPデバイスに設定する
- 17. javaを使ってアクセスするmtpデバイス
- 18. MTPデバイスの入手方法C#を使用したストレージとストレージの容量
- 19. は、ループおよび方法
- 20. 機能および方法
- 21. ジャワ - インターフェースおよび方法
- 22. Androidデバイス:asura、eagle、およびka
- 23. SSRS、SSIS、SSAS、およびSQL Serverのすべてのインスタンスを列挙する方法
- 24. パスからWPDまたはMTPデバイスにファイルをコピーする方法
- 25. iPhoneおよびiPadデバイスの回転アニメーションを無効にする方法
- 26. Windows 8.1のPackage.appxmanifestにrfcommおよびgenericAttributeProfileデバイス機能を追加する方法。
- 27. 列挙型の操作:ヒストグラムのリスト表示、比較、およびビルド
- 28. C#でJSON.Netを使用して複雑なJSONオブジェクトをクエリおよび列挙する方法
- 29. Javaの列挙方法
- 30. ios開発デバイスでアプリケーションをバックアップおよび復元する方法は?
関連:https://stackoverflow.com/q/29144536/327083 –
関連(無回答):https://stackoverflow.com/q/29194124/327083 –
https://stackoverflow.com/q/8234407/327083 –