0

私は正常に動作するグローバル登録ホットキーを持っています。このホットキー内には次のコードがあります:

        {
            Clipboard.SetDataObject(Properties.Resources.cookie);
            SendKeys.SendWait("^v");
        }

クッキーの画像をクリップボードに追加し、アクティブ化されたウィンドウに貼り付けます。ただし、最初にのみ正しく機能し、画像を貼り付けます。

2 回目の取得: System.Windows.Forms.dll で「System.Runtime.InteropServices.COMException」タイプの最初のチャンス例外が発生しました

これがポップアップします:

ここに画像の説明を入力

ただし、これはプログラムにこのオプションがある場合にのみポップアップし、そうでない場合は何も起こりません (ただし、例外エラーが発生します)。

しかし、手動でctrl + Vを押すと...毎回動作します:S

4

1 に答える 1

0

クラスには、より適切に機能する別のClipboardメソッドがあります。

Clipboard.SetImage(...);

設定DataObjectのみの場合は、オブジェクトの種類も指定できます。これも実行可能なオプションであり、おそらくまったく同じように機能しますが、適切な方法を使用する方が..まあ..より適切です。

もう 1 つの重要な注意事項:

Clipboardメソッドは「Single Apartment」スレッドでのみ機能するため、UI スレッドでアクションを実行していない場合は、スレッドの状態を に設定する必要がありますSTA

于 2013-05-11T15:14:06.453 に答える