2010-07-05 13 views
10

Opracowuję aplikację w VS2010 i kompiluję ją dla .NET 4.0 jako ramy docelowej. Po integracji biblioteki do mojej aplikacji, pojawia się następujący komunikat o błędzie przy próbie kompilacji:Zmniejszenie aplikacji z .net 4.0 na 3.5

tryb mieszany zespół jest zbudowany na wersji „V1.1.4322” w czasie rzeczywistym i nie może być załadowany w środowisku wykonawczym 4.0 bez dodatkowe informacje konfiguracyjne.

Biblioteka działa dobrze pod .NET 3.5, ale kiedy zmienić ramy docelowej do .NET 3.5, pojawia się następujący błąd dla wszystkich moich .resx pliki:

Error 1 Odwołanie do obiektu nie ustawione na instancję obiektu.

Próbowałem ctrl-h Wersja = 4.0.0.0 do wersji = 3.5.0.0, ale to nie wydaje się działać. Czy jest coś, co mogę zrobić, aby stworzyć nową aplikację?

Odpowiedz

5

Powinieneś być w stanie to zrobić poprzez ustawienia konfiguracyjne w app.Config.

Po prostu dodaj flagę useLegacyV2RuntimeActivationPolicy="true" do swojego appConfig in the startup section. To powoduje, że środowisko wykonawcze .NET 4 obsługuje starszych zespołów mieszanych.

8

Otwórz plik .resx za pomocą edytora XML zamiast edytora zasobów i wyszukaj System.Windows.Forms, Version=4.0.0.0. Powinny być 2 wystąpienia tego ciągu. Zamień 4.0.0.0 na 2.0.0.0 i zapisz plik. Twoje zasoby powinny teraz działać poprawnie.

pamiętać, że można również wrócić do .NET 4 i spróbuj dodać następujące do app.config aby umożliwić starsze zespoły do ​​pracy w nowym środowisku wykonawczym:

<configuration> 
    <startup useLegacyV2RuntimeActivationPolicy="true"> 
    <supportedRuntime version="v4.0"/> 
    </startup> 
</configuration> 
2

Otwórz właściwości projektu. Następnie wybierz Zasoby. Usuń wszystkie obrazy zasobów i wstaw je ponownie. teraz skompiluj go. Twój projekt działa teraz .. :)

Powiązane problemy