2011-08-22 8 views
8

Widziałem kilka pytań here i there o tworzeniu źródeł dziennika zdarzeń za pomocą WiX. To, co mnie zastanawia, to dlaczego wymagane jest util:EventSource/@EventMessageFile. To irytujące, gdy trzeba go podać, gdy nie potrzebujesz pliku z wiadomościami do zapisywania wpisów w dzienniku zdarzeń, a abstrakcja oferowana przez .NET System.Diagnostics.Trace nie ujawnia możliwości korzystania z jednego.Utwórz źródło EventLog w WiX bez pliku komunikatu zdarzenia

Standardowa rada wydaje się być użycie przeszukiwanie katalogów, aby ustawić atrybut do FrameworkEventLogMessages.dll, ale nikt nie powtarzając tę ​​mantrę zawsze daje żadnego uzasadnienia dla niego.

Skoro nie używasz (przetestowanych, niezawodnych) niestandardowych akcji dostarczanych z WiX, czy istnieje sposób na obejście tego wymogu?

I dlaczego autorzy zarządzanych aplikacji, które nie korzystają z tego aspektu dziennika zdarzeń, odczuwają takie bóle (najwyraźniej) bezsensownie odwołują się do biblioteki DLL, a nie do własnych plików wykonywalnych?

Odpowiedz

9

Wymagany jest plik komunikatu o zdarzeniach na MSDN: http://msdn.microsoft.com/en-us/library/aa363680%28v=VS.85%29.aspx. .NET dostarcza je automatycznie - i tak, to EventLogMessages.dll - gdy używasz klasy Trace (lub EventLog, której używa Trace).

Zapraszam do pliku feature request, aby automatycznie dodać WiX do EventLogMessages.dll.

+1

To wiele wyjaśnia! Dziękuję za wyjaśnienie; Czuję się lepiej skacząc przez obręcz teraz wiem * dlaczego * jest tam :) Nie powinno to wymagać wiele wysiłku, aby skonfigurować rozwiązanie, które mogę wykorzystać w różnych projektach; Jestem pewna, że ​​są znacznie ważniejsze funkcje, na które mogą włożyć swój czas współpracownicy WiX. – shambulator

+0

Powiedziałbym, że problemem jest coś więcej niż zespół frameworków .NET, który bardzo dobrze nie integruje swoich rzeczy z zespołem Windows. – gbjbaanb

Powiązane problemy