2008-08-19 13 views
8

Niedawno szukałem docelowego profilu klienta .NET dla aplikacji WPF, którą buduję. Jednak byłem sfrustrowany, aby zauważyć, że profil klienta jest ważna tylko dla następujących konfiguracjach OS:Czy warto kierować profil klienta .NET?

  • Windows XP SP2 +
  • Windows Server 2003 Edit:Appears profilu klienta nie zostanie zainstalowany w systemie Windows Serwer 2003.

Ponadto profil klienta to nie ważne dla wersji x64 lub ia64; i nie zainstaluje się, jeśli została zainstalowana jakakolwiek wcześniejsza wersja architektury .NET Framework..

Zastanawiam się, czy wysiłek dodania dodatkowych konfiguracji systemu operacyjnego do macierzy testów jest wart wysiłku. Czy dostępne są dane, które określają odsetek użytkowników, którzy mogą skorzystać z profilu klienta? Wierzę, że po zainstalowaniu platformy .NET Framework dodatkowe informacje są przekazywane do serwera WWW w ramach żądania internetowego, co oznacza, że ​​struktura jest dostępna. Oczywiście, wyobrażam sobie, że użytkownicy Windows XP SP2 bez zainstalowanego systemu .NET Framework będą dużą liczbą osób. Byłoby wtedy pytanie, czy moja aplikacja dotyczyła konkretnie tych osób.

Czy ktoś inny ustalił, czy warto dokładać starań, aby dotrzeć do określonych użytkowników?

Edycja: Wydaje się, że można uzyskać ostrzeżenie kompilatora, jeśli używasz funkcji nie zawartych w profilu klienta. Ponieważ zwykle używam ostrzeżeń jako błędów, mam nadzieję, że to wystarczy, aby zminimalizować testy w tej konfiguracji. Oczywiście ta konfiguracja będzie musiała zostać przetestowana, ale powinna być tak prosta, jak testowanie, czy instalacja/uruchomienie działa na XP z dodatkiem SP2 +.

Odpowiedz

5

Ostatecznie, to nie zaszkodzi żadnych użytkowników jeśli cel profilu klienta. Dzieje się tak dlatego, że profil klienta jest podzbiorem struktury .net v3.5 sp1, a jeśli wersja v1.5 sp1 jest już zainstalowana, nie trzeba niczego instalować.

Zespoły w profilu klienta są tymi samymi plikami binarnymi co pełna struktura, więc dopóki nie ładujesz zespołów z dynamicznego punktu widzenia, nie trzeba wykonywać żadnych dodatkowych testów.

Moim zdaniem jest tak, że jeśli nie należy używać złożeń, które NIE są w profilu klienta, należy go kierować.

Co do wymagań systemu operacyjnego, WPF nie będzie działać na systemie przed-XP sp2, więc jeśli potrzebujesz uruchomić na innych systemach operacyjnych, będziesz musiał użyć funkcji WinForm.

EDIT:

na IE, tak.Wysyła wersję .NET Framework jako część ciągu UA, np

To właśnie tak robi FF3 + 3.5SP1:

Mozilla/5.0 (Windows; U; Windows NT 6.0; en- US; rv: 1.9.0.1) Gecko/2008070208 Firefox/3.0.1 (.NET CLR 3.5.30729)

2

wierzę, że kiedyś został zainstalowany .NET Framework, dodatkowe informacje są przekazywane do serwera sieci Web jako część żądania sieci oznaczający, że ramy jest dostępny.

Na IE, tak. Wysyła wersję .NET Framework jako część ciągu UA, np .:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; .NET CLR 2.0.50727). 
3

Myślę, że ważne jest, aby kierować jak najwięcej użytkowników, jak to możliwe, czy kiedykolwiek za wysłaniem aplikacja bez jakiegokolwiek zarządzanego kodu? Możesz przekonwertować zarządzane aplikacje na czysty kod maszynowy przy użyciu narzędzi takich jak http://www.xenocode.com/ lub http://www.remotesoft.com/linker/, więc nie będziesz potrzebować żadnej platformy .NET na komputerach klienckich.