タイトル : Re^2: ポータブルデバイスのフォルダパス取得 投稿日 : 2014/11/10(Mon) 09:35 投稿者 : NANA
花ちゃん 様 ご連絡ありがとうございます。 連絡が遅くなり申し訳ありません。 スマートフォンをパソコンで接続するとMTPデバイスとなります。 >何階層以上になると取得できないのでしょうか? >(試した限りでは、20 階層でも取得できましたが) 取得できる場合:コンピューター\SC-02C\Phone\○○○ 取得できない場合:コンピューター\SC-02C\Phone\○○○\■■■ 4階層以上になると取得出来ておりません。 >パス文字列長の制限(255? 文字以上)が超えているのではないのですか? 255文字以上になっていました。310文字です。 パスの文字列長の255文字を超えると駄目なのでしょうか? >それとも特殊なフォルダーとかの場合だけとかではないですか? MTPデバイスのフォルダの4階層以上で取得した時だけエラーとなります。 また仮想ディレクトリ扱いになっており、フォルダパスはIDで表示されております。 >実際にエラーが発生して止まってしまったところのコード Dim Shell As Object Dim f As Object Set Shell = CreateObject("Shell.Application") Set f = Shell.BrowseForFolder(0, "フォルダを選んでください", &H200, "") ←ここでエラーになります。 MsgBox f.Items.Item.Path よろしくお願いいたします。 |