以下は、テキスト文字列を Windows クリップボードに入れる方法のコードです。アプリによってロックされないように、クリップボード リソースをすぐに閉じるコマンドを探しています。C# で明示的にクリップボードのリソースを閉じる方法を知っていますか?
これがコードです
String s = "Hello World";
Thread staThread3 = new Thread
(
delegate()
{
try { new SetClipboardHelper(DataFormats.Text, s).Go();}
catch (Exception ex) { /* Exception Handling */ }
}
);
staThread3.SetApartmentState(ApartmentState.STA);
staThread3.Start();
staThread3.Join();
// Here I would like to close the clipboard
// ????
これはクラス SetClipboardHelper のコードです
class SetClipboardHelper : StaHelper
{
readonly string _format;
readonly object _data;
public SetClipboardHelper(string format, object data)
{
_format = format;
_data = data;
}
protected override void Work()
{
var obj = new System.Windows.Forms.DataObject(
_format,
_data
);
Clipboard.SetDataObject(obj, true);
}
}