Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W poniższych wytycznych omówiono sposób tworzenia własnych zestawów COM lub Win32 side-by-side. Może nie być konieczne utworzenie własnych zestawów równoległych, jeśli wymagane funkcje są udostępniane przez jeden z obsługiwanych zestawów równoległych firmy Microsoft. W tym przypadku należy użyć zestawów dostarczonych przez firmę Microsoft i stosować się do procedur używania równoległych zestawów w programie Using Isolated Applications and Side-by-side Assemblies.
Najpierw zastanów się, czy twój komponent jest odpowiednim kandydatem do montażu równoległego. Aby uzyskać więcej informacji, zobacz Czy należy podać składnik udostępniony jako zestaw równoległy?
Aby utworzyć zestaw równoległy, postępuj zgodnie z tymi wytycznymi:
- Zdecyduj, które zasoby mają być uwzględnione w zestawie. Należy pamiętać, że zestaw składa się z jednego lub kilku plików, które są zawsze udostępniane aplikacjom i klientom razem. Zestaw służy jako podstawowa jednostka używana do nazewnictwa, powiązania, przechowywania wersji, wdrażania i domyślnej konfiguracji. Ogólnie rzecz biorąc, jeśli nie ma pewności, czy dwa zasoby należą do tego samego zgromadzenia, zaleca się, aby były umieszczane w osobnych zgromadzeniach. Zazwyczaj zestawy równoległe składają się z pojedynczej biblioteki DLL.
- Utwórz manifest dla zestawu. Manifest powinien opisywać obiekt COM lub biblioteki typów w zestawie. Aby uzyskać więcej informacji o tym, co powinno być zawarte w manifeście zestawu, zobacz manifesty zestawów.
- Oceń użycie obiektów, gdy w systemie jest uruchamiana więcej niż jedna wersja zestawu. Ustal, czy różne wersje zestawu wymagają oddzielnych struktur danych, takich jak pliki mapowane w pamięci, nazwane kanały przesyłu danych, zarejestrowane komunikaty i klasy Windows, pamięć współdzielona, semafory, muteksy i sterowniki urządzeń. Wszystkie struktury danych używane w różnych wersjach kompilacji muszą być wstecznie kompatybilne. Zdecyduj, które struktury danych mogą być używane w różnych wersjach i które struktury danych muszą być prywatne dla wersji. Ustal, czy współużytkowane struktury danych wymagają oddzielnych obiektów synchronizacji, takich jak semafory i elementy muteksowe.
- Napisz bibliotekę DLL tak, aby dobrze działała jako komponent równoległy, przestrzegając wytycznych zawartych w Tworzenie biblioteki DLL dla komponentu równoległego.
- Utwórz i zdefiniuj zestaw plików nagłówków oraz funkcji pomocniczych, aby ułatwić wersjonowanie kluczy rejestru zawierających stan zestawu. Zestawy często zapisują ustawienia stanu w kluczach rejestru. Ustawienia rejestru muszą być zapisywane dla poszczególnych wersji, aby odizolować wiele wersji zestawu, które mogą być uruchamiane w tym samym czasie. Zaprojektuj zestaw równoległy i bibliotekę DLL, aby poprawnie przechowywać i obsługiwać stan zestawu podczas scenariuszy udostępniania równoległego. Postępuj zgodnie z wytycznymi w Tworzenie magazynu stanów dla zestawów równoległych.
- Deweloperzy aplikacji korzystających z zestawów prywatnych powinni zabezpieczyć katalog aplikacji. Jeśli aplikacja jest zainstalowana przy użyciu Instalatora Windows, katalog aplikacji można zabezpieczyć przy użyciu tabeli LockPermissions. Zazwyczaj system otrzymuje dostęp do odczytu, zapisu i wykonywania do prywatnych asemblerów; wszystkie inne procesy mają dostęp tylko do odczytu i wykonywania.
- Przetestuj zestaw przy użyciu scenariuszy z udostępnianiem równoległym, aby upewnić się, że jest to prawidłowy zestaw równoległy. Pomyślna instalacja zestawu nie jest wystarczająca, aby zagwarantować, że będzie działać zgodnie z oczekiwaniami.
- Przyjmij metodę numerowania aktualizacji dla zgromadzenia. Każdy zestaw jest skojarzony z czteroczęściowym numerem wersji. Od lewej do prawej części główne, pomocnicze, kompilacji i wersji są oddzielone kropkami. Zmień główną lub pomocniczą liczbę zestawu dla wersji niezgodnej z wcześniejszymi wersjami. Zmień tylko części kompilacji i poprawek dla zmian zgodnych z poprzednimi wersjami zestawu. Na przykład deweloper może przyjąć metodę numerowania, w której wszystkie numery wersji 1.0.0.* odnoszą się do aktualizacji wersji zestawu 1.0.0.0.