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 tym temacie przedstawiono schemat opisu właściwości używany przez system właściwości Shell.
Wprowadzenie nowych funkcji dla systemu Windows Vista i nowszych wymagało rozszerzenia istniejącego systemu właściwości powłoki w celu:
- Obsługa rozbudowanego i rozszerzalnego systemu opisu właściwości, który udostępnia informacje o właściwościach, w tym nazwach wyświetlanych, typie wyświetlania, sortowaniu i zachowaniu grupy oraz innych atrybutach potrzebnych do prezentowania i obsługi właściwości.
- Obsługa listy dostępnych typów właściwości (która w połączeniu z interfejsem użytkownika pozwala na edytowanie tych typów w różnych widokach, takich jak widok listy, okienko podglądu, okna dialogowe właściwości itd.), które mogą być skojarzone z rozmaitymi właściwościami.
- Podaj listy opisu właściwości, które definiują zestaw właściwości wyświetlanych w różnych widokach.
- Podaj uproszczony interfejs, IPropertyStore, dzięki czemu procedury obsługi właściwości można zapisywać łatwiej i aby właściwości mogły być utrwalane w plikach.
- Obsługa procedur obsługi właściwości innych niż plik w celu uwidocznienia właściwości w widoku.
Te funkcje są osiągane dzięki architekturze, która zapewnia abstrakcyjny dostęp do właściwości elementu typu Shell. Ta abstrakcja jest nazywana systemem właściwości Shell.
- Jaki jest schemat opisu właściwości?
- Dlaczego warto używać schematu?
- Jakie są główne części schematu?
- zmiany dla systemu Windows 7
- Tematy pokrewne
Co to jest schemat opisu właściwości?
Podsystem schematu składa się z następujących elementów:
- Co najmniej jeden lub więcej plików schematu .propdesc definiujący opisy właściwości. Schemat opisu właściwości jest definiowany w kolekcji plików schematu XML (przy użyciu rozszerzenia pliku propdesc) w czasie wykonywania w systemie. Te pliki są ładowane z opóźnieniem, gdy część systemu właściwości wymaga ich.
- Pamięć podręczna schematu w RAM używana do przechowywania przetworzonych plików schematu, które obejmują wszystkie opisy atrybutów wprowadzone do podsystemu. Nie ma potrzeby ponownej analizy plików konfiguracji propdesc opisujących schemat. Aby uzyskać więcej informacji, zobacz PSRegisterPropertySchema, PSUnregisterPropertySchemai PSRefreshPropertySchema.
- Obiekt podsystemu, który implementuje IPropertySystem, który służy do uzyskiwania opisów właściwości lub pracy z nich.
- Obiekt podsystemu, który implementuje IPropertyDescription, który służy do informowania i działania na podstawie opisu właściwości.
- Obiekt podsystemu, który implementuje IPropertyDescriptionList, który jest używany jako kolekcja opisów właściwości.
Notatka
Należy dodać xmlns=http://schemas.microsoft.com/windows/2006/propertydescription do elementu głównego schematu w plikach .propdesc.
Dlaczego warto używać schematu?
Właściwości same w sobie nie są bezpieczne pod względem typów. Składnik może przypisać wartość liczbową do właściwości System.Author lub FILETIME sygnaturę daty do właściwości System.Music.AlbumTitle i bez żadnego wymuszania lub dodatkowych wskazówek, przechowalnie właściwości pozwolą na to. Dlatego potrzebujemy pojęcia , aby "schematyzować" właściwości, co prowadzi nas do podsystemu schematu.
Jakie są główne części schematu?
Schemat opisu właściwości używany przez system właściwości powłoki składa się z jednego elementu propertyDescriptionList, a także atrybutu schemaVersion, który wskazuje wersję tego formatu definicji schematu. Uwaga: wartość musi mieć wartość "1.0".
<!-- schema -->
<xs:element name="schema">
<xs:complexType>
<xs:sequence>
<xs:element ref="propertyDescriptionList" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="schemaVersion" type="xs:string"/>
</xs:complexType>
</xs:element>
Właściwość PropertyDescriptionList składa się z co najmniej jednego elementu propertyDescription, a także wydawcy i atrybutów produktu.
<!-- propertyDescriptionList -->
<xs:element name="propertyDescriptionList">
<xs:complexType>
<xs:sequence>
<xs:element ref="propertyDescription" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="publisher" type="xs:string"/>
<xs:attribute name="product" type="xs:string"/>
</xs:complexType>
</xs:element>
pl-PL: propertyDescription składa się z jednego searchInfo oraz zero lub jednego z labelInfo, typeInfoi displayInfo, a także z atrybutów: formatID, propID, propstroraz name.
Powinien istnieć jeden element propertyDescription dla każdej unikatowej nazwy właściwości kanonicznej, która ma być dostępna w systemie. Atrybuty ciągu mają limit 512 znaków. Wartości dłuższe niż 512 znaków są obcinane.
<!-- propertyDescription -->
<xs:element name="propertyDescription">
<xs:complexType>
<xs:all>
<xs:element name="description" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element ref="searchInfo" minOccurs="1" maxOccurs="1"/>
<xs:element ref="labelInfo" minOccurs="0" maxOccurs="1"/>
<xs:element ref="typeInfo" minOccurs="0" maxOccurs="1"/>
<xs:element ref="displayInfo" minOccurs="0" maxOccurs="1"/>
</xs:all>
<xs:attribute name="formatID" type="upcase-uuid" use="required""/>
<xs:attribute name="propID" type="xs:nonNegativeInteger" use="required""/>
<xs:attribute name="name" type="canonical-name" use="required"/>
</xs:complexType>
</xs:element>
Zmiany w systemie Windows 7
Schemat opisu właściwości został zmieniony dla systemu Windows 7. Są to zmiany niepowodujące niezgodności. Jeśli element lub atrybut właściwości nie jest już obsługiwany w systemie Windows 7, system operacyjny Windows 7 ignoruje element lub atrybuty systemu Windows Vista. Podobnie system Windows Vista ignoruje również nowe elementy właściwości lub atrybuty systemu Windows 7.
Jednak aktualizowanie właściwości niestandardowych dla systemu Windows 7 jest zalecane w celu uzyskania lepszego i bardziej spójnego środowiska użytkownika.
Poniżej przedstawiono nowe elementy i atrybuty:
- relatedPropertyInfo i relatedProperty elementów
- element obrazu
- mnemonics atrybut elementu searchInfo
- mnemonics atrybut elementu wyliczenia
- searchRawValue atrybut elementu typeInfo
Zmieniono następujące elementy i atrybuty:
- wyliczanalista, wyliczenie i elementy enumRange
- drawControl, element
- element edycji controlki
- atrybut propID elementu opisu nieruchomości
- columnIndexType atrybut elementu searchInfo
Usunięto następujące elementy i atrybuty:
- queryControl element
- isQueryable atrybut elementu typeInfo
- includeInFullTextQuery atrybut elementu typeInfo
Tematy pokrewne