DOBON.NETプログラミング道掲示板

■34472 / 親記事)  WMPへno
  
□投稿者/ HeavyRocker 一般人(1回)-(2020/05/22(Fri) 05:11:49)
  • アイコン環境/言語:[Win10Home 64 ] 
    分類:[.NET] 

    下記のコードでExplorerにDragDropできています
    (LVItem.SubItems(4).Text がファイルのフルパス文字列です)

    '右ボタンでのドラッグのときはファイルのコピー
    Dim MydataObject As New DataObject
    Dim strFileList As New
    System.Collections.Specialized.StringCollection
    'ListViewの選択されている各Itemについて
    For Each LVItem As ListViewItem In Me.ListView1.SelectedItems
    strFileList.Add(LVItem.SubItems(4).Text)
    Next
    MydataObject.SetFileDropList(strFileList)
    ListView1.DoDragDrop(MydataObject, DragDropEffects.Copy)

    それなら WMP(WindowsMediaPlayer) にもできるはず! と思い
    WMPの再生リストにDragしてみると・・受け付けてくれません。
    (車両通行止めのマーク)

    Explorerが受け取ってくれているということで、一応VB上の規則は守って
    Drag開始していると思います。
    あとは受け取ってほしいWMP側の仕様が思惑と異なるのでは?と考えてしまいます。

    ただ、ExplorerからWMPへのDragDropはもちろんできているので、同じことを
    しているつもりなのですが・・



マルチポストを報告
違反を報告
引用返信 削除キー/
■34473 / ResNo.1)  途中で送信してしまいました
□投稿者/ HeavyRocker 一般人(2回)-(2020/05/22(Fri) 05:18:04)
  • アイコンNo34472に返信(HeavyRockerさんの記事)

    Titleは

     WMPへのDragDrop

    としたかったのですが途中で送信してしまいました。 すみません
違反を報告
引用返信 削除キー/
■34474 / ResNo.2)  Re[1]: WMPへのDragDrop
□投稿者/ 魔界の仮面弁士 大御所(1283回)-(2020/05/22(Fri) 09:04:08)
  • アイコンNo34472に返信(HeavyRockerさんの記事)
    > 下記のコードでExplorerにDragDropできています

    タイトルの WMP を WPF と見間違えました…。
    Wndows Forms アプリケーションの話でしたね。


    > 受け取ってほしいWMP側の仕様が思惑と異なるのでは?と考えてしまいます。

    たとえば、C:\Windows\Media\Alarm01.wav を Explorer から
    ドラッグした場合、ドロップデータの形式として、
    9 個から 18個程度程度のフォーマットが含まれていました。
    こちらで確認できたのは以下のものです。

     CFSTR_SHELLIDLIST
     CF_HDROP
     CFSTR_FILENAMEA
     CFSTR_FILECONTENTS
     CFSTR_FILENAMEW
     CFSTR_FILEDESCRIPTORW
     "UsingDefaultDragImage"
     "DragImageBits"
     "DragContext"
     "DragSourceHelperFlags"
     CFSTR_INDRAGLOOP
     "IsShowingLayered"
     "DragWindow"
     "IsComputingImage"
     CFSTR_DROPDESCRIPTION
     "IsShowingText"
     "ComputedDragImage"
     CF_HDROP_THUMBNAIL
     

    No34472 のコードの場合は、
     CF_HDROP
     CFSTR_FILENAMEW
     CFSTR_FILENAMEA
    しかありません。
    恐らく WMP が使っているのは、この 3 つ以外の何か…なのでしょう。

    もしもそれが CFSTR_SHELLIDLIST だとしたら、
    たとえばこのような手続になります。
    https://ja.stackoverflow.com/questions/63727/
違反を報告
引用返信 削除キー/
■34475 / ResNo.3)  Re[2]: WMPへのDragDrop
□投稿者/ HeavyRocker 一般人(3回)-(2020/05/23(Sat) 05:06:10)
  • アイコン魔界の仮面弁士さん ありがとうございます

    > ドロップデータの形式として、
    > 9 個から 18個程度程度のフォーマットが含まれていました。

    > もしもそれが CFSTR_SHELLIDLIST だとしたら、
    > たとえばこのような手続になります

    つまり、VB.NET の範囲内の話ではないということですね。
    相手側の仕様を熟知している必要がある、というのは
    もっともなことです。

    今回はあきらめます。
    ありがとうございました。

解決み!
違反を報告
引用返信 削除キー/



スレッド内ページ移動 / << 0 >>

このスレッドに書きこむ

Mode/  Pass/


- Child Tree -