Udostępnij za pośrednictwem


Kontenery: pliki złożone

W tym artykule wyjaśniono składniki i wdrożenia plików złożonych oraz zalety i wady korzystania z plików złożonych w aplikacji OLE.

Rozpakowywanie plików są integralną częścią OLE.Służą one do ułatwienia transferu danych i przechowywanie dokumentów OLE.Rozpakowywanie plików są implementacja modelu aktywny składowania strukturalnego.Interfejsy zgodne istnieje serializacji tego wsparcia do pamięci masowej, strumienia lub obiektu pliku.Rozpakowywanie plików są obsługiwane w bibliotece Microsoft Foundation Class przez klasy COleStreamFile i COleDocument.

[!UWAGA]

Przy użyciu pliku mieszanek nie oznacza, że informacje pochodzą z dokumentu OLE lub złożonych dokumentów.Rozpakowywanie plików są tylko jednym z sposoby przechowywania dokumentów złożonych, OLE, dokumenty i inne dane.

Składniki mieszanek pliku

Implementacja OLE Rozpakowywanie plików używa trzech typów obiektów: obiektów strumienia, obiekty składowania i ILockBytes obiektów.Obiekty te są podobne do składników systemu standardowego pliku w następujący sposób:

  • Strumień obiektów, takich jak pliki, przechowywać dane dowolnego typu.

  • Obiekty pamięci masowej, jak katalogi, mogą zawierać inne obiekty składowania i strumienia.

  • LockBytes obiekty reprezentują interfejs między obiektami pamięci masowej i sprzętem fizycznym.Określają one, jak rzeczywista liczba bajtów są zapisywane niezależnie od urządzenia magazynującego LockBytes obiektu uzyskuje dostęp do takich jak dysk twardy lub obszar pamięci globalnej.Aby uzyskać więcej informacji o LockBytes obiekty i ILockBytes interfejs, zobacz OLE Programmer's Reference.

Zalety i wady Rozpakowywanie plików

Rozpakowywanie plików zapewniają korzyści nie są dostępne z wcześniejszych metody przechowywania plików.Obejmują one:

  • Dostęp do pliku przyrostowych.

  • Plik trybów dostępu.

  • Standaryzacja struktury plików.

Potencjalne wady Rozpakowywanie plików — duży rozmiar i wydajność zagadnień odnoszących się do składowania na dyskietki — powinno być uważane podczas decydowania o ich używać w aplikacji.

Przyrostowe dostęp do plików

Przyrostowe dostęp do plików jest automatyczne zaletą stosowania plików złożonych.Ponieważ plik złożony mogą być postrzegane jako "system plików w pliku", typy poszczególnych obiektów, takich jak strumieniowe lub składowanie, jest możliwy bez konieczności załadowania całego pliku.To znacznie zmniejszyć czas aplikacja potrzebuje dostępu do nowych obiektów do edycji przez użytkownika.Aktualizacja przyrostowa, oparte na tej samej koncepcji, oferuje podobne korzyści.Zamiast zapisywania całego pliku tak, aby zapisać zmiany wprowadzone do jednego obiektu OLE zapisuje tylko strumienia lub przechowywania obiektu edytowane przez użytkownika.

Tryby dostępu do pliku

Jest w stanie ustalić, kiedy zmiany do obiektów w pliku mieszanek są zobowiązane do dysku jest inną zaletą stosowania plików złożonych.Tryb, w którym pliki są dostępne, transakcyjnego lub bezpośredniego, określa, kiedy jest oznaczany.

  • Trybu transakcyjnego używa dwufazowe operacji, aby wprowadzić zmiany do obiektów w pliku mieszanek, utrzymując stare i nowe kopie dokumentów dostępnych aż użytkownik zdecyduje się zapisać lub cofnąć zmiany.

  • Tryb bezpośredni zawiera zmiany w dokumencie są one wytworzone, bez możliwości ich później cofnąć.

Aby uzyskać więcej informacji na temat trybów dostępu, zobacz OLE Programmer's Reference.

Normalizacji

Standardowe struktury plików pozwala różnych aplikacji OLE przejrzeć złożone pliki utworzone przez aplikacji OLE bez znajomości aplikacji, która faktycznie utworzono plik.

Rozmiar i zagadnienia dotyczące wydajności

Z uwagi na złożoność struktury przechowywania plik złożony i możliwość zapisania danych przyrostowo plików za pomocą tego formatu są zazwyczaj większe niż pozostałe pliki przy użyciu niestrukturalnych lub składowania "płaskie pliku".Jeśli aplikacja często ładuje i zapisuje pliki, przy użyciu plików złożonych mogą powodować znacznie szybciej niż pliki noncompound zwiększyć rozmiar pliku.Ponieważ plików złożonych mogą robić się duże, czas dostępu do plików przechowywanych na i załadować z dyskietki mogą również mieć wpływ, powoduje wolniejszy dostęp do plików.

Inny problem, który wpływa na wydajność jest fragmentacja plików związek.Rozmiar pliku złożonego zależy od różnicy między sektorami pierwszy i ostatni dysku używane przez plik.Pofragmentowany plik może zawierać wiele obszarów wolnego miejsca, które nie zawierają danych, ale są uwzględniane przy obliczaniu rozmiaru.W czasie użytkowania jest plikiem złożonym obszary te są tworzone przez wstawiania lub usuwania obiektów składowania.

Przy użyciu formatu plików złożonych danych

Po pomyślnym tworzenie aplikacji zawierającej klasy dokumentu pochodzące z COleDocument, upewnij się, że wywołuje konstruktor Twój dokument główny EnableCompoundFile.Kreator aplikacji tworzy aplikacji kontenera OLE, to wywołanie jest wstawiana automatycznie.

W OLE Programmer's Reference, zobacz IStream, IStorage, i ILockBytes.

Zobacz też

Informacje

Klasa COleStreamFile

Klasa COleDocument

Koncepcje

Kontenery

Kontenery: kwestie dotyczące interfejsu użytkownika