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.
Tento článek popisuje, jak napsat univerzální ovladač windows pomocí User-Mode Driver Framework (UMDF) 2. Začnete se šablonou sady Microsoft Visual Studio a pak nasadíte a nainstalujete ovladač do samostatného počítače.
Požadavky
Postupujte podle kroků k instalaci Windows Driver Kit (WDK). Nástroje pro ladění pro systém Windows jsou zahrnuty, když instalujete sadu WDK.
Nainstalujte visual Studio 2022. Při instalaci sady Visual Studio 2022 vyberte vývoj desktopových aplikací pomocí úlohy C++ a pak v části jednotlivé komponenty přidat:
- MSVC v143 – knihovny se zmírněnými dopady Spectre pro VS 2022 C++ ARM64/ARM64EC (nejnovější)
- MSVC v143 – VS 2022 C++ x64/x86 knihovny zmírněné proti Spectre (nejnovější)
- C++ ATL pro nejnovější nástroje sestavení v143 s ochranou proti Spectre (ARM64/ARM64EC)
- C++ ATL pro nejnovější sestavovací nástroje verze v143 s mitigacemi Spectre (x86 & x64)
- C++ MFC pro nejnovější sestavovací nástroje verze 143 s mitigacemi Spectre (ARM64/ARM64EC)
- C++ MFC pro nejnovější nástroje sestavení v143 s ochranami proti Spectre (x86 & x64)
- Windows Driver Kit
Vytvoření a sestavení ovladače
Poznámka
Při vytváření nového ovladače KMDF nebo UMDF musíte vybrat název ovladače, který má 32 znaků nebo méně. Tento limit délky je definován v wdfglobals.h.
Otevřete Visual Studio. V nabídce Soubor zvolte Nový > Projekt.
V dialogovém okně Vytvořit nový projekt vyberte v levém rozevíracím seznamu C++, v prostředním rozevíracím seznamu vyberte Windows a v pravém rozevíracím seznamu vyberte Ovladač.
Ze seznamu typů projektů vyberte ovladač režimu uživatele (UMDF V2). Vyberte Další.
Tip
Pokud v sadě Visual Studio nemůžete najít šablony projektů ovladačů, rozšíření WDK Visual Studio se nenainstalovalo správně. Chcete-li tento problém vyřešit, spusťte Instalační program sady Visual Studio, vyberte Upravit, přidejte Windows Driver Kit na kartě jednotlivé součásti a vyberte Upravit.
V dialogovém okně Konfigurovat nový projekt zadejte v poli Název projektu "UmdfDriver".
Poznámka
Při vytváření nového ovladače KMDF nebo UMDF musíte vybrat název ovladače, který má 32 znaků nebo méně. Tento limit délky je definován v wdfglobals.h.
Do pole Umístění zadejte adresář, do kterého chcete nový projekt vytvořit.
Zaškrtněte Umístit řešení a projekt do stejného adresáře a vyberte Vytvořit.
Visual Studio vytvoří jeden projekt a řešení. Můžete je zobrazit v okně Průzkumníku řešení. (Pokud okno Průzkumníka řešení není viditelné, v nabídce Zobrazení zvolte Průzkumníka řešení.) Řešení má projekt ovladače s názvem UmdfDriver. Pokud chcete zobrazit zdrojový kód ovladače, otevřete některý ze souborů v části Zdrojové soubory. Driver.c a Device.c jsou dobrým místem, kde začít.
V okně Průzkumník řešení vyberte a podržte (nebo klikněte pravým tlačítkem) Řešení 'UmdfDriver' (1 z 1 projektu) a zvolte Správce konfigurace. Zvolte konfiguraci a platformu pro projekt řidiče. Například zvolte Ladění a x64.
V okně Průzkumníka řešení vyberte a podržte UmdfDriver(nebo klikněte pravým tlačítkem) a zvolte Vlastnosti. Přejděte na Vlastnosti konfigurace > Nastavení ovladače > Obecné, a všimněte si, že Cílová platforma je ve výchozím nastavení Univerzální.
V nabídce Build zvolte Sestavit řešení pro vytvoření ovladače. Microsoft Visual Studio zobrazuje průběh sestavení v okně Výstup. (Pokud okno Výstup není viditelné, v nabídce Zobrazení zvolte Výstup.)
Ověřte, že výstup sestavení zahrnuje:
> Driver is 'Universal'.Po ověření úspěšného sestavení řešení můžete Visual Studio zavřít.
Pokud chcete zobrazit integrovaný ovladač, přejděte v Průzkumníku souborů do složky UmdfDriver a pak x64\Debug\UmdfDriver. Adresář obsahuje následující soubory:
- UmdfDriver.dll– soubor ovladače uživatelského režimu
- UmdfDriver.inf - informační soubor, který systém Windows používá při instalaci ovladače
Nasazení a instalace ovladače univerzálního systému Windows
Při testování a ladění ovladače obvykle ladicí program a ovladač běží na samostatných počítačích. Počítač, na kterém běží ladicí program, se nazývá hostitelský počítača počítač, na kterém běží ovladač, se nazývá cílový počítač. Cílový počítač se také nazývá testovací počítač .
Důležitý
Zatím jste pomocí sady Visual Studio vytvořili ovladač na hostitelském počítači. Teď potřebujete nakonfigurovat cílový počítač. Postupujte podle pokynů v Zřízení počítače pro nasazení a testování ovladačů (WDK 10). Pak jste připraveni nasadit, nainstalovat, načíst a ladit ovladač.
Na hostitelském počítači otevřete řešení v sadě Visual Studio. Ve složce UmdfDriver můžete dvakrát kliknout na soubor řešení UmdfDriver.sln.
V okně Průzkumníka řešení vyberte a podržte UmdfDriver(nebo klikněte pravým tlačítkem) a zvolte Vlastnosti.
Ve okně Stránky vlastností UmdfDriver přejděte na Vlastnosti konfigurace > Instalace ovladače > Nasazení,jak je znázorněno zde.
Zkontrolujte Odstranit Předchozí Verze Ovladačů Před Nasazením.
Pro název cílového zařízení, vyberte název počítače, který jste nakonfigurovali pro testování a ladění.
Vyberte Aktualizace ovladače ID hardwaru, a zadejte ID hardwaru pro váš ovladač. V tomto cvičení je identifikátor hardwaru Root\UmdfDriver. Vyberte OK.
Poznámka
V tomto cvičení ID hardwaru neidentifikuje skutečnou část hardwaru. Identifikuje imaginární zařízení, kterému je přiděleno místo ve stromu zařízení jako potomku kořenového uzlu. Pro skutečný hardware nevybírejte aktualizaci ovladače ID hardwaru; místo toho vyberte Instalovat a Ověřit. ID hardwaru můžete zobrazit v souboru s informacemi o ovladači (INF). V okně Průzkumníka řešení přejděte na položku Soubory ovladačů UmdfDriver >a poklikejte na UmdfDriver.inf. ID hardwaru je pod [Standard.NT$ARCH$].
[Standard.NT$ARCH$] %DeviceName%=MyDevice_Install,Root\UmdfDriverV nabídce Ladění zvolte Spustit laděnínebo stiskněte F5 na klávesnici.
Počkejte, až se ovladač nasadí, nainstaluje a načte do cílového počítače. Může to trvat několik minut.
Použití rozhraní DMF (Driver Module Framework)
Driver Module Framework (DMF) je rozšíření WDF, které umožňuje vývojářům ovladačů WDF další funkce. Pomáhá vývojářům psát jakýkoli typ ovladače WDF lépe a rychleji.
DMF jako architektura umožňuje vytvářet objekty WDF označované jako moduly DMF. Kód pro tyto moduly DMF lze sdílet mezi různými ovladači. DMF navíc obsahuje knihovnu modulů DMF, které jsme vyvinuli pro naše ovladače a domníváme se, že by poskytovaly hodnotu ostatním vývojářům ovladačů.
DMF nenahrazuje WDF. DMF je druhá architektura, která se používá s WDF. Vývojář používající DMF stále používá WDF a všechny jeho primitivy k zápisu ovladačů zařízení.
Další informace najdete v tématu Driver Module Framework (DMF).
Související články
- vývoj, testování a nasazování ovladačů
- nástroje pro ladění pro Windows
- Napište svůj první ovladač