これまでに質問されていますが、私が見た方法では何をしたいのですか?現在、私はWindowsフォームを持っています.EXEを実行してフォーム自体を起動すると、Outlookからの電子メールを問題なくドロップできます。しかし、私が探しているのは、ユーザーがOutlookから直接.EXEファイルのアイコンにメッセージをドロップするときに、この機能を持つことです。ファイルをローカルに保存してアイコンにドロップすると、これをうまくやることができますが、Outlookからまっすぐに、私はそれを通る円が描かれます。この仕事をするためにアプリに設定する必要のあるプロパティはありますか?このコードを使用して、メッセージをフォームウィンドウにドロップして作業させました。Outlookのウィンドウから.NETのアプリケーション.EXEファイル(またはアイコン)へのドラッグアンドドロップ
http://www.codeproject.com/Articles/28209/Outlook-Drag-and-Drop-in-C
これは、アイコンの上に落下、私が書いたコードです。
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
var form = new Form1();
if (args.Length > 0)
{
form.ProcessCommandLine(args[0]);
}
Application.Run(form);
}
}
public void ProcessCommandLine(string commandLine)
{
lstFiles.Items.Clear();
var fileAttributes = File.GetAttributes(commandLine);
if (fileAttributes.HasFlag(FileAttributes.Directory))
{
ProcessDirectory(commandLine);
}
else
{
ProcessFile(commandLine);
}
}
ご協力いただきありがとうございます。
ドラッグをして上に落下:
http://www.howtogeek.com/howto/windows-vista/keep-your-vista-desktop-clean-with-the-magic-folder/
は、そしてここで、著者へのリンクです(多分彼はあなたがうまく頼めばソースコードを共有しましょう) exeは完全にエクスプローラ(またはあなたのexeを表示しているもの)によって制御されます。それはあなた自身のコードとは関係ありません。 – adelphus
@adelphus ok、変更が必要な設定はありますか?私が言ったように、 "ファイル"のためにそれはうまく動作しますが、アイコンへの見通しからは、ダイスはありません。情報ありがとう –
あなたは誤解しています。エクスプローラはファイルを操作するようにコード化されています。内部でエクスプローラがOutlookアイテムを処理する方法を知らないため、変更できる設定はありません。あなたには、アイテムはファイルのように見えるかもしれませんが、エクスプローラには全く違うものがあります。私はあなたの質問に対する解決策があるとは思わない。 – adelphus