マウスを使用してコンソール アプリケーションにドラッグしたオブジェクトを取得する方法はありますか?
たとえば、ブラウザからのファイルまたは画像です。
Windows 7。
1 に答える
ドラッグしたオブジェクトのファイルパスを単純に貼り付けるのではなく、ファイルの内容をコピーするということですか?
ConEmu (私はその作者です) とFar Managerがあります。このリンクを使用すると、他の GUI ウィンドウから Far Manager パネルにファイルをドラッグしたり、その逆を行うことができます。
ここで読むことができる Far の短い紹介。
ConEmu で実行されている他のコンソール プログラムでは、ドラッグしたパスの単純な貼り付けが発生しました。
UPD
独自のコンソール アプリへのドラッグについて。Far Managerのプラグインドラッグ アンド ドロップがプレーン コンソールで何らかの形で機能します。秘訣は、コンソール上に非表示のウィンドウを作成し、マウス イベントをフックすることです (詳しくは調べていませんでした)。
ドラッグされたオブジェクトの URL については、すべてのフォーマットを列挙できる IDataObject::EnumFormatEtc があります。たとえば、FireFox から画像をドラッグすると、IDataObject には (さらに) *.url ファイルが含まれます。例については、ConEmu のソースを参照してください。
ただし、IExplore から画像をドラッグするのは難しい場合があります。IExplore ゾーンの制限により、ConEmu では機能しません。これをバイパスする方法がわからない:(