Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Aplikace se může zaregistrovat, aby se stala výchozí obslužnou rutinou pro určitý typ souboru. Desktopové aplikace Windows i aplikace WinUI se můžou zaregistrovat jako výchozí obslužná rutina souborů. Pokud uživatel zvolí vaši aplikaci jako výchozí obslužnou rutinu pro určitý typ souboru, aplikace se aktivuje při spuštění tohoto typu souboru.
Doporučujeme, abyste se zaregistrovali pouze pro typ souboru, pokud očekáváte, že pro tento typ souboru zpracujete všechna spuštění souborů. Pokud vaše aplikace potřebuje jen interně používat typ souboru, nemusíte se registrovat jako výchozí aplikace. Pokud se rozhodnete zaregistrovat typ souboru, musíte koncovému uživateli poskytnout funkci, která se očekává při aktivaci aplikace pro daný typ souboru. Aplikace prohlížeče obrázků se může například zaregistrovat k zobrazení .jpg souboru. Další informace o přidružení souborů najdete v tématu Pokyny pro typy souborů a identifikátory URI.
Tyto kroky ukazují, jak zaregistrovat vlastní typ souboru, .alsdk a jak aktivovat aplikaci, když uživatel spustí soubor .alsdk.
Poznámka:
Ve Windows jsou určité identifikátory URI a přípony souborů vyhrazené pro použití integrovanými aplikacemi a operačním systémem. Pokusy o registraci aplikace s rezervovaným identifikátorem URI nebo příponou souboru budou ignorovány. Podívejte se na názvy schémat rezervovaných identifikátorů URI a typy souborů pro abecední seznam schémat identifikátorů URI, která se nedají zaregistrovat pro vaše aplikace, protože jsou rezervované nebo zakázané.
Důležitá rozhraní API
V tomto tématu se používají následující rozhraní API:
- Windows.ApplicationModel.Activation.FileActivatedEventArgs
- Windows.UI.Xaml.Application.OnFileActivated
- AppInstance.GetActivatedEventArgs
Krok 1: Určení bodu rozšíření v manifestu balíčku
Aplikace přijímá aktivační události pouze pro přípony souborů uvedené v manifestu balíčku. Tady je postup, jak zjistíte, že vaše aplikace zpracovává soubory s příponou .alsdk .
V Průzkumníku řešení poklikejte na package.appxmanifest a otevřete návrháře manifestu. Vyberte kartu Deklarace a v rozevíracím seznamu Dostupné deklarace vyberte Přidružení typů souborů a potom klepněte na tlačítko Přidat. Další podrobnosti o identifikátorech používaných přidruženími souborů najdete v tématu Programové identifikátory .
Tady je stručný popis jednotlivých polí, která můžete vyplnit v návrháři manifestu:
| Pole | Description |
|---|---|
| Zobrazený název | Zadejte zobrazovaný název skupiny typů souborů. Zobrazovaný název slouží k identifikaci typu souboru v ovládacích panelechNastavit výchozí programy. |
| Logo | Zadejte logo, které slouží k identifikaci typu souboru na ploše a v ovládacích panelechNastavit výchozí programy. Pokud není zadáno žádné logo, použije se malé logo aplikace. |
| Informační tip | Zadejte informační tip pro skupinu typů souborů. Text nápovědy se zobrazí, když uživatel najede myší na ikonu souboru tohoto typu. |
| název | Zvolte název pro skupinu typů souborů, které sdílejí stejný zobrazovaný název, logo, informační tip a příznaky úprav. Zvolte název skupiny, který může zůstat stejný napříč aktualizacemi aplikací. Poznámka Název musí být ve všech malých písmenech. |
| Typ obsahu | Zadejte typ obsahu MIME, například obrázek/jpeg, pro určitý typ souboru. Důležitá poznámka k povoleným typům obsahu: Tady je abecední seznam typů obsahu MIME, které nelze zadat do manifestu balíčku, protože jsou buď vyhrazené, nebo zakázané: application/force-download, application/octet-stream, application/unknown, application/x-msdownload. |
| Typ souboru | Zadejte typ souboru, pro který se má zaregistrovat, před tečkou, například ".jpeg". Rezervované a zakázané typy souborů: Podívejte se na názvy schémat rezervovaných identifikátorů URI a typy souborů pro abecední seznam typů souborů pro předdefinované aplikace, které se nedají zaregistrovat pro aplikace WinUI, protože jsou rezervované nebo zakázané. |
- Zadejte
alsdkjako název. - Zadejte
.alsdkjako typ souboru. - Jako logo zadejte obrázky\Icon.png.
- Stisknutím ctrl+S uložte změnu na package.appxmanifest.
Výše uvedený postup přidá do manifestu balíčku element extension podobný tomuto. Kategorie windows.fileTypeAssociation označuje, že aplikace zpracovává soubory s příponou .alsdk .
<Extensions>
<uap:Extension Category="windows.fileTypeAssociation">
<uap:FileTypeAssociation Name="alsdk">
<uap:Logo>images\icon.png</uap:Logo>
<uap:SupportedFileTypes>
<uap:FileType>.alsdk</uap:FileType>
</uap:SupportedFileTypes>
</uap:FileTypeAssociation>
</uap:Extension>
</Extensions>
Krok 2: Přidání správných ikon
Aplikace, které se stanou výchozím nastavením typu souboru, mají svoje ikony zobrazené na různých místech v celém systému. Například tyto ikony jsou zobrazeny v těchto:
- Zobrazení položek Průzkumníka Windows, místní nabídky a pás karet
- Výchozí programy - Ovládací panel
- Výběr souboru
- Výsledky hledání na úvodní obrazovce
Do projektu zahrňte ikonu 44x44, aby se vaše logo v těchto umístěních zobrazilo. Slaďte vzhled loga dlaždice aplikace a místo toho, abyste udělali ikonu průhlednou, použijte barvu pozadí vaší aplikace. Logo se rozšíří na okraj, aniž byste ho odsadili. Otestujte ikony na bílých pozadích. Podívejte se na Pokyny pro prostředky dlaždic a ikon pro více informací o ikonách.
Krok 3: Zpracování aktivované události
Obslužná rutina události OnFileActivated přijímá všechny události aktivace souboru.
protected override void OnFileActivated(FileActivatedEventArgs args)
{
// TODO: Handle file activation
// The number of files received is args.Files.Count
// The name of the first file is args.Files[0].Name
}
void App::OnFileActivated(Windows::ApplicationModel::Activation::FileActivatedEventArgs const& args)
{
// TODO: Handle file activation.
auto numberOfFilesReceived{ args.Files().Size() };
auto nameOfTheFirstFile{ args.Files().GetAt(0).Name() };
}
void App::OnFileActivated(Windows::ApplicationModel::Activation::FileActivatedEventArgs^ args)
{
// TODO: Handle file activation
// The number of files received is args->Files->Size
// The name of the first file is args->Files->GetAt(0)->Name
}
Poznámka:
Při spuštění prostřednictvím kontraktu souborů se ujistěte, že tlačítko Zpět uživatele vrátí na obrazovku, která spustila aplikaci, a ne na předchozí obsah aplikace.
Poznámka:
V aplikaci WinUI můžete v App.OnLaunched (nebo ve skutečnosti kdykoli) volat (AppInstance.GetActivatedEventArgs) načíst argumenty aktivované události a zkontrolovat je, jak byla aplikace aktivována. Další informace o rozdílech životního cyklu mezi aplikacemi UPW a WinUI najdete v tématu Migrace funkcí životního cyklu aplikace .
Doporučujeme vytvořit nový rámec XAML pro každou aktivační událost, která otevře novou stránku. Tímto způsobem backstack navigace pro nový rámec XAML neobsahuje žádný předchozí obsah, který by aplikace mohla mít v aktuálním okně při pozastavení. Pokud se rozhodnete použít jeden rámec XAML pro spuštění a kontrakty souborů, měli byste před přechodem na novou stránku vymazat stránky v navigačním deníku rámce.
Když se aplikace spustí prostřednictvím aktivace souboru, měli byste zvážit zahrnutí uživatelského rozhraní, které uživateli umožní vrátit se na horní stránku aplikace.
Poznámky
Soubory, které obdržíte, můžou pocházet z nedůvěryhodného zdroje. Doporučujeme před provedením akce ověřit obsah souboru.
Související obsah
Windows developer