Typy souborů
Toto téma vysvětluje, jak vytvořit nové typy souborů a jak přidružit aplikaci k typu souboru a dalším dobře definovaným typům souborů. Soubory se sdílenou společnou příponou názvu souboru (.doc, .htmlatd.) mají stejný typ. Pokud například vytvoříte nový textový editor, můžete použít existující .txt typ souboru. V jiných případech možná budete muset vytvořit nový typ souboru.
Toto téma je uspořádané takto:
- typy veřejných a privátních souborů
- registrace typu souboru
- typy souborů, které podporují otevřených metadat
- související témata
Další informace najdete v následujících tématech:
- jak zvolit příponu typu souboru
- Definování atributů typu souboru
- , jak zahrnout aplikaci do dialogového okna Otevřít v dialogovém okně
- Jak vyloučit aplikaci z dialogového okna Otevřít v dialogovém okně pro nepřidružené typy souborů
Veřejné a soukromé typy souborů
Veřejné typy souborů se také označují jako oblíbené nebo kolizí, protože konkurenční aplikace mohou být k těmto typům souborů přidruženy. Mezi charakteristiky veřejných typů souborů patří:
- Obvykle jsou definovány orgány norem a/nebo jsou podporovány jejich definováním organizací jako výměnných formátů.
- Často se vyměňují mezi počítači a uživateli pro různé účely.
- Musí být podporovány na mnoha různých platformách.
- Aplikace od více dodavatelů je pravděpodobně zpracují.
Mezi příklady typů souborů, které jsou považovány za veřejné, patří typy souborů obrázků .png, .gif, .jpga .bmpa typy zvuků .wav, .mp3a .au.
Na rozdíl od typů veřejných souborů mají soukromé nebo proprietární typy souborů obvykle formát, který je implementovaný a srozumitelný pouze jednou aplikací nebo dodavatelem. V důsledku toho jsou typy privátních souborů obvykle náchylné ke konfliktům mezi aplikacemi. Některé typy souborů můžou začínat jako soukromé typy souborů, ale později se stanou veřejnými typy souborů.
Poznámka
Systém Windows nerozlišuje mezi veřejnými a privátními typy souborů. Rozdíl je relevantní pouze při rozhodování o vaší volbě registrace typu souboru.
Registrace typu souboru
Chcete-li přidružit typ souboru k existující aplikaci, vyhledejte v registru ID aplikace. Pokud chcete přidružit typ souboru k nové aplikaci, definujte ProgID pro vaši aplikaci. Informace o definování nového identifikátoru ProgID naleznete v tématu Programové identifikátory.
Podklíče přípony názvu souboru mají následující obecný formulář: příponu=ProgID. Podklíče přípony názvu souboru jsou uloženy v podstromu HKEY_CLASSES_ROOT.
Při vytváření podklíčů typu souboru v registru je důležité zahrnout úvodní tečku (.). Pokud například chcete typ souboru s krátkou příponou .myp a dlouhým příponou .myp-file otevřít pomocí aplikace s názvem MyProgram, použijte následující syntaxi:
HKEY_CLASSES_ROOT
.myp
(Default) = ApplicationVendor.MyProgram
.myp-file
(Default) = ApplicationVendor.MyProgram
ApplicationVendor.MyProgram
(Default) = MyProgram Application
Jak je znázorněno v předchozím příkladu, pokud také zaregistrujete krátkou příponu názvu souboru (.myp), měli byste vytvořit podklíč pro dlouhou příponu (.myp-file). Další informace naleznete v tématu obslužné rutiny typu souboru.
Nastavení volitelných podklíčů a atributů přípony typu souboru
Položky přípony typu souboru v registru mají několik volitelných podklíčů a atributů.
Položky přípony typu souboru používané přidruženími souborů jsou popsány v následující tabulce. Všechny hodnoty jsou typu REG_SZ.
Položka registru | Akce |
---|---|
Výchozí | Nastavte výchozí hodnotu podklíče rozšíření na Identifikátor ProgID, na který je propojen. |
Typ obsahu | Nastavte hodnotu Typ obsahu na typ obsahu MIME typu souboru. |
OpenWithList | Nepoužívejte. Tento podklíč obsahuje jeden nebo více podklíčů aplikace pro aplikace, které se zobrazí v položce dialogového okna Otevřít s pro typ souboru a je určen pouze pro .exe aplikace v operačních systémech před systémem Windows XP. Místo toho použijte OpenWithProgIds. |
OpenWithProgIds | Tento podklíč obsahuje seznam alternativních identifikátorů ProgID pro tento typ souboru. Programy pro tyto identifikátory ProgID se zobrazí v nabídce Otevřít s a jsou k dispozici jako výchozí aplikace pro Windows Store pro typ souboru. Pokaždé, když aplikace převezme tento typ souboru změnou výchozí hodnoty, měla by také přidat položku do tohoto seznamu. |
Vnímaný typ | Nastavte hodnotu PerceivedType na VnímanéType, do které soubor patří, pokud existuje. Tento řetězec nepoužívá verze Systému Windows starší než Windows Vista. Další informace naleznete v tématu vnímané typy a registrace aplikace. |
Obecná forma podklíče přípony názvu souboru je následující. Všechny typy položek jsou typu REG_SZ.
HKEY_CLASSES_ROOT
.ext
(Default) = ProgID.ext.1
Content Type = MIME content type
PerceivedType = PerceivedType
OpenWithProgids
ProgID2.ext.1
ProgID3.ext.1
ProgID.ext.1
shellnew
Mezi důležité aspekty typů souborů patří:
Podstrom HKEY_CLASSES_ROOT je zobrazení vytvořené sloučením tříd HKEY_CURRENT_USER\Software\Tříd a HKEY_LOCAL_MACHINE\Třídy\softwaru
Obecně platí, že HKEY_CLASSES_ROOT je určena ke čtení z textu, ale ne k zápisu. Další informace najdete v HKEY_CLASSES_ROOT článku.
Chcete-li zaregistrovat typ souboru globálně v určitém počítači, vytvořte položku pro typ souboru v podklíči HKEY_LOCAL_MACHINE\Software\Třídy.
Chcete-li, aby byla registrace typu souboru viditelná pouze aktuálnímu uživateli, vytvořte položku pro typ souboru v podklíči HKEY_CURRENT_USER\Software\Třídy.
Aplikace může poskytnout vlastní implementaci příkazu, například otevření nebo přehrávání, jak je znázorněno v následujícím příkladu registru.
HKEY_CLASSES_ROOT Applications ApplicationName.exe shell verb
Podklíče podklíče příkazu zahrnují příkazový řádek a metodu cíle přetažení: příkaz a DropTarget.
Při vytváření nebo změně přidružení souboru je důležité upozornit systém, že jste provedli změnu. Provedete to voláním SHChangeNotify a zadáním SHCNE_ASSOCCHANGED události. Pokud nevoláte SHChangeNotify, změna se nemusí rozpoznat, dokud se systém nerestartuje.
Chcete-li načíst informace registru týkající se přidružení souborů, použijte rozhraní IQueryAssociations. Scénář, který znázorňuje tento postup, naleznete v tématu Ukázkový scénář přidružení souboru.
Poznámka
Cesty aplikací i podklíče registru aplikace se používají k registraci a řízení chování systému jménem aplikací. Podrobnější informace o této funkci naleznete v tématu Registrace aplikace.
Odstranění informací registru během odinstalace
Při odinstalaci aplikace by se v rámci odinstalace měly odstranit identifikátory ProgID a většina dalších informací registru přidružených k této aplikaci. Aplikace, které převzaly vlastnictví typu souboru (nastavením výchozí hodnoty typu souboru HKEY_CLASSES_ROOT\.extension podklíčem progID aplikace), by se však při odinstalaci neměly pokoušet tuto hodnotu odebrat. Ponechání dat pro výchozí hodnotu zabraňuje obtížné určit, zda jiná aplikace převzala vlastnictví typu souboru a přepsala výchozí hodnotu po instalaci původní aplikace. Systém Windows respektuje výchozí hodnotu pouze v případě, že je nalezen identifikátor ProgID zaregistrovaný. Pokud je identifikátor ProgID zrušený, bude ignorován.
Všimněte si, že další informace o vlastnictví typu souboru jsou uloženy v podstromu HKEY_CURRENT_USER a také se používají pouze v případech, kdy je aplikace, na kterou odkazuje, zaregistrována. Proto tato data nemusí být při odinstalaci aplikace odebrána.
Například následující příklad ukazuje stav registru před odinstalací aplikace:
HKEY_CLASSES_ROOT
.mp3
(Default) = YourProgID
YourProgID
shell
open
command
(Default) = yourapp.exe %1
Následující příklad ukazuje stav těchto stejných položek registru po odinstalaci aplikace.
HKEY_CLASSES_ROOT
.mp3
(Default) = YourProgID
YourProgID subkey removed
Typy souborů, které podporují otevřená metadata
V systému Windows 7 a novějších podporují následující typy souborů otevřená metadata.
Typ souboru | Přípony názvů souborů |
---|---|
Dokumenty Office 2007 | .docx, .xlsx, .pptx |
Dokumenty Office 97–2003 | .doc, .xls, .ppt |
Uložené hledání | .search-ms |
Formáty založené na službě Windows Media (kontejner Advanced Streaming Format (ASF) | .wmv, .wma |
MP4 (obslužná rutina vlastností) | .mp4, .m4a, .m4v, .mp4v, .m4p, .m4b, .3gp, .3gpp, .3gp2, .mov |
Související témata