Symptomy
Rozpatrzmy następujący scenariusz:
-
Tworzenie projektu Instalatora programu Microsoft Visual Studio 2008, a następnie zainstaluj wygenerowany plik MSI ścieżka instalacji.
-
Projekt instalacji migrację do programu Visual Studio 2010, a następnie należy wykonać następujące czynności dla głównych uaktualnienia:
-
Możesz zmienić pole głównych właściwości ProductVersion .
-
Możesz zmienić właściwości ProductCode .
-
Właściwość RemovePreviousVersions jest ustawiona na wartość True.
-
-
Odbuduj projekt instalacji, a następnie zainstaluj wygenerowany plik MSI na tej samej ścieżce instalacji.
W tym scenariuszu pliki i klucze rejestru dla ścieżki instalacji znikają nieoczekiwanie.
Przyczyna
Ten problem występuje, ponieważ inny algorytm mieszania jest używany do tworzenia identyfikatorów GUID w Visual Studio 2010. Podczas instalowania pliku MSI, który jest tworzony z projektu programu Visual Studio 2010 Instalatora pliku MSI określa, że identyfikator GUID został zmieniony i usunie pliki i klucze rejestru dla ścieżki instalacji na podstawie sekwencji projektu.
Rozwiązanie
Aby rozwiązać ten problem, należy zastosować tę poprawkę. Ta poprawka wprowadza BackwardCompatibleIDGeneration właściwość. Domyślnie ta właściwość jest ustawiona na wartość False. Przed dokonaniem kompilacji projektu Instalatora w Visual Studio 2010, trzeba jawnie ustawić właściwość BackwardCompatibleIDGeneration na wartość True w celu włączenia tej poprawki.
Informacje o poprawce
Obsługiwana poprawka jest udostępniana przez firmę Microsoft. Jednak ta poprawka jest przeznaczona do usunięcia tylko problemu opisanego w tym artykule. Zastosuj poprawkę tylko w systemach, w których występuje problem opisany w tym artykule. Ta poprawka może być wciąż w fazie testowania. Jeśli dany system nie jest poważnie narażony na ten problem, firma Microsoft zaleca, aby poczekać na następną aktualizację oprogramowania zawierającą tę poprawkę. Aby natychmiast rozwiązać ten problem, skontaktuj się z biurem obsługi klienta Microsoft w celu uzyskania poprawki. Aby uzyskać pełną listę numerów telefonów działu obsługi klienta firmy Microsoft lub utworzyć osobne zlecenie usługi odwiedź następujące witryny firmy Microsoft:
http://support.microsoft.com/contactus/?ws=supportUwaga W wyjątkowych przypadkach użytkownik telefonujący do pomocy technicznej może być zwolniony z opłaty, jeżeli wykwalifikowany pracownik pomocy technicznej firmy Microsoft ustali, że określona aktualizacja umożliwia rozwiązanie zgłoszonego problemu. Koszty obsługi zwykłych zastosuje się do dodatkowych pytań i problemów, których nie można rozwiązać przy użyciu określonej aktualizacji. Aby pobrać tę poprawkę z galerii kodów MSDN, odwiedź następujące witryny firmy Microsoft:
http://code.msdn.microsoft.com/KB2418919Uwaga Galerii kodów MSDN zawiera listę języków, dla których dostępna jest poprawka. Jeśli na liście język nie jest widoczny, to dlatego stronie resource galerię kodu nie jest dostępna dla danego języka. Lub tę poprawkę można pobrać z następującej witryny Microsoft Connect:
https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=32676
Wymagania wstępne
Aby zastosować tę poprawkę, musi mieć zainstalowany program Visual Studio 2010.
Informacje dotyczące ponownego uruchamiania
Może być konieczne ponowne uruchomienie komputera po zastosowaniu tej poprawki. Firma Microsoft zaleca, aby zakończyć wszystkie wystąpienia programu Visual Studio lub aplikacji Microsoft.NET Framework, przed zastosowaniem tej poprawki.
Informacje dotyczące zastępowania poprawek
Ta poprawka nie zastępuje wcześniej wydanej poprawki.
Informacje dotyczące pliku
Wersja globalna tej poprawki instaluje pliki, których atrybuty wymieniono w poniższych tabelach. Daty i godziny odpowiadające tym plikom są podane w formacie uniwersalnego czasu koordynowanego (UTC, Coordinated Universal Time). Daty i godziny odpowiadające tym plikom na komputerze lokalnym są wyświetlane w formacie czasu lokalnego, wraz z Twoim bieżącym bias czasu letniego (DST). Dodatkowo, daty mogą ulec zmianie podczas wykonywania pewnych operacji na plikach.
Nazwa pliku |
Wersja pliku |
Rozmiar pliku |
Data |
Godzina |
Platforma |
---|---|---|---|---|---|
Dpca.dll |
10.0.30319.464 |
236,872 |
11-May-2011 |
13:08 |
x86 |
Dpdpl.dll |
10.0.30319.464 |
145,232 |
11-May-2011 |
13:08 |
x86 |
Dpdpl.dll |
10.0.30319.464 |
145,744 |
11-May-2011 |
13:08 |
x86 |
Dpdpl.dll |
10.0.30319.464 |
146,256 |
11-May-2011 |
13:08 |
x86 |
Dpdpl.dll |
10.0.30319.464 |
147,280 |
11-May-2011 |
13:08 |
x86 |
Dpdpl.dll |
10.0.30319.464 |
147,792 |
11-May-2011 |
13:08 |
x86 |
Dpdpl.dll |
10.0.30319.464 |
148,304 |
11-May-2011 |
13:08 |
x86 |
Dpdpl.dll |
10.0.30319.464 |
904,520 |
11-May-2011 |
13:08 |
x86 |
Dpedt.dll |
10.0.30319.464 |
696,136 |
11-May-2011 |
13:08 |
x86 |
Dpplg.dll |
10.0.30319.464 |
2,606,408 |
11-May-2011 |
13:08 |
x86 |
Dpprj.dll |
10.0.30319.464 |
1,229,640 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
163,152 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
163,664 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
167,248 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
168,272 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
178,000 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
178,512 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
180,560 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
181,072 |
11-May-2011 |
13:08 |
x86 |
Dpprjui.dll |
10.0.30319.464 |
181,584 |
11-May-2011 |
13:08 |
x86 |
Projectsidl3.tlb |
Nie dotyczy |
2 816 |
10-May-2011 |
03:47 |
Nie dotyczy |
Obejście
Aby obejść ten problem, użyj jednej z następujących metod:
-
Metoda 1: Ręcznie zmienić wszystkie identyfikatory GUID składnika być taka sama, jak w przypadku programu Visual Studio 2008.
-
Metoda 2: Zsekwencjonować akcji RemoveExistingProducts po InstallInitialize Akcja. Daje to pewność, że starsze pliki są usuwane i ponownym przez nowszą wersję.Uwaga Ta metoda nie działa po udostępnieniu składników.
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji „Dotyczy”.
Więcej informacji
Aby uzyskać więcej informacji dotyczących terminologii aktualizacji oprogramowania, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
824684 Opis standardowej terminologii używanej do opisywania aktualizacji oprogramowania firmy Microsoft