假設我有兩個用C#編寫的應用程序。第一個是引發名爲「OnEmailSent」的事件的第三方應用程序。在另一個應用程序中監聽事件
第二個是我寫的自定義應用程序,我想以某種方式訂閱「OnEmailSent」甚至是第一個應用程序。
有沒有什麼辦法可以將第二個應用程序附加到第一個應用程序的實例上來偵聽「OnEmailSent」事件?
因此,對於進一步澄清,我的具體情況是,我們已經寫在引發「OnEmailSent」事件C#的自定義第三方應用程序。我們可以看到事件存在使用反射器。
我們想要做的是在此組件發送電子郵件時發生其他一些操作。
我們可以想到的最有效的方法是能夠使用某種形式的IPC,如anders所建議的,並監聽由第三方組件引發的OnEmailSent事件。
因爲組件是用C#編寫的,我們正在編寫另一個C#應用程序,它可以將自己附加到正在執行的進程,並且當它檢測到OnEmailSent事件被引發時它將執行它自己的事件處理代碼。
我可能失去了一些東西,但是從我瞭解的遠程工作原理是,有將需要界定某種契約,客戶端可以訂閱的服務器。
我更想到某人寫了一個獨立的應用程序,例如outlook,這個應用程序暴露了我想從另一個應用程序訂閱的事件。
我想我想到的場景是.net調試器,以及它如何附加到執行程序集以檢查代碼,而它正在運行。