2

WPFベースのActiveXコントロール(COM相互運用機能)があります。コントロールを登録することで正しく使用できます。(マニフェストファイルを使用して)Reg-Free-COMを実行しようとすると、コントロールがアクティブ化されているように見えますが、イベント(マウスクリック、RequestBringIntoViewなど)が応答しません。興味深いことに、ダブルクリックとタブキーが機能します。

私はこの記事で読んだhtt​​p: //blogs.msdn.com/karstenj/archive/2006/10/09/activex-wpf-gadget.aspx「...これらの利点には代償が伴います:ActiveXコントロールはレジストリに登録されているため、.msiなどの何らかのインストールが必要です。デフォルトのガジェットインストールプロセスではActiveXをインストールできません。ActiveXコントロールにreg-freeCOM経由でアクセスすることはできません。...」

誰かが同じような経験をしたことがありますか?誰かが何が起こっているのか説明できますか?

追加の詳細:
コントロールが登録された後にアクティブ化されると、COMクライアントのUIの一部として表示されます。コントロールはフォーカスを受け取りません、その要素はそれを受け取ります。

reg-free-comを使用すると、コントロールが正しくロードされません。1)コントロールは、サブ要素の代わりにフォーカスを受け取ります2)コントロールには、ウィンドウのデフォルトの色の代わりに黒の領域があります3)コントロールをタブインおよびタブアウトするか、ダブルクリックすると、サブ要素がフォーカスを受け取り、コントロールが開始しますイベントを受信すると、黒い領域が正しい色に置き換えられます

4

1 に答える 1

2

COMの登録時に設定されたmiscStatus属性がアクティブ化する必要があるため、コントロールが非アクティブであることがわかりました。それについては別の質問を投稿します。

于 2010-05-17T16:39:23.093 に答える