Kami sedang menyebarkan beberapa mesin virtual dengan perangkat lunak robot yang melakukan tindakan di browser, dan kami mengalami masalah dengan beberapa di antaranya ketika mengakses clipboard untuk membaca atau menulis. Mereka menunjukkan "Tidak dapat membuka clipboard".
Jadi ada aplikasi lain yang memegang clipboard.
Bagaimana kita bisa men-debug itu? Apakah ada alat yang bisa memonitor itu? AFAIK ProcMon tidak melakukan pekerjaan itu.
Mesin adalah Windows XP.
windows
monitoring
clipboard
Áxel Costas Pena
sumber
sumber
Jawaban:
API Clipboard berasal dari Windows 3.0 (atau sebelumnya?) Dan dirancang dengan buruk. Sayangnya, alih-alih memiliki / menetapkan primitif, ia menggunakan buka / tutup, yang memungkinkan aplikasi untuk menahan aksesnya terlalu lama. Beberapa perbaikan dibawa oleh Vista ke penanganan rantai pemirsa, tetapi tidak ada API baru.
Dengan API yang ada, dimungkinkan untuk mengidentifikasi pemilik clipboard hanya jika pemilik itu juga memiliki setidaknya satu jendela terbuka. Jika pemilik tidak memiliki jendela, maka seseorang tidak beruntung.
Di utas Mengapa clipboard saya berhenti bekerja? , Jay Parzych telah menyumbangkan kode vbs berikut ini di mana fungsi GetClipboardLocker mengembalikan nama file proses memegang clipboard:
Sebuah fungsi yang sama C # dapat ditemukan di pos Dapatkan pemilik Clipboard Judul / Keterangan .
sumber