我有一個c#解決方案,包含兩個常規項目和一個安裝項目。其中一個常規項目是可執行文件,另一個是dll,我也在其他解決方案中使用。該dll項目依賴於某個事件日誌源,它可以登錄,並且由於該程序旨在由不允許創建日誌源的用戶運行,因此必須在安裝時創建該源。確保執行一個dll所需的安裝操作而不重複代碼
我通過爲我的可執行項目創建一個安裝程序類,在安裝程序中創建日誌源並將該安裝程序包含在安裝項目中的自定義操作中來完成此操作。這工作,但現在我必須爲每個其他項目創建一個類似的安裝程序,也使用該DLL。
最好的解決方案是,如果我可以爲dll編寫一個安裝程序,然後在安裝項目中爲自定義操作選擇dll。這樣我只需要一次說明日誌創建需求。但是,我無法爲安裝項目中的自定義操作選擇dll項目輸出。
另一個好的解決方案是,如果我能以某種方式指定可執行文件的安裝程序應該是可傳遞的,這樣它也可以執行可執行項目所依賴的任何項目的安裝操作,但我不知道如何指定該要求。
那麼我能做些什麼來避免在不同項目之間重複安裝代碼?
如何從想要寫入事件日誌源的程序創建事件日誌源,該DLL? (而不是所有的安裝項目和安裝程序混亂) – mtijn