みなさん、はじめまして。
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 オブジェクトを渡す
よろしくお願いします。