none
Drop Handler について RRS feed

  • 質問

  • みなさん、はじめまして。
    Windows XP Professional SP3 + Visual Studio 2008 Standard Ed. で開発を行っています。
    Shell の Drop Handler について、どなたか教えていただけませんでしょうか。

    Explorer で、何かしらのファイルを AAA.bat に Drag & Drop すると、実行前に確認のメッセージが表示されることもなく AAA.bat が実行されると思いますが、
    自作プログラムにて同様の処理を行おうとすると、

    プログラムから開く(O)
    キャンセル

    という二択のポップアップメニューが表示されます。
    Explorer 同様、このポップアップメニューを表示せずに実行したいのですが、どのようにすればよいでしょうか?

    自作プログラムで行っている処理をおおまかに説明しますと

    (1) IDropTarget の派生クラスの DragEnter() メソッドで IDataObject オブジェクトを取得
    (2) IDropTarget の派生クラスの Drop() メソッドで次の処理を行う
    (2-1) IShellFolder インターフェースの GetUIObjectOf メソッドを使用して、Drop 先ファイルの IDropTarget インターフェースを取得
    (2-2) (2-1) で取得した IDropTarget インターフェースの Drop メソッドに (1) で取得した IDataObject オブジェクトを渡す

    よろしくお願いします。

    2009年10月22日 13:49