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.
Serwery przetwarzania zapewniają szybkość i rozmiar programu obsługi obiektów z możliwością edycji serwera lokalnego. Dlaczego więc kiedykolwiek zdecydujesz się zaimplementować aplikację OLE jako serwer lokalny, a nie serwer przetwarzania? Istnieje kilka powodów:
- Bezpieczeństwo. Tylko serwer lokalny ma przestrzeń adresową odizolowaną od tego klienta. Serwer przetwarzania współudzieli przestrzeń adresową i kontekst procesu klienta i dlatego może być mniej niezawodny w obliczu błędów lub złośliwego programowania.
- Ziarnistość. Serwer lokalny może hostować wiele wystąpień jego obiektu na wielu różnych klientach, współużytkowanie stanu serwera między obiektami na wielu klientach w sposób, który byłby trudny lub niemożliwy, jeśli został zaimplementowany jako serwer przetwarzania, który jest po prostu biblioteką DLL załadowaną do każdego klienta.
- Zgodność. Jeśli zdecydujesz się zaimplementować serwer przetwarzania, zrezygnowasz ze zgodności z ole 1, który nie obsługuje takich serwerów. Nie będzie to istotne dla wielu deweloperów, ale jeśli tak jest, to jest to krytyczne znaczenie.
- Brak możliwości obsługi linków. Serwer w procesie nie może służyć jako źródło łącza. Ponieważ biblioteka DLL nie może być uruchamiana samodzielnie, nie może utworzyć obiektu pliku, z który ma być połączony.
Pomimo tych wad serwer w przetwarzaniu może być doskonałym wyborem dla jego szybkości i rozmiaru — jeśli spełnia wszystkie inne wymagania.
Tematy pokrewne