Felhasználó-alapú telepítés – fejlesztői útmutatóUser Driven Installation - Developers Guide

Felhasználó alapú Installation (UDI) egyszerűbbé teszi a Windows® ügyfél operációs rendszerek, például Windows 8.1, számítógépekről, amelyek az operációs rendszer központi telepítési (OSD) szolgáltatása a Microsoft® System Center 2012 R2 Configuration Manager telepítését.User Driven Installation (UDI) helps simplify the deployment of Windows® client operating systems, such as Windows 8.1, to computers using the operating system deployment (OSD) feature in Microsoft® System Center 2012 R2 Configuration Manager. UDI része a Microsoft központi telepítési eszközkészlet (MDT).UDI is part of the Microsoft Deployment Toolkit (MDT).

BevezetésIntroduction

Általában a OSD funkciójával operációs rendszerek központi telepítésekor meg kell adnia a szükséges információkat az operációs rendszer telepítéséhez.Typically, when deploying operating systems using the OSD feature, you must provide all the necessary information for deploying the operating system. Az adatokat a konfigurációs fájlok vagy adatbázisokban (például a CustomSettings.ini fájl vagy az MDT adatbázis [MDT DB]) van beállítva.The information is configured in configuration files or in databases (such as the CustomSettings.ini file or the MDT database [MDT DB]). Is kezdeményezhető a telepítés előtt meg kell adnia minden beállítást.You must provide all configuration settings before you can initiate the deployment.

UDI a varázsló alapú felületet biztosít, amely lehetővé teszi, hogy adja meg a konfigurációs adatokat közvetlenül a központi telepítés végrehajtása előtt.UDI provides a wizard-driven interface that allows you to provide configuration information immediately prior to performing the deployment. Ez a viselkedés lehetővé teszi általános OSD feladatütemezések létrehozása, és adja meg a környezetben, amely nagyobb rugalmasságot biztosít a telepítési folyamat során a számítógép-specifikus adatait.This behavior allows you to create generic OSD task sequences, and then provide computer-specific information at the time of deployment, which provides greater flexibility in the deployment process.

CélközönségTarget Audience

Ez az útmutató a fejlesztők számára hozzon létre egyéni varázslólapok az UDI varázsló és az UDI varázsló Designer egyéni varázsló lap szerkesztők írása.This guide is written for the developers who create custom wizard pages for the UDI Wizard and custom wizard page editors for the UDI Wizard Designer. Ez az útmutató feltételezi, hogy Ön ismeri a használó Windows-alkalmazások fejlesztésével:This guide assumes that you are familiar with the development of Windows applications using:

  • C++, amely hozhatók létre egyéni VarázslóoldalakC++, which is used to create custom wizard pages

  • A Microsoft .NET-keretrendszer, amely hozhatók létre egyéni varázslólap szerkesztőkMicrosoft .NET Framework, which is used to create custom wizard page editors

  • Windows megjelenítési alaprendszer (WPF), amely hozhatók létre egyéni varázslólap szerkesztőkWindows Presentation Foundation (WPF), which is used to create custom wizard page editors

  • WPF támogatott nyelv, például C#, C++, vagy a Microsoft Visual Basic® .NET, amely hozhatók létre egyéni varázsló lap szerkesztőkLanguages that WPF supports, such as C#, C++, or Microsoft Visual Basic® .NET, which are used to create custom wizard page editors

Az útmutatórólAbout This Guide

Ez az útmutató a szükséges kapcsolódó információk segítséget nyújtanak a szervezet UTI testreszabása.This guide provides the necessary reference information to help you customize UTI for your organization. Ez az útmutató nem tárgyalja a felügyeleti vagy működési témakörök, például az MDT (amelynek része az UDI) telepítése, konfigurálása UDI operációs rendszerek és alkalmazások telepítését vagy üzembe helyezése az UDI varázsló végrehajtása.This guide does not discuss administrative or operational topics, such as installing MDT (which includes UDI), configuring UDI to deploy operating systems and applications, or performing deployments using the UDI Wizard. A témakörökre vonatkozó további információkért tekintse meg a UDI témaköreit használatával a Microsoft központi telepítési eszközkészlet, amely része a MDT.For more information on those topics, see the UDI topics in Using the Microsoft Deployment Toolkit, which is included with MDT.

UDI fejlesztői áttekintésUDI Development Overview

UDI fejlesztési lehetővé teszi, hogy kiterjeszti a funkciókat, amelyeket UDI biztosít.UDI development allows you extend the features that UDI provides. Általában UDI fejlesztési, ha szeretne további információt, amely az UDI telepítési folyamat akkor gyűjteni.Typically, UDI development is required when you want to collect additional information that the UDI deployment process consumes. Ez az információ általában mentése másként feladatütemezési lépések UDI feladatütemezés a Configuration Manager alkalmazásban olvassa el a feladatütemezési változók.This additional information is usually saved as task sequence variables that task sequence steps in a UDI task sequence in Configuration Manager read.

UDI-architektúraUDI Architecture

A magas szintű UDI fejlesztési célja az UDI varázslóban megjelenő egyéni varázslólapok létrehozásához.The high-level goal of UDI development is to create custom wizard pages that can be displayed in the UDI Wizard. Hozzon létre egyéni varázslólapok, kiterjesztheti a meglévő üzleti teljesítéséhez UDI-funkciók és a szervezet műszaki követelményeinek.By creating custom wizard pages, you can extend the existing features of UDI to meet the business and technical requirements of your organization. Egy egyéni varázslólap mellett vagy helyett a varázslólapok UDI biztosító adatokat gyűjt.A custom wizard page collects information in addition to or in place of the wizard pages that UDI provides.

1. ábra azt mutatja be az UDI varázsló Tervező és az UDI varázsló közötti kapcsolat.Figure 1 illustrates the relationship between the UDI Wizard Designer and the UDI Wizard.

UDIDevelopersGuide1UDIDevelopersGuide1
1. ábra.Figure 1. Az UDI varázsló és az UDI varázsló Designer közötti kapcsolatRelationship between the UDI Wizard and UDI Wizard Designer

1. ábra. Az UDI varázsló és az UDI varázsló Designer közötti kapcsolatFigure 1. Relationship between the UDI Wizard and UDI Wizard Designer

Egy elméleti szinten UDI fejlesztési létrehozását tartalmazza:At a conceptual level, UDI development includes the creation of:

  • Egyéni varázslólapok.Custom wizard pages. Varázslóoldalak a telepítés befejezéséhez szükséges adatokat gyűjt, és az UDI varázsló jelenik meg.Wizard pages are displayed in the UDI Wizard and collect the information required to complete the deployment process. Varázslóoldalak Microsoft Visual Studio® C++ használatával hoz létre.You create wizard pages using C++ in Microsoft Visual Studio®. Az egyéni varázslólapok használják, mint az UDI varázsló olvasó dll-fájl.The custom wizard pages are implemented as DLLs that the UDI Wizard reads. Az UDI szoftverfejlesztői készlet (SDK) tartalmaznak egy egyéni varázslólapok létrehozása.The UDI software development kit (SDK) includes an example of how to create custom wizard pages.

  • Egyéni varázsló lap szerkesztők.Custom wizard page editors. Varázsló lap szerkesztő segítségével konfigurálja az egyéni varázslólap viselkedését.You use wizard page editors to configure the behavior of your custom wizard page. Az egyéni varázsló lap szerkesztők használják, mint az UDI varázsló Designer olvasó dll-fájl.The custom wizard page editors are implemented as DLLs that the UDI Wizard Designer reads. Szerkesztők létrehozása varázslólap:You create wizard page editors using:

    • WPF 4.0-s verziójaWPF version 4.0

    • Microsoft Prism 4.0-s verziójaMicrosoft Prism version 4.0

    • Microsoft Unity-alkalmazás letiltása (egység) 2.1-es verziójaMicrosoft Unity Application Block (Unity) version 2.1

      Az MDT összes létrehozásához szükséges egyéni varázslólap szerkesztő használatra az UDI varázsló Designer szerelvényeket tartalmazza.MDT includes all the assemblies necessary to create a custom wizard page editor for use in the UDI Wizard Designer. Az UDI SDK magában foglalja a példa bemutatja, hogyan egyéni varázsló lap szerkesztők létrehozásához.The UDI SDK includes an example of how to create custom wizard page editors.

    Emellett az UDI varázsló Designer feldolgozó kapcsolódó varázsló lap szerkesztő konfigurációs fájlok.In addition, the UDI Wizard Designer consumes supporting wizard page editor configuration files. A varázsló szerkesztő konfigurációs fájlok létrehozását lehet létrehozni az egyéni varázslólapok és egyéni varázsló lap szerkesztők részeként.You create the wizard page editor configuration files as a part of the process for creating your custom wizard pages and custom wizard page editors. Az UDI varázsló Designer az UDI varázsló konfigurációs fájlban és a megfelelő .app fájlt hoz létre a szükséges XML-adatokat.The UDI Wizard Designer creates the necessary XML information in the UDI Wizard configuration file and corresponding .app file.

Az UDI fejlesztőkörnyezet előkészítésePreparing the UDI Development Environment

Mielőtt létrehozná a saját egyéni varázslólapok és varázslólap szerkesztők, a következő lépésekkel az UDI fejlesztőkörnyezet előkészítése:Before you begin creating your own custom wizard pages and wizard page editors, perform the following steps to prepare the UDI development environment:

  1. Készítse elő a UDI fejlesztési környezeti Előfeltételek leírtak előkészítése az UDI fejlesztési környezeti Előfeltételek.Prepare the UDI development environment prerequisites as described in Prepare the UDI Development Environment Prerequisites.

  2. A UDI fejlesztési környezet konfigurálása a az UDI fejlesztési környezet konfigurálása.Configure the UDI development environment as described in Configure the UDI Development Environment.

  3. Győződjön meg arról, hogy az UDI fejlesztőkörnyezet leírtaknak megfelelően van-e konfigurálva ellenőrizze az UDI fejlesztőkörnyezet.Verify that the UDI development environment is configured correctly as described in Verify the UDI Development Environment.

Készítse elő a UDI fejlesztési környezeti ElőfeltételekPrepare the UDI Development Environment Prerequisites

Az UDI fejlesztési környezeti Előfeltételek előkészítéséhez hajtsa végre az alábbi lépéseket:To prepare the UDI development environment prerequisites, perform the following steps:

  1. Készítse elő a UDI fejlesztési környezet hardver perquisites leírtak előkészítése az UDI fejlesztési környezet hardver Előfeltételek.Prepare the UDI development environment hardware perquisites as described in Prepare the UDI Development Environment Hardware Prerequisites.

  2. Készítse elő a UDI fejlesztőkörnyezet szoftver perquisites leírtak szerint UDI fejlesztési környezet előfeltételt jelentő szoftverek előkészítése.Prepare the UDI Development environment software perquisites as described in Prepare the UDI Development Environment Software Prerequisites.

Készítse elő a UDI fejlesztési környezet hardver ElőfeltételekPrepare the UDI Development Environment Hardware Prerequisites

Az UDI fejlesztési környezet hardver előfeltételeket Microsoft használja a Visual Studio 2010-kiadás ugyanazon hardverkövetelményeinek.The UDI development environment hardware prerequisites are the same hardware requirements for the edition of Microsoft Visual Studio 2010 you are using. Ezekkel a követelményekkel kapcsolatos további információkért tekintse meg a rendszerkövetelményeket, minden egyes kiadásához Visual Studio 2010 termékek.For more information about these requirements, see the system requirements for each edition at Visual Studio 2010 Products.

Készítse elő a UDI fejlesztési környezet szoftver-előfeltételeketPrepare the UDI Development Environment Software Prerequisites

Az UDI fejlesztőkörnyezet rendelkezik a következő szükséges szoftverek települnek:The UDI development environment has the following software prerequisites:

  • Minden Windows operációs rendszer által (a Windows 7 vagy Windows Server® 2008 R2 javasolt.) a Visual Studio 2010 támogatottAny Windows operating system that Visual Studio 2010 supports (Windows 7 or Windows Server® 2008 R2 is recommended.)

    Szüksége lesz egy Windows operációs rendszer, amely támogatja a processzor architektúrájától legyen fejlesztéséhez.You will need a Windows operating system that supports the processor architecture for which you want to develop. 32 bites és 64 bites, 64 bites operációs rendszert UDI fejlesztési végezheti el.You can perform 32-bit and 64-bit UDI development using a 64-bit operating system. Csak akkor 32 bites UDI fejlesztési 32 bites operációs rendszereken.You only do 32-bit UDI development on 32-bit operating systems. Emiatt egy 64 bites operációs rendszert kell használnia.For this reason, you should use a 64-bit operating system.

    Megjegyzés

    IntelItanium (IA-64) Windows operációs rendszer verziói nem támogatottak a UDI fejlesztési környezetekben.IntelItanium versions (IA-64) of Windows operating system are not supported for UDI development environments.

    A Visual Studio 2010 támogató operációs rendszerekkel kapcsolatos további információkért tekintse meg a rendszerkövetelményeket, minden egyes kiadásához Visual Studio 2010 termékek.For more information about the operating systems that Visual Studio 2010 supports, see the system requirements for each edition at Visual Studio 2010 Products.

  • A Microsoft .NET-keretrendszer 4.0-s (Visual Studio 2010 szükséges)Microsoft .NET Framework version 4.0 (required by Visual Studio 2010)

  • C++ nyelvi (UDI varázslólapok bővíteni használt nyelv)C++ language (the language used in extending UDI Wizard pages)

  • Egyéb nyelvek a WPF támogatja, például a C#, Visual Basic .NET vagy C + / közös nyelvi infrastruktúra, amely UDI varázsló Tervező varázsló lap szerkesztők bővítésére szolgálnak olyanOther languages that WPF supports, such as C#, Visual Basic .NET, or C++/Common Language Infrastructure, which are used to extend UDI Wizard Designer wizard page editors

    Megjegyzés

    A minta forráskódja az UDI varázsló Tervező varázsló lap szerkesztők C# nyelven írt.The sample source code for the UDI Wizard Designer wizard page editors is written in C#. Ha a minta forráskód használni kívánt, telepítse a C# nyelv.Install the C# language if you want to use the sample source code.

Az UDI fejlesztési környezet konfigurálásaConfigure the UDI Development Environment

Majd UDI után fejlesztési környezeti előfeltételek teljesülnek, a UDI fejlesztési környezet konfigurálása a következő lépésekkel:After then UDI development environment prerequisites are met, perform the following steps to configure the UDI development environment:

  1. Install Visual Studio 2010.Install Visual Studio 2010.

    Győződjön meg arról, hogy telepítse a C++ nyelvi és bármely más nyelven, amely támogatja a WPF-e.Ensure that you install the C++ language and any other language that WPF supports.

    Megjegyzés

    Az UDI varázsló Designer szerkesztő lapok forrás példakód C# nyelven írt.The sample source code for the UDI Wizard Designer editor pages is written in C#. Ha a minta forráskód használni kívánt, telepítse a C# nyelv.Install the C# language if you want to use the sample source code.

    Visual Studio 2010 telepítésével kapcsolatos további információkért lásd: Visual Studio telepítése.For more information about installing Visual Studio 2010, see Installing Visual Studio.

  2. Az MDT telepítése.Install MDT.

    Hogyan telepítse az MDT, a "Telepítése vagy frissítése az mdt használatával" című szakaszában talál további információt az MDT a dokumentum használatával a Microsoft központi telepítési eszközkészlet.For more information about how to install MDT, see the section, "Installing or Upgrading to MDT", in the MDT document Using the Microsoft Deployment Toolkit.

  3. A Windows Intézőben, hozzon létre local_folder (ahol local_folder bármely helyi meghajtón a fejlesztési számítógépen található mappa).In Windows Explorer, create local_folder (where local_folder is any folder located on a local drive on the development computer).

  4. Másolás a installation_folder\SDK mappa local_folder (ahol installation_folder az MDT telepítési mappáját és local_ mappa bármely helyi meghajtón a fejlesztési számítógépen található mappa).Copy the installation_folder\SDK folder to local_folder (where installation_folder is the folder in which you installed MDT and local_folder is any folder located on a local drive on the development computer).

    Az SDK mappából egy másik helyre másolja, mert az MDT telepítve van a Program Files mappába, amely emelt szintű jogosultságok nélkül nem lehet írni.You copy the SDK folder to another location because MDT is installed in the Program Files folder, which cannot be written to without elevated permissions. Az SDK mappából másolása másik helyre lehetővé teszi az SDK mappában lévő fájlok módosítását anélkül, hogy emelt szintű engedélyekkel.Copying the SDK folder to another location allows you to modify the files in the SDK folder without requiring elevated permissions.

  5. Másolás a installation_folder\Templates\Distribution\Tools mappa local_folder (ahol installation_folder az MDT telepítési mappáját és local_folder az a folyamat korábbi szakaszában létrehozott mappa).Copy the installation_folder\Templates\Distribution\Tools folder to local_folder (where installation_folder is the folder in which you installed MDT and local_folder is the folder you created earlier in the process).

  6. Nevezze át a local_folder\Tools mappát local_folder\OSDSetupWizard (where local_folder az a folyamat korábbi szakaszában létrehozott mappa).Rename the local_folder\Tools folder to local_folder\OSDSetupWizard(where local_folder is the folder you created earlier in the process).

    Amikor elkészült, a gyökérmappa-szerkezetében alatt local_folder a mappastruktúra a 2. ábrán bemutatott hasonlóan kell kinéznie (ahol local_folder az a mappa, a folyamat korábbi szakaszában létrehozott és az megjelennek az helyeként UDIDevelopment ábrán).When completed, the folder structure beneath local_folder should look like the folder structure illustrated in Figure 2 (where local_folder is the folder you created earlier in the process and is shown as UDIDevelopment in the figure).

    UDIDevelopersGuide2UDIDevelopersGuide2
    2. ábra.Figure 2. UDI fejlesztési mappaszerkezetFolder structure for UDI development

    2. ábra. UDI fejlesztési mappaszerkezetFigure 2. Folder structure for UDI development

Ellenőrizze az UDI fejlesztési környezetVerify the UDI Development Environment

Ha az UDI fejlesztőkörnyezet van konfigurálva, győződjön meg arról, hogy az UDI fejlesztési környezet megfelelően van konfigurálva, hogy a minta-projektek helyes létrejöttéhez a Visual Studio 2010 biztosításával.When the UDI development environment is configured, verify that the UDI development environment is configured correctly by ensuring that the sample projects build correctly in Visual Studio 2010.

Győződjön meg arról, hogy az UDI fejlesztési környezet beállítása megfelelő meghatározása hogy:Verify that the UDI development environment is configured correctly by determining whether:

Győződjön meg arról, hogy a SamplePage projekt megfelelően buildekVerify That the SamplePage Project Builds Correctly

A SamplePage projekt biztosít arról, hogyan hozzon létre egy egyéni varázslólap az UDI varázsló.The SamplePage project provides an example of how to create a custom wizard page for the UDI Wizard. SamplePage projekttel kapcsolatos további információkért lásd: tekintse át a Visual Studio megoldás SamplePage.For more information about the SamplePage project, see Review the SamplePage Visual Studio Solution.

A SamplePage projekt megfelelően buildek ellenőrzéseTo verify that the SamplePage project builds correctly

  1. Indítsa el a Visual Studio 2010.Start Visual Studio 2010.

  2. Nyissa meg a SamplePage projektet.Open the SamplePage project.

    A SamplePage projekt található a local_folder\SDK\UDI\SamplePage mappában (ahol local_folder az a folyamat korábbi szakaszában létrehozott mappa).The SamplePage project resides in the local_folder\SDK\UDI\SamplePage folder (where local_folder is the folder you created earlier in the process).

  3. A Visual Studio 2010, a Megoldáskezelőben kattintson a jobb gombbal a SamplePage projekt, és kattintson tulajdonságok.In Visual Studio 2010, in Solution Explorer, right-click the SamplePage project, and then click Properties.

    A SamplePage tulajdonságlapjain párbeszédpanel jelenik meg.The SamplePage Property Pages dialog box appears.

  4. Az a SamplePage tulajdonságlapjain párbeszédpanelen nyissa meg a konfigurációs tulajdonságok vagy hibakeresés.In the SamplePage Property Pages dialog box, go to Configuration Properties/Debugging.

  5. A hibakeresés tulajdonságai alapján konfigurációs, jelölje be összes konfiguráció.In the Debugging properties, under Configuration, select All Configurations.

  6. A hibakeresés tulajdonságai alapján parancs, típus $(TargetDir)\OSDSetupWizard.exe.In the Debugging properties, under Command, type $(TargetDir)\OSDSetupWizard.exe.

  7. A hibakeresés tulajdonságai alapján munkakönyvtár, típus $(TargetDir).In the Debugging properties, under Working Directory, type $(TargetDir).

  8. Az a SamplePage tulajdonságlapjain párbeszédpanelen nyissa meg a konfigurációs tulajdonságok/Build események/követő-Build esemény.In the SamplePage Property Pages dialog box, go to Configuration Properties/Build Events/Post-Build Event.

  9. A utáni esemény tulajdonságai alapján parancssori, írja be a következőt:In the Post-Build Event properties, under Command Line, type the following:

    copy /y "$(ProjectDir)..\..\..\..\OSDSetupWizard\x86\*.*" "$(TargetDir)"  
    xcopy /y /i "$(ProjectDir)..\..\..\..\OSDSetupWizard\x86\en-us" "$(TargetDir)en-us"  
    copy /y "$(ProjectDir)..\..\..\..\OSDSetupWizard\OSDResults\Images\UDI_Wizard_Banner.bmp" "$(ProjectDir)header.bmp"  
    copy /y "$(ProjectDir)Config.xml" "$(TargetDir)”  
    copy /y "$(ProjectDir)header.bmp" "$(TargetDir)header.bmp"  
    
  10. Az a SamplePage tulajdonságlapjain párbeszédpanel, kattintson a OK.In the SamplePage Property Pages dialog box, click OK.

  11. Mentse a projektet.Save the project.

  12. Az a Debug menüben kattintson a Start Debugging.From the Debug menu, click Start Debugging.

    A Microsoft Visual Studiomegjelenő párbeszédablak jelzi, hogy a forrás elavult, és megkérdezi, hogy szeretné-e a projekt felépítéséhez.The Microsoft Visual Studiodialog box appears indicating that the source is out of date and asks whether you want to build the project.

  13. Az a Microsoft Visual Studio párbeszédpanel, kattintson a Igen.In the Microsoft Visual Studio dialog box, click Yes.

    A nem hibakeresési információ párbeszédpanel jelenik meg, amely arról tájékoztatja, hogy nincs hibakeresési adatok OSDSetupWizard.exe érhető el.The No Debugging Information dialog box appears informing you that no debugging information is available for OSDSetupWizard.exe.

  14. Az a nem hibakeresési információ párbeszédpanel, kattintson a Igen.In the No Debugging Information dialog box, click Yes.

    Ekkor megnyílik az UDI varázsló jelenik meg az egyéni varázsló lappal.The UDI Wizard opens with the custom wizard page displayed.

  15. Győződjön meg arról, hogy egy érték kiválaszthatja válassza ki azt a helyet.Verify that you can select a value in Choose your location.

  16. Az a minta lapok varázslót alkotnak, kattintson a Mégse.In the Wizard with sample page form, click Cancel.

    A megszakítja a varázsló párbeszédpanel jelenik meg.The Cancel Wizard dialog box appears.

  17. Az a megszakítja a varázsló párbeszédpanel, kattintson a Igen.In the Cancel Wizard dialog box, click Yes.

  18. Zárja be a Visual Studio 2010.Close Visual Studio 2010.

Győződjön meg arról, hogy a SampleEditor projekt megfelelően buildekVerify That the SampleEditor Project Builds Correctly

A SampleEditor projekt létrehozása egy egyéni varázsló szerkesztő az UDI varázsló Designer mutatja.The SampleEditor project provides an example of how to create a custom wizard page editor for the UDI Wizard Designer. SampleEditor projekttel kapcsolatos további információkért lásd: tekintse át a Visual Studio megoldás SamplePage.For more information about the SampleEditor project, see Review the SamplePage Visual Studio Solution.

A SampleEditor projekt megfelelően buildek ellenőrzéseTo verify that the SampleEditor project builds correctly

  1. Indítsa el a Visual Studio 2010.Start Visual Studio 2010.

  2. Nyissa meg a SampleEditor projektet.Open the SampleEditor project.

    A SampleEditor projekt található a local_folder\SDK\UDI\SampleEditor mappában (ahol local_folder az a folyamat korábbi szakaszában létrehozott mappa).The SampleEditor project resides in the local_folder\SDK\UDI\SampleEditor folder (where local_folder is the folder you created earlier in the process).

  3. A Visual Studio 2010, a Megoldáskezelőben válassza ki a SampleEditor projektet.In Visual Studio 2010, in Solution Explorer, select the SampleEditor project.

  4. Az a projekt menüben kattintson a hivatkozás hozzáadása.From the Project menu, click Add Reference.

    A hivatkozás hozzáadása párbeszédpanel.The Add Reference dialog box opens.

  5. Az a hivatkozás hozzáadása párbeszédpanel, kattintson a Tallózás fülre.In the Add Reference dialog box, click the Browse tab.

  6. Az a Tallózás lapon lépjen installation_folder\Bin (ahol installation_folder a mappába, amelyben az MDT van).On the Browse tab, go to installation_folder\Bin (where installation_folder is the folder in which you installed MDT). Válassza ki a következő fájlokat, és kattintson OK:Select the following files, and then click OK:

    • Microsoft.Enterprise.UDIDesigner.Common.dllMicrosoft.Enterprise.UDIDesigner.Common.dll

    • Microsoft.Enterprise.UDIDesigner.DataService.dllMicrosoft.Enterprise.UDIDesigner.DataService.dll

    • Microsoft.Enterprise.UDIDesigner.Infrastructure.dllMicrosoft.Enterprise.UDIDesigner.Infrastructure.dll

    • Microsoft.Practices.Prism.dllMicrosoft.Practices.Prism.dll

    • Microsoft.Practices.ServiceLocation.dllMicrosoft.Practices.ServiceLocation.dll

    • Microsoft.Practices.Unity.dllMicrosoft.Practices.Unity.dll

    • RibbonControlsLibrary.dllRibbonControlsLibrary.dll

    Megjegyzés

    A több fájlt választhat a Tallózás lapon kattintson a fájlokra a CTRL billentyűt lenyomva tartja.You can select multiple files on the Browse tab by holding down the CTRL key while you click the files.

  7. A Megoldáskezelőben Ugrás SampleEditor/hivatkozik.In Solution Explorer, go to SampleEditor/References.

  8. Ellenőrizze, hogy a hivatkozások egyike figyelmeztetést vagy hibát.Verify that none of the references have any warnings or errors.

  9. A Megoldáskezelőben kattintson a jobb gombbal a SampleEditor projektet, és kattintson tulajdonságok.In Solution Explorer, right-click the SampleEditor project, and then click Properties.

    A SampleEditor tulajdonságlapjain párbeszédpanel jelenik meg.The SampleEditor Property Pages dialog box appears.

  10. Az a SampleEditor tulajdonságlapjain párbeszédpanel, kattintson a Debug fülre.In the SampleEditor Property Pages dialog box, click the Debug tab.

  11. Az a Debug lapra, majd Start külső program.On the Debug tab, click Start external program.

  12. A Start külső program, típus installation_folder\Bin\UDIDesigner.exe (ahol installation_folder a mappába, amelyben az MDT van), és kattintson a OK.In Start external program, type installation_folder\Bin\UDIDesigner.exe (where installation_folder is the folder in which you installed MDT), and then click OK.

    Tipp

    A három pont (…) gombra, tallózással keresse meg a mappát, és válassza ki a UDIDesigner.exe kattinthat.You can click the ellipse (…) button to browse to the folder and select UDIDesigner.exe.

  13. Az a fájl menüben kattintson a összes mentése.From the File menu, click Save All.

  14. Másolás a local_folder\SDK\SamplePage\SamplePage.dll.config fájlt a installation_folder\Bin\Config mappában (ahol local_folder az a mappa, a fejlesztési számítógépen a konfigurációs folyamat korábbi szakaszában létrehozott ésinstallation_folder a mappába, amelyben az MDT van).Copy the local_folder\SDK\SamplePage\SamplePage.dll.config file to the installation_folder\Bin\Config folder (where local_folder is the folder you created on the development computer earlier in the configuration process andinstallation_folder is the folder in which you installed MDT).

  15. A Visual Studio 2010 a a Debug menüben kattintson a Start Debugging.In Visual Studio 2010, from the Debug menu, click Start Debugging.

    Az UDI varázsló Designer kezdődik.The UDI Wizard Designer starts.

  16. Kattintson a menüszalagon az UDI varázsló Designer nyitott.In the UDI Wizard Designer, on the Ribbon, click Open.

    A nyitott párbeszédpanel jelenik meg.The Open dialog box appears.

  17. Az a nyissa meg a párbeszédpanelen nyissa meg a local_folder\SDK\SamplePage\SamplePage\Config.xml fájl (ahol local_folder fejlesztéséről létrehozott mappa számítógép a konfigurációs folyamat korábbi szakaszában).In the Open dialog box, open the local_folder\SDK\SamplePage\SamplePage\Config.xml file (where local_folder is the folder you created on the development computer earlier in the configuration process).

    A fájl megnyitása Config.xml, és az egyéni StageGroup részletező ablaktábláján jelenik meg.The Config.xml file opens, and the Custom StageGroup is displayed in the details pane.

  18. A részleteket tartalmazó ablaktáblán kattintson a konfigurálása fülre.In the details pane, click the Configure tab.

  19. Tekintse át a konfigurációs adatait a hely be, beleértve a következőket:Review the configuration information for the Location box, including the following:

    • Nem zárolt gomb, amellyel engedélyezi vagy letiltja a hely mezőbeUnlocked button, with which you enable or disable the Location box

    • Alapértelmezett érték mező, amelyben meg alapértelmezett értéket is megjelennek a a hely mezőbeDefault value box, in which you enter a default value to be displayed in the Location box

    • Az összefoglalás lapon látható jól hangzó megjelenítési nevet, amely megadhatja a felirat jelenik meg azzal a a összefoglaló lapFriendly display name visible in summary page, in which you enter the caption for the information displayed on the Summary page

    • Hely lista, amely lehetséges helyek listáját tartalmazzaLocation list box, which includes a list of possible locations

  20. Az UDI varázsló-Tervező bezárása.Close the UDI Wizard Designer.

  21. Zárja be a Visual Studio 2010.Close Visual Studio 2010.

Az UDI SDK példák áttekintéseReviewing the UDI SDK Examples

Fejlesztési megkezdése előtt tekintse át az UDI SDK-ban megadott példákat.Before beginning development, review the examples provided in the UDI SDK. Használja az információt a jelen útmutató és a példákban a forráskód hozhat létre a saját egyéni varázslólapok UDI és varázslólap szerkesztők.Use the information in this guide and the source code in the examples to help you create your own UDI custom wizard pages and wizard page editors.

Lépkedjen végig az UDI SDK példák megtekintésével a:Go through the UDI SDK examples by reviewing the:

Tekintse át az SDK mappa tartalmaReview the Contents of the SDK Folder

A UDI fejlesztési környezet konfigurálása során az SDK mappából a a mappába, amelyben az MDT létrehozott egy másik mappába másolta.During configuration of the UDI development environment, you copied the SDK folder from the folder in which you installed MDT to another folder that you created. 1. táblázat felsorolja a mappák azonnal alatt az SDK mappából, és egy rövid leírását.Table 1 lists the folders immediately beneath the SDK folder and provides a brief description of each.

1. táblázat.Table 1. Az UDI SDK mappákFolders in the UDI SDK

FolderFolder Ez a mappa tartalmazThis folder contains
Magában foglaljaIncludes A C++ fejlécfájlok szükséges hozzon létre egy egyéni varázslólapok az UDI varázslóThe C++ header files necessary for creating custom wizard pages for the UDI Wizard
FüggvénytárakLibs A C++ könyvtárban lévő fájlokat kapcsolódó az egyéni oldalát; a statikus kódtárakon 32 bites és 64 bites verziója van.The C++ library files that will be linked to your custom page; there are 32-bit and 64-bit versions of the static link libraries. Megjegyzés: A szalagtárak (IA-64) Itanium verziói nem érhetők el.Note: Itanium versions of the libraries (IA-64) are not available.
SampleEditorSampleEditor A Visual Studio-projekt C# nyelven írt UDI varázsló Designer SamplePage lapszerkesztési egy egyéni szerkesztőt készítéséhezA Visual Studio project for building a custom editor used to edit the SamplePage page in UDI Wizard Designer, which is written in C#
SamplePageSamplePage Egyéni UDI varázsló lap, amely betöltőprogramot Visual C++ készítéséhez Visual Studio-projektA Visual Studio project for building a custom UDI wizard page, which is written in Visual C++

Tekintse át a SamplePage Visual Studio megoldásReview the SamplePage Visual Studio Solution

Mielőtt létrehozná a egyéni varázslólapok és varázslólap szerkesztők, a következő feladatokat az UDI fejlesztőkörnyezet előkészítése:Before you begin creating your custom wizard pages and wizard page editors, perform the following tasks to prepare the UDI development environment:

A varázsló lap életciklusának áttekintéseReview the Wizard Page Life Cycle

Egy UDI varázslólap módszerek, minden szakasza (vagy fázisában) a lap életciklusának megfelelő rendelkezik.A UDI wizard page has methods that correspond to each stage (or phase) of the life cycle of the page. Az egyéni varázslólap létrehozásának részeként kell ezek a módszerek a kód felülbírálására.As a part of creating your custom wizard page, you need to override these methods with your code. 2. táblázat sorolja fel kell felülbírálni, és az egyes módszerek, beleértve a módszer használata a varázsló lap életciklusának rövid leírását tartalmazza.Table 2 lists the methods that you will need to override and provides a brief description of each method, including when to use the method in the wizard page life cycle.

2. táblázat.Table 2. A varázsló módszerek lapon életciklusaMethods in a Wizard Page Life Cycle

MódszerMethod LeírásDescription
OnWindowCreatedOnWindowCreated Ez a metódus neve egyszer, a lap ablak létrehozása után.This method is called once, after the page’s window has been created.

Ezzel a módszerrel a kód írását, amely először a lap inicializálja, és csak egyszer hajtható végre kell.For this method, write code that initializes the page for the first time and only needs to be performed once. Például ezt a módszert mezők inicializálása vagy a konfigurációs adatokat olvasni az beállító elemekbe az UDI varázsló konfigurációs fájlban.For example, use this method to initialize fields or to read configuration information from the Setter elements in the UDI Wizard configuration file.
OnWindowShownOnWindowShown Ez a módszer minden alkalommal, amikor a lap jelenik meg az UDI varázsló (látható) neve.This method is called each time the page is displayed (shown) in the UDI Wizard. A lap jelenik meg először nevezik, és minden alkalommal, amikor a gombra kattintva lépjen a lapra következő vagy vissza a varázslóban.It is called the first time the page is displayed and each time you navigate to the page by clicking Next or Back in the wizard.

Ezzel a módszerrel a kód írását, amely előkészíti a lapon megjelenő – például a memória változók, a feladatütemezési változók vagy a környezeti változók olvasása, és majd frissítése a lap ezeket a változókat a módosításokat.For this method, write code that prepares the page to be displayed—for example, reading memory variables, task sequence variables, or environment variables, and then updating the page based on any changes to those variables.
OnCommonControlEventOnCommonControlEvent Ez a metódus nem hívható, bármikor oldalon jelenik meg, és WM_NOTIFY üzenetet kapott egy alárendelt (általában közös szabályozza).This method can be called anytime the wizard page is displayed and receives a WM_NOTIFY message from a child (typically, common controls).

Ezzel a módszerrel a kód írását, amely alapján az értesítési üzenet WM_NOTIFY kezeli.For this method, write code that handles WM_NOTIFY based on the notification message. Például előfordulhat, hogy kívánt események válaszolni közös vezérlőből, például a gombra, vagy kattintson duplán az események válaszol a TreeView vezérlő.For example, you may want to respond to events from a common control, such as responding to click or double-click events for a TreeView control.
OnUnhandledEventOnUnhandledEvent Ez a metódus egy nem kezelt ablak üzenet akkor jelenik meg a varázslólap bármikor nevezik.This method is called anytime an unhandled window message occurs for your wizard page. Ezt a módszert biztosít a lehetőséget, és ezek kezeléséhez egyébként nem kezelt ablak üzeneteket.This method provides the opportunity to intercept and handle these otherwise unhandled window messages.

Ezzel a módszerrel a kód írását, amely kezeli a ablak üzeneteket, amelyek a varázslólap megfelelő.For this method, write code that handles the window messages that are pertinent to your wizard page. Általában nem kell bírálja felül ezt a módszert.Typically, you will not need to override this method.
OnNextClickedOnNextClicked Ezt a módszert nevezik kattintva tovább a varázslóban.This method is called when you click Next in the wizard.

Ezzel a módszerrel a kód írását, amely minden szükséges műveleteket hajtja végre a varázsló következő lapjára helyezése előtt – például végrehajtása az érvényesítési, amelyek hosszú időt vehet igénybe.For this method, write code that performs any necessary actions before moving to the next wizard page—for example, performing validation that can take a long time. Ha az ellenőrzés sikertelen, visszavonhatja a következő kérelmek és egy üzenetet jelenít meg.If the validation fails, you can cancel the Next request and display a message.
OnWindowHiddenOnWindowHidden Ez a módszer minden alkalommal, amikor a lap vagy az előző vagy következő varázslólap megjelenítésekor rejtett nevezik.This method is called each time the page is hidden when either the previous or next wizard page is shown.

Ezzel a módszerrel a kód írását, amely minden műveletet elvégez, mielőtt a lap rejtett, előtt egy másik lapon látható.For this method, write code that performs any actions before the page is hidden, prior to another page being shown. Általában nem kell bírálja felül ezt a módszert.Typically, you will not need to override this method.

Tekintse át a SamplePage – példaReview the SamplePage Example

Tekintse át a SamplePage példa használatával az alábbi listában az események sorozatát jelenti. a SamplePage példában varázsló lap életciklusa során:Review the SamplePage example using the following list, which represents the sequence of events during the wizard page life cycle of the SamplePage example:

  1. Az UDI varázsló OSDSetupWizard.exe, a konfigurációs adatokat (a Config.xml fájl) példában az UDI varázsló konfigurációs fájlból olvassa be, leírtak szerint 1. lépés: Az UDI varázsló (OSDSetupWizard.exe) beolvassa a Config.xml fájlt.The UDI Wizard, OSDSetupWizard.exe, reads the configuration information from the UDI Wizard configuration file in the example (the Config.xml file) as described in Step 1: The UDI Wizard (OSDSetupWizard.exe) Reads the Config.xml File.

  2. Az UDI varázsló betölti a DLL-fájlok, a varázsló minden lapján felsorolt UDI varázsló konfigurációs fájlban, a szükséges 2. lépés: Az UDI varázsló betölti a dll-fájlt az egyéni varázslólap.The UDI Wizard loads the DLLs required for each wizard page listed in the UDI Wizard configuration file as described in Step 2: The UDI Wizard Loads the DLL for the Custom Wizard Page.

  3. A UDI varázsló megjeleníti az egyéni varázsló lapot, és lehetővé teszi, hogy a kívánt vezérlés leírtak szerint 3. lépés: Az UDI varázsló megjeleníti az egyéni varázslólap.The UDI Wizard displays the custom wizard page and allows for the desired control interaction as described in Step 3: The UDI Wizard Displays the Custom Wizard Page.

  4. Az egyéni varázslólap összegyűjtötte az adatokat, ha bármely való kattintás előtt szükséges feladatok végrehajtása következő a folytatáshoz a következő varázsló leírtak 4. lépés: A Tovább gombra kattint a egyéni varázslólapon.When the custom wizard page has collected the information, perform any tasks necessary before clicking Next to proceed to the next wizard as described in Step 4: The Next Button Is Clicked in the Custom Wizard Page.

1. lépés: Az UDI varázsló (OSDSetupWizard.exe) beolvassa a Config.xml fájltStep 1: The UDI Wizard (OSDSetupWizard.exe) Reads the Config.xml File

Amikor elindul az UDI varázsló (OSDSetupWizard.exe), alapértelmezés szerint olvassa be az UDI varázsló konfigurációs fájlt, amely a UDIWizard_Config.xml fájl – a UDI varázsló elsődleges konfigurációs fájlját.When the UDI Wizard (OSDSetupWizard.exe) starts, by default it reads the UDI Wizard configuration file, which is the UDIWizard_Config.xml file—the primary configuration file for the UDI Wizard.

Megjegyzés

A példában a Config.xml fájl, a konfigurációs fájlban.The example uses the Config.xml file as the configuration file. Az MDT az alapértelmezett konfigurációs fájl a UDIWizard_Config.xml fájlt, amely az MDT fájlok csomag konfigurációs parancsfájlok mappájában található.In MDT, the default configuration file is the UDIWizard_Config.xml file, which resides in the Scripts folder in the MDT Files package for configuration.

Felülbírálhatja az alapértelmezett konfigurációs fájl, amely az UDI varázsló használja az UDI varázsló feladatütemezési lépésének módosításával használja a /definition paraméter.You can override the default configuration file that the UDI Wizard uses by modifying the UDI Wizard task sequence step to use the /definition parameter. Felülbírálja az alapértelmezett konfigurációs fájl, amely az UDI varázsló kapcsolatos további információkért lásd: "Bírálja felül a konfigurációs fájl, amely az UDI varázsló használ".For more information about overriding the default configuration file that the UDI Wizard uses, see "Override the Configuration File That the UDI Wizard Uses".

A legfelső szintű elem a Config.xml fájlban aThe top-level elements in the Config.xml file are the

  • DLL-ek elemDLLs element

  • Stílus elemStyle element

  • Lapok elemPages element

  • StageGroups elemStageGroups element

    További információ az UDI varázsló konfigurációs fájl séma és az ilyen elemek: UDI varázsló konfigurációs fájl séma-hivatkozás.For more information about the schema of the UDI Wizard configuration file and each of these elements, see UDI Wizard Configuration File Schema Reference.

    Az UDI varázsló megvizsgálja a DLL-ek elem tölthető be a .dll fájlok keres.The UDI Wizard scans the DLLs element looking for the .dll files to load. A példában két a .dll fájlok listáját: SamplePage.dll és SharedPages.dll.In the example, two .dll files are listed: SamplePage.dll and SharedPages.dll. A .dll fájlok OSDSetupWizard.exe—the eszközök megegyező mappában kell lennie,\platform mappában (ahol platform x86 a 32 bites verziója vagy a 64 bites verziója x64).These .dll files must reside in the same folder as OSDSetupWizard.exe—the Tools\platform folder (where platform is x86 for the 32-bit version or x64 for the 64-bit version).

    Az UDI varázsló megvizsgálja a lapok elem által meghatározott oldalak keres.The UDI Wizard scans the Pages element looking for the pages that are defined. A példában két másik lap meghatározása: Egyéni és SummaryPage.In the example, two pages are defined: Custom and SummaryPage. A típus attribútuma a lap elem a PageClassIDs.h fájlban van definiálva, és egyedi határozza meg az egyéni oldalát típusú.The Type attribute of the Page element is defined in the PageClassIDs.h file and uniquely defines the type of your custom page.

    A példában a definiált típusnak: Microsoft.SamplePage.LocationPage.In the example, the defined type is Microsoft.SamplePage.LocationPage. Az egyéni oldalán behelyettesíteni bármely egyéb lapokkal a jövőben létrehozhat ütközések elkerülése érdekében a következőket:For your custom page, substitute the following to avoid any potential conflicts with other pages you may create in the future:

  • A szervezet neve helyett, Microsoft.Your organization name in the place of Microsoft.

  • A projekt neve helyett, SamplePage.Your project name in the place of SamplePage.

  • Az egyéni varázslóoldal neve helyett, LocationPage.Your custom wizard page name in the place of LocationPage.

2. lépés: Az UDI varázsló betölti a dll-fájlt az egyéni varázslólapStep 2: The UDI Wizard Loads the DLL for the Custom Wizard Page

Az UDI varázsló betölti a dll-fájlt, ha meghívja a RegisterFactories függvénynek, amely a .dll kiterjesztésű fájlnak kell megvalósítani.When the UDI Wizard loads your DLL, it calls the RegisterFactories function, which must be implemented in your .dll file. A példában ez a funkció a dllmain.ccp fájlban van megvalósítva.In the example, this function is implemented in the dllmain.ccp file. Meg kell valósítania az hoz létre a varázsló minden lapján a RegisterFactories függvény.Each wizard page you create must implement the RegisterFactories function.

A RegisterFactories függvény segítségével regisztrálja a varázslólap gyári osztálya az osztály gyári beállításjegyzék az UDI varázslóhoz.The RegisterFactories function is used to register the factory class of your wizard page with the class factory registry for the UDI Wizard. Osztály előállítók olyan osztályok, létrehozhat egy másik osztály egy példányát.Class factories are classes that can create an instance of another class. A RegisterFactories függvény hoz létre egy új előállító osztály példányát, és adja át, hogy az osztály a osztály gyári beállításjegyzék az UDI varázslót, amely elérhetővé teszi a gyári osztály a varázslót.The RegisterFactories function creates a new instance of a factory class and passes that class to the class factory registry for the UDI Wizard, which makes that factory class available to the wizard. Az UDI varázsló megkeresi a gyári osztály, amely megfelel az ID regisztrálva a típus attribútuma a lap egyéni oldalon eleme.The UDI Wizard looks for a factory class registered with an ID that matches the Type attribute of the Page element for the custom wizard page.

A példában az azonosító van definiálva, ID_Location a PageClassIds.h fájlt a Microsoft.SamplePage.LocationPage, egyező a típus a attribútumát. Lap a Config.xml fájlban.In the example, the ID is defined as ID_Location in the PageClassIds.h file as Microsoft.SamplePage.LocationPage, which matches the Type attribute for the Page element in the Config.xml file. ID_Location átadása paraméterként a RegisterFactories függvény megvalósítva a dllmain.ccp fájlban.ID_Location is passed as a parameter in the RegisterFactories function implemented in the dllmain.ccp file.

Létrehozhat egy függvény használatával a Register_neve függvény sablon új előállító példány létrehozását, és az újonnan létrehozott példány regisztrálásához.You can create a function using the Register_name function template to simplify the creation of a new factory instance and register the newly created instance. A neve a regisztrációs függvény sablonnal megadott értéket meg kell valósítania a iClassFactory felületet.The name value provided using the Register function template must implement the iClassFactory interface. A ClassFactoryImpl osztály legtöbb osztály gyár végrehajtására vonatkozó részletek.The ClassFactoryImpl Class handles most of the details for implementing a class factory.

Használhatja a RegisterFactories függvény tevékenységtípusok és ellenőrzési típusok.You can also use the RegisterFactories function to register task types and validator types. További információkért tekintse át a következőket:For more information, see the following:

Megjegyzés

A példa tartalmazza, és csak egy egyéni oldalon regisztrálja.The example contains and registers only the one custom wizard page. A példa nem tartalmazza az egyéni tevékenységek vagy érvényesség-ellenőrzők, és ezért nem regisztrálható egy egyéni tevékenységet vagy érvényesség-ellenőrzők.The example does not include custom tasks or validators and so does not register any custom tasks or validators.

3. lépés: Az UDI varázsló megjeleníti az egyéni varázslólapStep 3: The UDI Wizard Displays the Custom Wizard Page

A példában szereplő egyéni oldalon a LocationPage.cpp fájlban van definiálva.The custom wizard page in the example is defined in the LocationPage.cpp file. Varázslóoldalak sablon osztályok rendelkezik lényegében egy lap szolgáltatásokat nyújtó származik.Wizard pages are derived from template classes that provide much of the functionality a page has. A minden varázslólapok kell származtatni a WizardPageImpl sablon osztály, mely valósít meg a IWizardPage felület.All wizard pages should derive from the WizardPageImpl Template Class, which implements the IWizardPage Interface. Varázsló minden lapján más választható sablon osztályok és annak megfelelően kell elvégezni a lap megfelelő adapterek is létrehozható.Each wizard page can implement other optional template classes and corresponding interfaces based on the needs of the page.

A WizardPageImpl sablon osztály felületei számos hasznos, amelyek segítségével egyéni varázslólapok írni.The WizardPageImpl Template Class has several useful interfaces that can help you write custom wizard pages. Alkalmazzon a WizardPageImpl sablon osztály , az egyéni varázslólap alaposztálya.Implement the WizardPageImpl Template Class as the base class for your custom wizard page.

A rendelkezésre álló listája:For a list of the available:

  • Sablon osztályok, a varázsló lapjain, lásd: lap segítőosztályok varázslóTemplate classes for wizard pages, see Wizard Page Helper Classes

  • A varázsló lap sablon osztályoknak Interfaces Lásd: varázsló lap felületekInterfaces for the wizard page template classes, see Wizard Page Interfaces

    A példában szereplő egyéni oldalon származik a WizardPageImpl sablon osztály és megvalósítja az IWizardPage felület.The custom wizard page in the example is derived from the WizardPageImpl Template Class and implements the IWizardPage Interface. Emellett egyéni oldalon megvalósítja a IFieldCallback felületet.In addition, the custom wizard page implements the IFieldCallback interface. Mindkét esetben a LocationPage.cpp fájlban valósíthatók meg.Both of these are implemented in the LocationPage.cpp file.

    A példa egyéni varázsló oldala felülírja a következőkkel:The example custom wizard page overrides the following methods:

  • OnWindowCreated.OnWindowCreated. A OnWindowCreated módszer a varázsló a lap a következő módszereket hív meg:The OnWindowCreated method in the example wizard page calls the following methods:

    • AddField.AddField. Ez a módszer a IDC_COMBO_LOCATION vezérlő párbeszédpanel a IDD_LOCATION_PAGE erőforrás a adatok nevű elem helya Config.xml fájlban.This method relates the IDC_COMBO_LOCATION box control in the IDD_LOCATION_PAGE resource with the Data element named Location in the Config.xml file.

      Kívül a AddField módszer, használhatja a AddRadioGroup és AddToGroup módszerek más vezérlők és viselkedéshez támogatásához.In addition to the AddField method, you could use the AddRadioGroup and AddToGroup methods to support other controls and behaviors.

      Megjegyzés

      Győződjön meg arról, hogy hívjon a AddField, AddRadioGroup, vagy AddToGroup metódus hívása előtt a InitFields metódust.Ensure that you call the AddField, AddRadioGroup, or AddToGroup method prior to calling the InitFields method.

    • InitFields.InitFields. Ezt a módszert a mezők (vezérlők), amely az űrlap hozzáadott inicializálása.Use this method to initialize the fields (controls) that you have added to the form. Az oldal az egérmutatót az egyik paraméter.The pointer of the page is a parameter. A példában a ez mutató átadása, amely az aktuális oldalon hivatkozik.In the example, the this pointer is passed, which refers to the current page.

      Megjegyzés

      Használatának támogatásához a ez mutató, meg kell valósítani a IFieldCallback felület mellett a felületek, amelyek a WizardPageImpl sablon osztály támogatja.To support the use of the this pointer, you must implement the IFieldCallback interface in addition to the interfaces that the WizardPageImpl Template Class supports.

      A IFieldCallback hívások csatoló a SetFieldDefault metódus, amely vezérlők nem szöveg alapértelmezett értékeinek beállítása és jelölőnégyzeteket vezérlők használatával.The IFieldCallback interface calls the SetFieldDefault method, which is used to set the default values for controls other than text box and check box controls. A példában a SetFieldDefault metódus beállítja a kombinált lista vezérlőjének meghatározott alapértelmezett érték alapján kezdeti indexét a alapértelmezett eleme a mező a Config.xml fájl eleme.In the example, the SetFieldDefault method sets the initial index of the combo box control based on the default value specified in the Default element for the Field element in the Config.xml file.

      A OnWindowCreated módszert állítja be az űrlapot vezérlő használatával a IFormController felület.The OnWindowCreated method sets up the form controller using the IFormController interface. Az űrlap tartományvezérlő beállításával kapcsolatos további információkért lásd: létrehozza az űrlapot.For more information about setting up the form controller, see Setting up the Form.

  • InitLocations.InitLocations. Ez a módszer a kombinált lista a listából a Config.xml fájlban helyek tölti fel.This method populates the combo box from the list of locations in the Config.xml file. A adatok elem és a gyermek DataItem elemek a Confg.xml fájlt adja meg a lehetséges értékek listáját.The Data element and child DataItem elements the Confg.xml file provide the list of possible values.

  • OnNextClicked.OnNextClicked. Ez a módszer a következő feladatokat hajtja végre:This method performs the following tasks:

    • Frissítések a TSLocation feladatütemezési változó be a kombinált mezőben kiválasztott értékét a SaveFields módszerUpdates the TSLocation task sequence variable with the value selected in the combo box using the SaveFields method

    • Hozzáadja a megjeleníteni kívánt adatokat a összegzés lap segítségével a SaveFields módszerAdds information that will be shown on the Summary page using the SaveFields method

4. lépés: A Tovább gombra kattint az egyéni oldalonStep 4: The Next Button Is Clicked in the Custom Wizard Page

A felhasználó oldalon egyéni mezők befejezése ő kattint következő, mely hívások a OnNextClicked metódust.When the user completes the fields on the custom wizard page, he or she clicks Next, which calls the OnNextClicked method. A OnNextClicked metódus hajtja végre a szükséges feladatokat, mielőtt továbblép a varázsló következő lapjára, például a konfigurációs módosítások egyéni oldalon rögzítése.The OnNextClicked method performs any necessary tasks before proceeding to the next wizard page, such as recording any configuration changes made on the custom wizard page.

A példa egyéni varázslólap a felülbírálást a OnNextClicked metódus megvalósítása a LocationPage.ccp fájlban.For the example custom wizard page, the override for the OnNextClicked method is implemented in the LocationPage.ccp file. Az a OnNextClicked egyéni varázsló a lap metódust, az alábbi módszerek nevezzük:In the OnNextClicked method in the example custom wizard page, the following methods are called:

  1. InitSection.InitSection. Ez a módszer a fejléc (címke felirat) jelenik meg az összesítő adatok inicializálja a összefoglaló lap.This method initializes the header (label caption) for the summary data displayed on the Summary page. Az érték használatával be általában a DisplayName() függvény.Typically, you can set this value using the DisplayName() function. Az a felirat tartozó adatok mentése használatával a SaveFields metódust.The data associated with this caption is saved using the SaveFields method.

  2. SaveFields.SaveFields. Ez a módszer feladatütemezési változók és megjelenő adatok mezőértékek menti a összegzés lap.This method saves field values to task sequence variables and to the data displayed on the Summary page.

Tekintse át a SampleEditor Visual Studio megoldásReview the SampleEditor Visual Studio Solution

Mielőtt létrehozná a saját egyéni varázslólapok és varázslólap szerkesztők, a következő lépésekkel az UDI fejlesztőkörnyezet előkészítése:Before you begin creating your own custom wizard pages and wizard page editors, perform the following steps to prepare the UDI development environment:

Tekintse át az UDI Tervező varázsló-architektúraReview the UDI Wizard Designer Architecture

Az UDI varázsló Designer WPF megvilágításba helyezik és a Unity segítségével fejlesztették.The UDI Wizard Designer was developed using WPF, Prism, and Unity. Az UDI tervező segítségével szerkesztheti a UDI varázsló-konfigurációs fájl (UDIWizard_Config.xml), amely az UDI varázsló (OSDSetupWizard.exe) szól futásidőben.The UDI Designer is used to edit the UDI Wizard configuration file (UDIWizard_Config.xml), which the UDI Wizard (OSDSetupWizard.exe) reads at runtime. A lapok UDI varázsló konfigurációelemekre elem tartalmazza-e lapok listája, amely rendelkezik egy különálló lap elem a varázsló minden lapján.The Pages element in the UDI Wizard configuration file contains a list of pages that has a separate Page element for each wizard page.

Ha szerkeszti a varázslólap konfigurációs beállításait, az UDI varázsló Designer betölti a egyéni szerkesztőt, amely megfelel a varázsló laptípus.When you edit the configuration settings for a wizard page, the UDI Wizard Designer loads the custom page editor that corresponds to the wizard page type. Az egyéni varázsló lap szerkesztők fejlesztett WPF felhasználói vezérlők szerint.The custom wizard page editors are developed as WPF user controls. Az egyéni varázsló szerkesztő lapok használja a modell – nézet – ViewModel (MVVM) kialakítási mintában a WPF.The custom wizard page editor pages use the Model–View–ViewModel (MVVM) design pattern for WPF.

MVVM kialakítási minta segítségével az éppen megjelenített adatok a felhasználói felület (UI; bemutató) elkülönítéséhez.The MVVM design pattern helps separate the user interface (UI; presentation) from the data being presented. Az adatok egy homlokzati felett. a lap elem az UDI varázsló konfigurációs fájlban (a példában a Config.xml fájl), amelyek használatával elérhető a CurrentPage tulajdonsága a IDataService felületet.The data is a façade over the Page element in the UDI Wizard configuration file (the Config.xml file in the example), which is accessed using the CurrentPage property of the IDataService interface.

Az UDI varázsló Designer használja a DependencyAttribute hozzáférést szerezni a DataService osztály a függőségi beszúrására szolgáló keretrendszere Unity alapján.The UDI Wizard Designer uses the DependencyAttribute to obtain access to the DataService class based on the dependency injection framework in Unity. A függőségi interjection keretrendszere Unity kapcsolatos további információkért lásd: szúrjon Some élettartama a alkalmazásokba – megismerheti a Unity-alkalmazás letiltása.For more information about the dependency interjection framework in Unity, see Inject Some Life into Your Applications—Getting to Know the Unity Application Block.

Tekintse át a UDI varázslólap konfigurálható összetevőiReview Configurable Components of a UDI Wizard Page

Az egyéni varázslólap létrehozott, a konfigurációs beállítások némelyike kód adható meg, és azzal állítottuk össze a lap után nem módosítható.As you create your custom wizard page, some of the configuration settings may be set in code and cannot be changed after you have compiled the page. Azonban más konfigurációs beállítások, szüksége lesz a konfigurációs beállítások módosítani az UDI varázsló tervezővel engedélyezéséhez.However, for other configuration settings, you will need to allow those configuration settings to be changed using the UDI Wizard Designer.

Általában a konfigurációs beállításokat szeretne konfigurálni az UDI varázsló tervezővel menti az UDI varázsló konfigurációs fájlban (a példában Config.xml fájl).Typically, the configuration settings that you want to configure using the UDI Wizard Designer are saved in the UDI Wizard configuration file (the Config.xml file in the example). Azonban is saját külön konfigurációs fájlt létrehozhatja, ha szükséges.However, you can also create your own separate configuration file, if necessary. Egy példa egy külön konfigurációs fájl segítségével, hogy a UDIWizard_Config.xml.app fájlt, amely a alkalmazás felderítési feladat és a ApplicationPage varázsló lap típus használata.One example of using a separate configuration file is the UDIWizard_Config.xml.app file, which the Application Discovery task and the ApplicationPage wizard page type use.

Az alább felsoroljuk azokat a tipikus konfigurációs beállítások, amelyeket felügyelhet a UDI varázsló Designer segítségével:The following is a list of the typical configuration settings that you can manage using the UDI Wizard Designer:

  • A mező.Field. Használjon mezők engedélyezése a felhasználók számára információk megadása.Use fields allow users to provide input. Mezők tűnnek mező elemek UDI varázsló konfigurációs fájlban (UDIWizard_Config.xml), amely minden mező konfigurációs beállításait tartalmazza.Fields appear as Field elements in the UDI Wizard configuration file (UDIWizard_Config.xml), which contains the configuration settings for each field. A megfelelő varázsló szerkesztőt kell megadni. a mező használatával mező konfigurációs beállításainak szerkesztésre metódus a FieldElementControl.The corresponding wizard page editor needs to provide a method for editing the field configuration settings for the field using the FieldElementControl.

  • Tulajdonságok.Properties. Setter elemek súgó entitások tulajdonságok az oldalon, például a lapok létrehozása a lap mezőiben elem, a mező elem, vagy az adatok a adatok vagy A DataItem elemek.Setters help create properties for entities on the page, such as pages in the Page element, fields in the Field element, or data in the Data or DataItem elements. Konfigurálja a tulajdonságokat a beállító elemek.You configure properties in the Setter elements. Adja hozzá egy külön beállító minden egyes tulajdonsága meg eleme.Add a separate Setter element for each property you want to define. A Tulajdonságok szerkesztése a SetterControl és egyéb konfigurálása beállítására szolgáló elemek más vezérlők.You edit the properties using the SetterControl and configure other Setter elements using other controls.

  • Adatok.Data. Adatok oldalon és a többi összetevő által használható információk tárolására szolgál.Data is used to store information for use by the wizard page and other components. Lapok vagy a mezők használatával adatokat adhat meg a adatok vagy DataItem elemek.You can define data for pages or fields using the Data or DataItem elements. Az adatok a megfelelő használata egy egyszerű vagy hierarchikus struktúra lehet meghatározni a adatok vagy DataItem elemek.The data can be defined in a flat or hierarchical structure through the proper use of the Data or DataItem elements. A példában az SDK Config.xml bemutatja, hogyan hozhat létre egyszerű adatstruktúrák.The Config.xml in the example in the SDK shows how to build flat data structures.

    Az Ön által létrehozott egyéni varázsló szerkesztő ezen konfigurációs beállítások kezeléséhez képesnek kell lennie.The custom wizard page editor that you create must be able to manage these configuration settings.

Tekintse át a EditorPage – példaReview the EditorPage Example

A EditorPage példa konfigurációs beállításainak konfigurálására szolgál a SamplePage varázslólap UDI varázsló konfigurációs fájlban.The EditorPage example is used to configure the configuration settings for the SamplePage wizard page in the UDI Wizard configuration file. A EditorPage például a következő elsődleges összetevőből áll:The EditorPage example has the following primary components:

  • Felhasználói felület konfigurálása a hely kombinált beállításaiUI to configure the Location combo box settings

  • Felhasználói felület használatával hozzáadhat vagy szerkeszthet egy helyre lehetséges helyek, amelyek megjelennek a listában a hely kombinált listaUI to add or edit a location in the list of possible locations, which are shown in the Location combo box

  • Konfigurációs beállítások olvassa be, illetve az UDI varázsló konfigurációs fájl mentéseConfiguration settings read from and saved to the UDI Wizard configuration file

  • A többi összetevő kód támogatásaSupporting code for the other components

    Tekintse át a Visual Studio EditorPage példát a következő lépések elvégzésével:Review the EditorPage example in Visual Studio by performing the following steps:

  1. Tekintse át az SampleEditor varázsló szerkesztő betöltve, és az UDI varázsló Designer inicializálva a felülvizsgálati varázsló lap szerkesztő be- és inicializálási.Review how the SampleEditor wizard page editor is loaded and initialized in the UDI Wizard Designer as described in Review Wizard Page Editor Loading and Initialization.

  2. Tekintse át a szerkesztésére szolgáló felhasználói felület a hely LocationPageEditor.xaml és lévő LocationPageEditor.xaml.cs a kombinált lista tekintse át a felhasználói felület segítségével konfigurálhatja a hely kombinált lista.Review the UI used to edit the Location combo box in the LocationPageEditor.xaml and LocationPageEditor.xaml.cs files as described in Review the User Interface Used to Configure the Location Combo Box.

  3. Tekintse át a felhasználói felület hozzáadása vagy szerkesztése a listát a AddEditLocationView.xaml és AddEditLocationView.xaml.cs fájlok helyét, a használt tekintse át a felhasználói felület segítségével módosítható a lehetséges helyek listája.Review the UI used to add or edit locations to the list in the AddEditLocationView.xaml and AddEditLocationView.xaml.cs files as described in Review the User Interface Used to Modify the List of Possible Locations.

  4. Tekintse át a kódot a UDI varázsló konfigurációs fájlba menti a konfigurációs adatok kezelésére szolgáló tekintse át a konfigurációs adatok kezeléséhez használt kód.Review the code used to manage configuration information saved in the UDI Wizard configuration file as described in Review the Code Used to Manage Configuration Information.

Tekintse át a varázsló szerkesztő betöltése és inicializálásaReview Wizard Page Editor Loading and Initialization

Egyéni varázsló lap szerkesztők töltve az UDI varázsló Designer követelményei szerint.Custom wizard page editors are loaded as required by the UDI Wizard Designer. Az UDI varázsló Designer konfigurációs fájlok töltődnek be az UDI varázsló Designer indításakor.The UDI Wizard Designer configuration files are loaded when the UDI Wizard Designer starts. Az UDI varázsló Designer megvizsgálja a install_folder\Bin\Config mappában (ahol install_folder a mappát, ahol telepítve van-e az MDT neve) fájl .config kiterjesztésű fájlokhoz.The UDI Wizard Designer scans the install_folder\Bin\Config folder (where install_folder is the name of the folder where MDT is installed) for files that have a .config file extension.

A UDI fejlesztési környezet konfigurálása során a SamplePage.dll.confg fájlt másolja a install_folder\Bin\Config mappa.During the configuration of the UDI development environment, you copied the SamplePage.dll.confg file to the install_folder\Bin\Config folder. Amikor elkezdi az UDI varázsló Designer, a SamplePage.dll.confg fájl található és betölteni.When you start the UDI Wizard Designer, the SamplePage.dll.confg file is found and loaded.

Az UDI varázsló Designer használja az alábbi attribútumain a lap betöltése és a EditorPage példa inicializálása SamplePage.dll.confg fájlban:The UDI Wizard Designer uses the following attributes of the Page element in the SamplePage.dll.confg file to load and initialize the EditorPage example:

  • DesignerAssembly.DesignerAssembly. Ez az attribútum határozza meg a nevét, a dll-fájl betöltését.This attribute determines the name of the DLL to be loaded. A DLL-nek kell helyezni a UDIDesigner.exe fájlt, amely ugyanabban a mappában a install_folder\Bin mappában (ahol install_folder MDT mappája neve).This DLL needs to be placed in the same folder as the UDIDesigner.exe file, which is the install_folder\Bin folder (where install_folder is the name of the folder in which MDT is installed).

  • DesignerType.DesignerType. Ez az attribútum a Microsoft .NET nevét a WPF felhasználói vezérlőt tartalmazó osztály.This attribute is the Microsoft .NET type name of the class that contains the WPF user control.

  • Típus.Type. Ez az attribútum segítségével konfigurálhatja a lap egyéni oldalon, amely az UDI varázsló tölti be.Use this attribute to configure the page type of the custom wizard page, which the UDI Wizard loads. Az UDI varázsló Designer ezt az attribútumot használja a megfelelő kereséséhez lap a UDI varázsló konfigurációs fájlban.The UDI Wizard Designer uses this attribute to locate the appropriate Page element in the UDI Wizard configuration file.

  • Dll.Dll. Ez az attribútum segítségével konfigurálhatja a DLL eleme az UDI varázsló konfigurációs fájlt, amely az UDI varázsló Designer hoz létre.Use this attribute to configure the DLL element in the UDI Wizard configuration file, which the UDI Wizard Designer creates.

  • Leírás.Description. Ez az attribútum segítségével információval szolgálnak a varázsló-szerkesztőt.Use this attribute to provide information about the wizard page editor. Ez az attribútum értéke látható a új oldal hozzáadása a UDI varázsló tervezőben, a varázsló lap hozzáadása a "tára" szolgáló párbeszédpanelen.The value of this attribute is shown in the Add New Page dialog box in the UDI Wizard Designer, which is used to add the wizard page to the "Page Library".

  • DisplayName.DisplayName. Ez az attribútum segítségével adja meg az egyéni varázslólap az UDI varázsló tervezőben megjelenő nevét.Use this attribute to provide the name of the custom wizard page that is displayed in the UDI Wizard Designer. Ez az attribútum értéke látható a új oldal hozzáadása a UDI varázsló tervezőben, a varázsló lap hozzáadása a "tára" szolgáló párbeszédpanelen.The value of this attribute is shown in the Add New Page dialog box in the UDI Wizard Designer, which is used to add the wizard page to the "Page Library".

    A példában a típusú a SamplePage egyéni varázsló lapja Microsoft.SamplePage.LocationPage, amely a Config.xml fájl kerül.In the example, the type of the SamplePage custom wizard page is Microsoft.SamplePage.LocationPage, which is saved in the Config.xml file. A Config.xml fájl található, a local_folder\SDK\SamplePage\SamplePage mappában (ahol local_folder a korábban a konfigurációban a fejlesztési számítógépen létrehozott mappa folyamat).The Config.xml file resides in the local_folder\SDK\SamplePage\SamplePage folder to (where local_folder is the folder you created on the development computer earlier in the configuration process).

Tekintse át a felhasználói felület segítségével konfigurálhatja a hely kombinált listaReview the User Interface Used to Configure the Location Combo Box

Ha a varázsló szerkesztő betöltött és inicializálva, a szerkesztő SampleEditor varázsló be töltve, ha egy lap típussal rendelkező Microsoft.SamplePage.LocationPage szerkesztésekor.When the wizard page editor is loaded and initialized, the SampleEditor wizard page editor is loaded when a page with a type of Microsoft.SamplePage.LocationPage is edited. A szerkesztő felhasználói felülete a LocationPageEditor.xaml fájl tárolja.The UI for the page editor is stored in the LocationPageEditor.xaml file.

Ha a felhasználói felület megvizsgálja a a tervezési lapra, és a kód a XAML lapon megtekintheti a grafikus felhasználói felület és az elemek és attribútumok az Extensible Application Markup Language (közötti kapcsolat XAML-KÓDOT).If you examine the UI on the Design tab and the code on the XAML tab, you can see the relationship between the graphical UI and the elements and attributes in the Extensible Application Markup Language (XAML).

Például, ha tekintse át a vezérlők: FieldElementControl elem az XAML-kódban láthatja, hogyan, amely kapcsolódik a megfelelő felhasználói felület elrendezése.For example, if you review the Controls:FieldElementControl element in the XAML you can see how that relates to the layout of the corresponding UI. Használja a vezérlők: FieldElementControl elemet adja meg a FieldElementControl vezérlő.Use the Controls:FieldElementControl element to define the FieldElementControl control.

A kötés paraméterek az XAML-fájl a kötést a mezőket az UDI varázsló konfigurációs fájljában szereplő információkon a minta-szerkesztőt.The Binding parameters in the XAML file bind the fields on the sample page editor with the information in the UDI wizard configuration file. Például a következő kódot ties a alapértelmezett érték szövegmezőt, és a alapértelmezett a UDI varázsló konfigurációs fájlban (a példában szereplő Config.xml):For example, the following code ties the Default value text box with the Default element in the UDI wizard configuration file (Config.xml in the example):

<TextBox Text="{Binding FieldData.DefaultValue,  
 UpdateSourceTrigger=PropertyChanged,  
 Mode=TwoWay}"/>  

További információkért lásd: hogyan: Adatok elérhetővé tétele a kötési XAML-kódban.For more information, see How to: Make Data Available for Binding in XAML.

Használja a Views:CollectionTControl.ColumnCollectionView elem a lista összes elérhető helyről, a táblázatos nézetben szerkesztése XAML-kódban.Use the Views:CollectionTControl.ColumnCollectionView element in the XAML to edit the list of available locations in the grid view. Használja a CollectionTControl vezérlőt az rácsvonalak megjelenítése, majd kösse a rács nézetet, hogy a adatok nevű elem hely UDI konfigurációs fájlban.You use the CollectionTControl control to display the grid view and bind the grid view to the Data element with the name Location in the UDI configuration file.

Tekintse át a felhasználói felület segítségével módosítható lehetséges helyek listájaReview the User Interface Used to Modify the List of Possible Locations

A felhasználói felület lehetséges helyek listájának módosítása a következőkből áll:The UI for modifying the list of possible locations consists of:

Tekintse át a helyi menü és gombokat a menüszalag a helyek listájának módosításaReview Context-sensitive Menu and Ribbon Buttons for Modifying the List of Locations

A jobb gombbal a lista, amely tartalmazza a helyek, a helyi menü jelenik meg.When you right-click in the list box that contains the list of locations, a context-sensitive menu is displayed. A menüszalag rendelkezik a megfelelő gombok lehetővé teszi a végrehajtását ugyanazokhoz a feladatokhoz.The Ribbon has corresponding buttons that allow you to perform the same tasks. A nézetek: CollectionsTControl metódusok hívása alapján végrehajtott műveletet és tulajdonságait, amely az alábbiak szerint állíthatja a LocationPageEditor.xaml fájl vezérlő eleme határozza meg:The Views:CollectionsTControl control element in the LocationPageEditor.xaml file defines the methods called based on the action taken and properties that you set as follows:

  • SelectedItem.SelectedItem. Az adathoz kötött tulajdonság akkor aktiválódik, amikor a felhasználó kiválaszt egy elemet a listából.This data-bound property is activated when the user selects an item from the list. Ez a tulajdonság van kötve a CurrentLocation tulajdonság a nézet modell, amely a LocationPageEditorViewModel.cs fájlban található, és használja a CollectionTControl vezérlő felelt meg az elem szerkessze vagy távolítsa el a meglévő elem kijelölve.This property is tied to the CurrentLocation property in the view model, which is located in the LocationPageEditorViewModel.cs file and used by the CollectionTControl control to pass the item selected when you edit or remove an existing item.

  • AddItemAction.AddItemAction. Ez a művelet történik, amikor a felhasználó kattint a elem hozzáadása a menüszalagon a környezetfüggő vagy a megfelelő gombok lehetőséget.This action is performed when the user clicks the Add Item option from the context-sensitive menu or the corresponding buttons on the Ribbon. Nincs olyan adatkötés egy tulajdonságra, a nézet modell, amely visszaadja az AddLocationAction objektum.There is a data binding to a property in the view model that returns the AddLocationAction object. Ez az objektum a AddLocationCallback metódust, a LocationPageEditorViewModel.cs fájlban található, és megjeleníti a párbeszédpanelt a AddEditLocationView.xaml fájlban.This object is the AddLocationCallback method, located in the LocationPageEditorViewModel.cs file, and displays the dialog box in the AddEditLocationView.xaml file.

  • EditItemAction.EditItemAction. Ez a művelet történik, amikor a felhasználó kattint a elem szerkesztése lehetőséget a helyi menüből.This action is performed when the user clicks the Edit Item option from the context-sensitive menu. Nincs olyan adatkötés egy tulajdonságra, a nézet modell, amely visszaadja az EditLocationAction objektum.There is a data binding to a property in the view model that returns the EditLocationAction object. Ez az objektum a EditLocationCallback metódust, a LocationPageEditorViewModel.cs fájlban található, és megjeleníti a párbeszédpanelt a AddEditLocationView.xaml fájlban.This object is the EditLocationCallback method, located in the LocationPageEditorViewModel.cs file, and displays the dialog box in the AddEditLocationView.xaml file.

  • RemoveAction.RemoveAction. Ez a művelet történik, amikor a felhasználó kattint a elem eltávolítása lehetőséget a helyi menüből.This action is performed when the user clicks the Remove Item option from the context-sensitive menu. Nincs olyan adatkötés egy tulajdonságra, a nézet modell, amely visszaadja az RemoveAction objektum.There is a data binding to a property in the view model that returns the RemoveAction object. Ez az objektum a EditLocationCallback metódust, a LocationPageEditorViewModel.cs fájlban található, és megjelenít egy üzenetet, amely megerősíti, hogy a hely a törlése.This object is the EditLocationCallback method, located in the LocationPageEditorViewModel.cs file, and shows a message that confirms the deletion of the location.

A párbeszédpanel hozzáadása vagy szerkesztése helyek áttekintéseReview the Dialog Box for Adding or Editing Locations

Ha egy új helyet adhat hozzá a helyek listájához, vagy szerkesztheti a meglévő hely, egy üzenet jelenik meg, amely a AddEditLocationView.xaml fájlban.If you add a new location to the list of locations or edit an existing location, a message is displayed that is in the AddEditLocationView.xaml file. Az üzenet jelenjen-e a ShowDialogWindow ablak módszer a LocationPageEditorViewModel.cs fájlban.The message is displayed using the ShowDialogWindow window method in the LocationPageEditorViewModel.cs file.

A felhasználói felület a AddEditLocationView.xaml fájlban tevődik össze:The UI in the AddEditLocationView.xaml file consists of:

  • A párbeszédpanel keret nevű DialogFrame, amely az alábbi elemeket tartalmazza:A dialog frame named DialogFrame, which includes the following elements:

    • A cím, amely segítségével konfigurálja a DialogTitle attribútuma a párbeszédpanelen keretA title, which you configure using the DialogTitle attribute of the dialog frame

    • Egy OK gomb, amely megegyezik a visszaadott állapotát állítja a jóváhagyott tulajdonságot igaz (rendszer ellenőrzi a visszatérési állapotát a AddLocationCallback módszer annak meghatározásához, hogy a felhasználó kattintott a LocationPageEditorViewModel.cs fájlban OK.)An OK button, which sets the return status as for the Approved property to True (The return status is checked in the AddLocationCallback method in the LocationPageEditorViewModel.cs file to determine whether the user clicked OK.)

    • A Mégse gomb, amely megegyezik a visszaadott állapotát a jóváhagyott tulajdonságot hamis (a rendszer ellenőrzi a visszaadott állapotát a AddLocationCallback módszer annak meghatározásához, hogy a felhasználó kattintott a LocationPageEditorViewModel.cs fájlban Mégse.)A Cancel button, which sets the return status as for the Approved property to False (The return status is checked in the AddLocationCallback method in the LocationPageEditorViewModel.cs file to determine whether the user clicked Cancel.)

  • A WPF elem, amely tartalmazza:A WPF element that contains:

    • Egy címke, amely segítségével konfigurálja a tartalom attribútumA label, which you configure using the Content attribute

    • A szövegmezőben, amely kötve van a adatok nevű elem hely az UDI konfigurációs fájlban (a példában Config.xml fájl)A text box, which is bound to the Data element with the name Location in the UDI configuration file (the Config.xml file in the example)

Tekintse át a konfigurációs adatok kezelésére szolgáló kódotReview the Code Used to Manage Configuration Information

Az egyéni varázslólap konfigurációs információit tárolja az UDI varázsló konfigurációs fájlban, amely a:The configuration information for your custom wizard page is stored in the UDI Wizard configuration file, which is the:

  • (Ez a fájl csak a például konfigurációs beállításait tartalmazza.) az UDI SDK-val megadott példában Config.xml fájlConfig.xml file in the example provided with the UDI SDK (This file contains only the configuration settings for the example.)

  • Az MDT használatával tárolt megadott UDIWizard_Config.xml fájl a installation_folder\Templates\Distribution\Scripts mappában (ahol installation_folder van a mappába, amelyben az MDT); Ez a fájl tartalmazza a beépített varázslólapok és szakaszból konfigurációs beállításaiUDIWizard_Config.xml file provided with MDT, stored in the installation_folder\Templates\Distribution\Scripts folder (where installation_folder is the folder in which you installed MDT); this file contains the configuration settings for all the built-in wizard pages and stages

    A SampleEditor példában a helyek rutin segítségével kezelheti a konfigurációs adatokat, és a LocationPageEditorViewModel.cs fájlban található.In the SampleEditor example, the Locations routine helps manage the configuration information and is located in the LocationPageEditorViewModel.cs file. A helyek rutin a helyek listáját adja vissza az UDI varázsló konfigurációs fájlból.The Locations routine returns a list of the locations from the UDI Wizard configuration file. Pontosabban, a visszaadott lista tartalmaz minden elemet DataItem a UDI varázsló konfigurációs fájlban.Specifically, the list returned contains an item for each DataItem element in the UDI Wizard configuration file.

Egyéni UDI varázslólapok létrehozásaCreating Custom UDI Wizard Pages

Az egyéni UDI varázslólapok létrehozásának folyamatát a következőképpen történik:The high-level process for creating custom UDI wizard pages is as follows:

  1. Másolatot készít a SamplePage megoldás kiindulási pontként.Make a copy of the SamplePage solution as a starting point.

  2. Helyezze el a kívánt (mezők) az űrlap vezérlőit.Place the desired controls (fields) on the form.

  3. A megfelelő feladatok elvégzéséhez, a varázsló oldal betöltésekor kód írása (felülbírálásai a OnWindowCreated metódus), többek között a következőket:Write code to perform the appropriate tasks when the wizard page loads (overrides for the OnWindowCreated method), including the following steps:

    1. Az űrlap inicializálása.Initialize the form.

    2. Változók, a feladatütemezési változókról, a környezeti változók vagy a XML Fájlinformációk olvasható memória (például beállító tulajdonságai).Read memory variables, task sequence variables, environment variables, or XML file information (such as Setter properties).

  4. A megfelelő feladatokat végrehajtani, ha a lapon látható kód írása (felülbírálásai a OnWindowShown metódus), többek között a következőket:Write any code to perform the appropriate tasks when the page is shown (overrides for the OnWindowShown method), including the following steps:

    1. Engedélyezi vagy letiltja a vezérlők el, ha a lap betöltése a 3. lépésben adatok alapján.Enable or disable controls based on information read when the page loaded in step 3.

    2. A vezérlők olyan információk alapján, olvassa el, ha majd lap betöltése a 3, például a vezérlők sokaságát frissítés olvasható információk alapján.Update the controls based on information read when then page loaded in step 3, such as the population of controls based on the information read.

  5. A megfelelő feladatok elvégzéséhez, amíg a felhasználó kommunikál a varázslólap kód írása.Write any code to perform the appropriate tasks while the user interacts with the wizard page.

  6. Hajtsa végre a megfelelő feladatokat, amikor a felhasználó kattint a kód írása következő UDI varázslóban (a felülbírálások a OnNextClicked metódus), többek között a következőket:Write any code to perform the appropriate tasks when the user clicks Next in the UDI Wizard (overrides for the OnNextClicked method), including the following steps:

    1. Bármely memória változók, a feladatütemezési változókról, a környezeti változók vagy a XML-fájl adatainak frissítése.Update any memory variables, task sequence variables, environment variables, or XML file information.

    2. Összefoglaló lap adatainak frissítése (Ha nem végzi el a mezők a lapon).Update summary page information (if not performed by the fields on the page).

  7. A megoldás felépítéséhez.Build the solution.

    Győződjön meg arról, hogy a dll-fájlt hoz létre verziója azonos processzor platformot mdt telepítése – pontosabban, a processzor platform for Windows előtelepítési környezet (Windows PE).Ensure that the version of the DLL you create is the same processor platform as the installation of MDT—specifically, the processor platform for Windows Preinstallation Environment (Windows PE). Az UDI varázsló futtatható:The UDI Wizard can run in:

    • A meglévő operációs rendszert a célszámítógépen.The existing operating system on the target computer. A varázslólap 32 bites verziói 32 bites vagy 64 bites Windows operációs rendszereken futtatható.You can run 32-bit versions of your wizard page on 32-bit or 64-bit Windows operating systems. Azonban csak futtathatja a varázslólap 64 bites változatának 64 bites Windows operációs rendszereken.However, you can only run 64-bit versions of your wizard page on 64-bit Windows operating systems.

    • A cél számítógépen a Windows PE.Windows PE on the target computer. A Windows PE nem támogatja a 32 bites alkalmazások egy 64 bites verzióján futó Windows PE környezetben.Windows PE does not support running 32-bit applications on a 64-bit version of Windows PE. Igen szükség építettünk egy a varázslóoldal minden processzorarchitektúra használni kívánt Windows PE verziót.So, you need to have built a version for your wizard page for each processor architecture of Windows PE that you plan to use.

  8. Másolja az egyéni varázslólapon a DLL installation_folder\Templates\Distribution\Tools\ platform mappában (ahol installation_folder van a mappába, amelyben az MDT és platform van x86 a 32 bites verziója vagy x64 a 64 bites verziója van).Copy the DLL for your custom wizard page to installation_folder\Templates\Distribution\Tools\ platform folder (where installation_folder is the folder in which you installed MDT and platform is x86 for the 32-bit version or x64 is for the 64-bit version).

  9. Végezze el az egyéni lap szerkesztő létrehozásához szükséges lépésekről.Complete the steps for creating custom page editor.

Egyéni varázsló lap szerkesztők létrehozásaCreating Custom Wizard Page Editors

Az egyéni UDI varázsló lap szerkesztők létrehozásának folyamatát a következőképpen történik:The high-level process for creating custom UDI wizard page editors is as follows:

  1. Másolatot készít a SampleEditor megoldás kiindulási pontként.Make a copy of the SampleEditor solution as a starting point.

  2. Hozzon létre az elsődleges oldal szerkesztő felhasználói felület egy .xaml fájlban.Create the primary page editor UI in an .xaml file.

  3. Adja hozzá a példányai a FieldElementControl (ha szükséges) konfigurálását a varázsló oldalán által megkövetelt szabályozzák.Add instances of the FieldElementControl control as required by the wizard page to be configured (if required).

  4. Adja hozzá a példányai a SetterControl (ha szükséges) konfigurálását a varázsló oldalán által megkövetelt szabályozzák.Add instances of the SetterControl control as required by the wizard page to be configured (if required).

  5. Adja hozzá a példányai a CollectionTControl (ha szükséges) konfigurálását a varázsló oldalán által megkövetelt szabályozzák.Add instances of the CollectionTControl control as required by the wizard page to be configured (if required).

  6. Adja hozzá a IDataService felületet.Add the IDataService interface.

  7. Frissítse a UDI varázsló konfigurációs fájlt az egyéni varázsló szerkesztő használatával kell konfigurálni a konfigurációs beállítások alapján a megfelelő kód írásaWrite the appropriate code to update the UDI Wizard configuration file based on the configuration settings to be configured using your custom wizard page editor.

  8. Párbeszédpanelek gyermek létrehozása egy .xaml fájlban, és hívja meg azokat az elsődleges oldalról szerkesztő használatával a IMessageBoxService konfigurálását a varázsló oldalán által megkövetelt illesztő.Create child dialog boxes in a .xaml file, and call them from the primary page editor using the IMessageBoxService interface as required by the wizard page to be configured.

  9. Adja hozzá a megfelelő felületek az UDI varázsló Designer menüszalagra alapján úgy kell konfigurálni, a varázsló oldalán követelményeinek.Add the appropriate interfaces to the UDI Wizard Designer Ribbon based on the requirements of the wizard page to be configured.

  10. A megoldás felépítéséhez.Build the solution.

    Megjegyzés

    Győződjön meg arról, hogy a dll-fájlt hoz létre verziója, a telepítés mdt azonos processzor platformot.Ensure that the version of the DLL you create is the same processor platform as the installation of MDT. Például ha telepíti az MDT 64 bites verzióját, majd létrehozza 64 bites verzióját a egyéni szerkesztő.For example, if you install the 64-bit version of MDT, then build a 64-bit version of your custom page editor.

  11. Hozzon létre a szükséges dll-fájl betöltése, és képezze le a varázslólap UDI varázsló Designer konfigurációs fájlt szerkesztőt a megfelelő varázslólap (a példában SamplePage.dll.config fájlt).Create a UDI Wizard Designer configuration file to load the necessary DLLs and map the wizard page editor with the corresponding wizard page (the SamplePage.dll.config file in the example).

    Az oldalon és a varázsló szerkesztő közötti leképezést elvégzéséhez szükséges elemeket kapcsolatos további információkért lásd: a DesignerMappings elem, a gyermekelemek és a megfelelő attribútumok.For more information about the elements required to perform the mapping between the wizard page and the wizard page editor, see the DesignerMappings element, child elements, and corresponding attributes.

  12. Másolja át az előző lépésben létrehozott UDI varázsló Tervező-konfigurációs fájlt a installation_folder\Bin\Config mappában (ahol installation_folder a mappa, ahol telepítve van Az MDT-verzió).Copy the UDI Wizard Designer configuration file that you created in the previous step to the installation_folder\Bin\Config folder (where installation_folder is the folder in which you installed MDT version).

  13. A dll-fájlt az egyéni varázsló szerkesztő való másolása a installation_folder\Bin mappát (ahol installation_folder a mappába, amelyben az MDT van).Copy the DLL for your custom wizard page editor to the installation_folder\Bin folder (where installation_folder is the folder in which you installed MDT).

Egyéni UDI feladatok létrehozásaCreating Custom UDI Tasks

UDI feladatok dll C++ írt, amelyek megvalósítják a ITask felület.UDI tasks are DLLs written in C++ that implement the ITask interface. A DLL-t regisztrált UDI varázsló Designer konfigurációs fájl (.config kiterjesztésű fájl) létrehozása, és azt az UDI varázsló Designer feladatok könyvtára a installation_folder\Bin\Config mappában (ahol installation_ mappa a mappába, amelyben az MDT van).You register the DLL with the UDI Wizard Designer task library by creating a UDI Wizard Designer configuration file (.config file) and placing it in the installation_folder\Bin\Config folder (where installation_folder is the folder in which you installed MDT).

Megjegyzés

A varázsló lapjain, feladatok és érvényesség-ellenőrzők belül ugyanazt a .dll fájlt tartalmazó dll-hozhat létre.You can create a DLL that contains wizard pages, tasks, and validators within the same .dll file. Egyetlen UDI varázsló Designer konfigurációs fájl (.config), amely tartalmazza a konfigurációs beállításait a varázsló lapjain, a feladatok és az érvényesség-ellenőrzők a dll-fájl is létrehozhat.You can also create a single UDI Wizard Designer configuration file (.config) that contains the configuration settings for the wizard pages, tasks, and validators in the DLL.

Egyéni UDI feladatok létrehozásaTo create custom UDI tasks

  1. Írási kódot, amely megvalósítja a ITask felület és a következőkkel:Write code that implements the ITask Interface and the following methods:

    • Init.Init. A feladat inicializálása ezt a módszert nevezik.This method is called to initialize your task.

    • Végrehajtás.Execute. Ezt a módszert nevezik futtatni a feladatot.This method is called to run your task.

  2. Kód írása, amely az egyéni tevékenység osztálykészítő behívása a gyári beállításjegyzék regisztrálja.Write code that registers the custom task class factory with the factory registry.

  3. Az egyéni tevékenység a megoldás felépítéséhez.Build the solution for your custom task.

    Megjegyzés

    Győződjön meg arról, hogy a dll-fájlt hoz létre verziója, a telepítés mdt azonos processzor platformot.Ensure that the version of the DLL you create is the same processor platform as the installation of MDT. Például ha telepíti az MDT 64 bites verzióját, majd létrehozza 64 bites verzióját a egyéni UDI feladat.For example, if you install the 64-bit version of MDT, then build a 64-bit version of your custom UDI task.

  4. Hozzon létre egy feladat elem alatt a TaskLibrary elem az UDI varázsló Designer konfigurációs fájlban a következő cikkből hasonlít:Create a Task element under the TaskLibrary element in the UDI Wizard Designer configuration file similar to the following excerpt:

    <Task DLL="OSDRefreshWizard.dll" Description="Discovers supported applications for install." Type="Microsoft.OSDRefresh.AppDiscoveryTask" Name="Application Discovery">  
       <TaskItem Type="Setter" Name="Status Bitmap">  
          <Param Name="BitmapFilename"/>  
       </TaskItem>  
       <TaskItem Type="Setter" Name="Log File">  
          <Param Name="log"/>  
       </TaskItem>  
       <TaskItem Type="Setter" Name="Write Configuration File">  
          <Param Name="writecfg"/>  
       </TaskItem>  
       <TaskItem Type="Setter" Name="Read Configuration File">  
          <Param Name="readcfg"/>  
       </TaskItem>  
    </Task>  
    

    Megjegyzés

    Minden feladat elemet kell tartalmaznia a BitmapFilename paraméter.All Task elements should include the BitmapFilename parameter. A feladat van szüksége, adjon meg más paramétereket.Specify all other parameters as the task requires. Például az előző cikkből a napló paraméterrel adja meg a paramétert a naplófájl helyét.For example, in the previous excerpt, the log parameter is used to specify a parameter for the location of a log file.

  5. Másolja át az előző lépésben létrehozott UDI varázsló Designer konfigurációs fájl a installation_folder\Bin\Config mappában (ahol installation_folder a mappába, amelyben az MDT van).Copy the UDI Wizard Designer configuration file created in the previous step to the installation_folder\Bin\Config folder (where installation_folder is the folder in which you installed MDT).

  6. Másolja a dll-fájlt az egyéni tevékenység a installation_folder\Templates\Distribution\Tools\ platform mappában (ahol installation_folder az a mappa az MDT és a telepítveplatform van x86 a 32 bites verziója vagy x64 a 64 bites verziója van).Copy the DLL for your custom task to the installation_folder\Templates\Distribution\Tools\ platform folder (where installation_folder is the folder in which you installed MDT and platform is x86 for the 32-bit version or x64 is for the 64-bit version).

Egyéni UDI érvényesség-ellenőrzők létrehozásaCreating Custom UDI Validators

UDI érvényesség-ellenőrzők dll C++ írt, amelyek megvalósítják a IValidator felületet.UDI validators are DLLs written in C++ that implement the IValidator interface. A dll-Fájljának regisztrált UDI varázsló Designer konfigurációs fájl (.config kiterjesztésű fájl) létrehozása, és azt az UDI varázsló Designer érvényesítő könyvtár a installation_folder\Bin\Config mappában (ahol installation_folder a mappába, amelyben az MDT van).You register the DLL with the UDI Wizard Designer validator library by creating a UDI Wizard Designer configuration file (.config file) and placing it in the installation_folder\Bin\Config folder (where installation_folder is the folder in which you installed MDT).

Egyéni UDI érvényesítők létrehozásaTo create custom UDI validators

  1. A alosztálya létrehozó kód írása a BaseValidator osztály és valósítja meg az alábbi módszerek:Write code that creates a subclass of the BaseValidator class and implements the following methods:

    • Init(IControl *pControl, IWizardPageContainer *pContainer, IStringProperties *pProperties).Init(IControl *pControl, IWizardPageContainer *pContainer, IStringProperties *pProperties). Az űrlap vezérlő hívások a Init tag az érvényesítő inicializálása.The form controller calls the Init member to initialize the validator. Ez a módszer meg kell hívnia a Init módszer a BaseValidator osztály.This method must call the Init method for the BaseValidator class. Általában minden tulajdonsága nincs beállítva az érvényesítőhöz az UDI varázsló konfigurációs fájlból olvassa be.It typically reads any properties set for the validator from the UDI Wizard configuration file. Például a InvalidCharactersValidator érvényesítő értékét kérdezi le a InvalidChars tulajdonság ezzel a módszerrel.For example, the InvalidCharactersValidator validator retrieves the value of the InvalidChars property using this method.

    • IsValid.IsValid. Az űrlap vezérlő meghívja ezt a módszert, hogy a vezérlő tartalmaz-e érvényes szöveget.The form controller calls this method to see whether the control contains valid text. Az alábbiakban egy példát a IsValid egy érvényesítő, amely ellenőrzi, hogy a mező nem üres módszert:The following is an example of the IsValid method for a validator that validates that the field is not empty:

      BOOL IsValid(LPBSTR pMessage)  
      {  
          __super::IsValid(pMessage);  
      
          _bstr_t text;  
          m_pText->GetText(text.GetAddress());  
          return (text.length() > 0);  
      }  
      
    • Init (IControl *pControl, LPCTSTR üzenet).Init(IControl *pControl, LPCTSTR message). Az űrlap vezérlő ehhez a taghoz billentyűleütés és egyéb események meghívja az, hogy az érvényesítő a vezérlő és a frissített üzeneteket a varázsló lap alján a tartalmát érvényesíteni (vagy törölje őket).The form controller calls this member for each keystroke and other events so that the validator can validate the contents of the control and updated messages at the bottom of the wizard page (or clear them).

      Ezek általában a csak módszereket, felül kell bírálni.Typically, these are the only methods that you need to override. Azonban attól függően, hogy az érvényesítő esetleg bírálja felül a alosztálya a többi módszer a BaseValidator osztály hoz létre.However, depending on the validator, you may need to override other methods in the subclass of the BaseValidator class you create. Ezek más módszerekkel kapcsolatos további információkért lásd: a BaseValidator osztály.For more information about these other methods, see the BaseValidator class.

  2. Kód írása, amely az egyéni tevékenység osztály regisztrálja a beállításjegyzék-gyár.Write code that registers the custom task class with the registry factory.

  3. Az egyéni tevékenység a megoldás felépítéséhez.Build the solution for your custom task.

    Megjegyzés

    Győződjön meg arról, hogy a dll-fájlt hoz létre verziója, a telepítés mdt azonos processzor platformot.Ensure that the version of the DLL you create is the same processor platform as the installation of MDT. Például ha telepíti az MDT 64 bites verzióját, majd létrehozza 64 bites verzióját a egyéni UDI feladat.For example, if you install the 64-bit version of MDT, then build a 64-bit version of your custom UDI task.

  4. Hozzon létre egy érvényesítő elem alatt a ValidatorLibrary elem az UDI varázsló Designer konfigurációs fájlban a következő cikkből hasonlít:Create a Validator element under the ValidatorLibrary element in the UDI Wizard Designer configuration file similar to the following excerpt:

    <Validator   
    <Validator DLL="" Description="Must follow a pre-defined pattern" Type="Microsoft.Wizard.Validation.RegEx" Name="NamedPattern">  
       <Param Description="Enter the message you want displayed when the text in this field doesn't match the pattern:" Name="Message" DisplayName="Message"/>  
       <Param Description="The name of a pre-defined regular expression pattern. Must be Username, ComputerName, or Workgroup" Name="NamedPattern" DisplayName="Named Pattern"/>  
    </Validator>  
    

    Figyelmeztetés

    Minden érvényesítő elemet kell tartalmaznia a üzenet paraméter.All Validator elements should include the Message parameter. Adjon meg más paramétereket az érvényesítő által megkövetelt.Specify all other parameters as required by the validator. Például az előző cikkből a NamedPattern paraméter használatával adja meg a paraméter egy előre meghatározott reguláris kifejezési minta nevét.For example, in the previous excerpt, the NamedPattern parameter is used to specify a parameter for the name of a predefined regular expression pattern.

  5. Másolja át az előző lépésben létrehozott UDI varázsló Designer konfigurációs fájl a installation_folder\Bin\Config mappában (ahol installation_folder a mappába, amelyben az MDT van).Copy the UDI Wizard Designer configuration file created in the previous step to the installation_folder\Bin\Config folder (where installation_folder is the folder in which you installed MDT).

  6. Másolja a dll-fájlt az egyéni tevékenység a installation_folder\Templates\Distribution\Tools\ platform mappában (ahol installation_folder az a mappa az MDT és a telepítveplatform van x86 a 32 bites verziója vagy x64 a 64 bites verziója van).Copy the DLL for your custom task to the installation_folder\Templates\Distribution\Tools\ platform folder (where installation_folder is the folder in which you installed MDT and platform is x86 for the 32-bit version or x64 is for the 64-bit version).

UDI-hivatkozás varázslóUDI Wizard Reference

Lap-összetevők varázslóWizard Page Components

Segítségével számos előre elkészített összetevőket az egyéni lapok létrehozása.You can use any of several prebuilt components to build your custom pages.

Az összetevő-példányok létrehozásaCreating Component Instances

A UDI varázsló osztály előállítók használja új példányok objektumok létrehozásához.The UDI Wizard uses class factories to create new instances of objects for you. Ezek előállítók gyári beállításjegyzékbeli, karakterlánc használja, mint a kulcsot, a gyári vannak regisztrálva.These factories are registered with a factory registry, using a string as the key to the factory. Például a WmiRepository összetevő a következő karakterláncot: "Microsoft.Wizard.WmiRepository," érhető el a IWmiRepository fejlécfájl, amelyek azonosíthatók ID_WmiRepository.For example, the WmiRepository component is identified by the string "Microsoft.Wizard.WmiRepository," which is available in the IWmiRepository header file as ID_WmiRepository.

Feltételezve, hogy a lap egy alosztályként írt WizardPageImpl, létrehozhat egy új példányát egy WmiRepoistory módja:Assuming that you have written your page as a subclass of WizardPageImpl, you can create a new instance of a WmiRepoistory like this:

PWmiRepository pWmi;  
CreateInstance(Container(), ID_WmiRepository, &pWmi);  

A CreateInstance típus szálbiztos sablon függvény létrehozásához összetevők új példányát.The CreateInstance function is a type-safe template function for creating new instances of components. PWmiRepository intelligens mutató,:, referencia, számbavételi kezeli.PWmiRepository is a smart pointer, so it handles reference counting for you.

Létrehozhatónak összetevőkCreatable Components

Nincs összetevők, amelyek a beállításjegyzék regisztrálhatja.There is a set of components that you can register with the registry. Összetevők első készlete mindig regisztrálása, mert a fő UDI varázsló végrehajtható fájl biztosítja.The first set of components is always registered, because the main UDI Wizard executable file provides it. A többi két különböző összetevők "választható" DLL-fájljai szerepelnek.The other two sets of components are provided in “optional” DLLs. Ezen összetevők, hogy elérhető legyen, a dll-Fájljának szerepelnie kell a DLL-ek .config kiterjesztésű XML-fájl a szakaszban.For these components to be available, the DLL must be listed in the DLLs section of the .config XML file. A kód nem kell tudni, hogy mely végrehajtható fájl tartalmaz egy adott összetevőre.Your code does not need to know which executable contains a specific component.

Az összetevő azonosítók összetevők listáját (az összetevő neve megegyezik az ID, de a kezdeti nélkül ID_) regisztrálva a Factory (OSDSetupWizard meghatározott) beállításjegyzékbeli megjelenik-e a 3. táblázat.The list of component IDs for components (the component name is the same as the ID but without the initial ID_) registered with the factory registry (defined in OSDSetupWizard) is shown in Table 3.

3. táblázat.Table 3. Összetevő-azonosítókComponent IDs

IDID LeírásDescription
ID_ACPowerTaskID_ACPowerTask (ITask, IWizardComponent) Ellenőrzési feladat, amely biztosítja, hogy a számítógép nem akkumulátorról önmagában(ITask, IWizardComponent) A preflight task that ensures that your computer is not running on battery alone
ID_AppDiscoveryTaskID_AppDiscoveryTask (ITask, IWizardComponent) A számítógépen telepített szoftverek cikkek felderítéséhez speciális feladat(ITask, IWizardComponent) A specialized task for discovering which software items you have installed on your computer
ID_BackgroundTaskID_BackgroundTask (IBackgroundTask, IWizardComponent) segítségével egy másik szálon feladat futtatása(IBackgroundTask, IWizardComponent) Can be used to run a task on another thread
ID_CopyFilesTaskID_CopyFilesTask (ITask, IWizardComponent) egy feladat egy vagy több fájl másolása(ITask, IWizardComponent) A task to copy one or more files
ID_FormControllerID_FormController (IFormController) lehetővé teszi, hogy a legtöbb például nem kell saját kezűleg, példány létrehozásához a lap saját példányt kap(IFormController) You will most like not need to create an instance yourself, as your page receives its own instance
ID_InvalidCharactersValidatorID_InvalidCharactersValidator (IValidator) biztosítja, hogy nincs szövegmező tartalmazza-e a rendelkezésre bocsátott az érvényesítőhöz karaktert tartalmaz(IValidator) Ensures that no text field contains characters from a list provided to the validator
ID_LoggerID_Logger (ILogger) lehetővé teszi, hogy a legtöbb például nem kell saját kezűleg, példány létrehozásához a lapon megkapja a megosztott példány mutató hivatkozások(ILogger) You will most like not need to create an instance yourself, as your page receives a pointer to the shared instance
ID_NonEmptyValidatorID_NonEmptyValidator (IValidator) egy érvényesítő, amely biztosítja, hogy a mező nem üres(IValidator) A validator that ensures that no field is empty
ID_PasswordValidatorID_PasswordValidator (IValidator) egy érvényesítő, amely biztosítja, hogy nincs két szövegmező ugyanahhoz a tartalomhoz(IValidator) A validator that ensures that no two text fields have the same content
ID_RegexID_Regex (IRegEx) keres megfelel reguláris kifejezések kiértékelése(IRegEx) Evaluates regular expressions, looking for matches
ID_RegExValidatorID_RegExValidator (IValidator) egy érvényesítő, amely egy reguláris kifejezést vagy egy ismert ellen(IValidator) A validator that validates against a regular expression or a known pattern
ID_SimpleStringPropertiesID_SimpleStringProperties (IStringProperties, ISimpleStringProperties) tulajdonságok küldendő feladatok XML használata nélkül egyszerű módszert kínál a(IStringProperties, ISimpleStringProperties) Provides a simple way to send properties to tasks without using XML
ID_ShellExecuteTaskID_ShellExecuteTask (ITask, IWizardComponent) egy külső program hajtható végre(ITask, IWizardComponent) Execute an external program
ID_SummaryBagID_SummaryBag (ISummaryBag) elérhető közvetve a képernyőn a módszerrel a lapról(ISummaryBag) Available indirectly from your page via the Form method
ID_TaskManagerID_TaskManager (ITaskManager, IBackgroundCallback, IWizardComponent) futó feladatok és a felhasználói felület kezeli(ITaskManager, IBackgroundCallback, IWizardComponent) Manages running a set of tasks and the UI
ID_WmiRepositoryID_WmiRepository (IWmiRepository, IWizardComponent) lehetővé teszi a Windows Management Instrumentation (WMI) lekérdezések futtatása(IWmiRepository, IWizardComponent) Allows you to run Windows Management Instrumentation (WMI) queries
ID_IXmlDocumentID_IXmlDocument (IXmlDocument) biztosít egy homlokzati olvasására vagy írására XML-dokumentumok(IXmlDocument) Provides a façade for reading and writing XML documents

A meghatározott OSDRefreshWizard.dll, megosztott lapok és egyéb összetevők jelennek meg a 4. táblázat és az 5. táblázatot.The defined OSDRefreshWizard.dll, shared pages, and other control components are shown in Table 4 and Table 5.

4. táblázat.Table 4. Directory vezérlőkDirectory Controls

IDID LeírásDescription
ID_DirectoryID_Directory (IDirectory) egy homlokzati a megszerezni a címtár-információkat a fájlrendszerből(IDirectory) A façade for obtaining directory information from the file system

5. táblázatot.Table 5. Meghatározott SharedPages.dllDefined SharedPages.dll

IDID LeírásDescription
ID_ADHelperID_ADHelper (IADHelper) egy homlokzati biztosít egy korlátozott körét szolgáltatások az Active Directory® tartományi szolgáltatásokban (AD DS)(IADHelper) Provides a façade for a limited set of features in Active Directory® Domain Services (AD DS)
ID_CpuInfoID_CpuInfo (ICpuInfo) határozza meg, hogy a Processzor 32 vagy 64 bites(ICpuInfo) Determines whether your CPU is 32 or 64 bit
ID_DomainJoinValidatorID_DomainJoinValidator (IDomainJoinValidator) rendelkezik néhány ellenőrzése, hogy tartományhoz való csatlakozáshoz engedélyezett-e a hitelesítő adatokat a következő módszerek(IDomainJoinValidator) Has some methods for checking whether a set of credentials is allowed to join a domain
ID_DriveListID_DriveList (IDriveList, IBindableList, IWizardComponent) WMI használja a számítógépen listájának beszerzése(IDriveList, IBindableList, IWizardComponent) Uses WMI to obtain a list of drives on your computer
ID_WiredNetworkTaskID_WiredNetworkTask (ITask) egy feladatot, amely ellenőrzi, hogy csatlakozik a hálózathoz egy mintára képes (helyett a vezeték nélküli) hálózati adapter(ITask) A tasks that checks whether you are connected to the network with a hard-wired (instead of wireless) network adapter

ÖsszetevőkControl Components

Működik együtt a lap vezérlői a GetControlWrapper sablon függvénynek, amely hozzáférést biztosít az összetevők típusú szerepel a 6. táblázat.You interact with the controls on your page through the GetControlWrapper template function, which provides access to one of the types of components listed in Table 6.

6. táblázat.Table 6. ÖsszetevőkComponents

Vezérlő típusaiDialog control types LeírásDescription
CONTROL_CHECK_BOXCONTROL_CHECK_BOX (ICheckBox) egy homlokzati a jelölőnégyzet vezérlők használatához(ICheckBox) A façade for working with check box controls
CONTROL_COMBO_BOXCONTROL_COMBO_BOX (IComboBox) egy homlokzati kombinált mezőben vezérlők(IComboBox) A façade for combo box controls
CONTROL_GENERICCONTROL_GENERIC (IControl) lehetővé teszi a legtöbb típusú vezérlők engedélyezése és a láthatósági állapota(IControl) Allows you to work with most types of controls to control enable and visible state
CONTROL_LIST_VIEWCONTROL_LIST_VIEW (IListView) egy homlokzati hozzáférést funkcióinak működését a listanézet-vezérlő(IListView) A façade providing access to the features of a list view control
CONTROL_PROGRESS_BARCONTROL_PROGRESS_BAR (IProgressBar) egy folyamatjelző sáv vezérlő pozíciója való munkához egy homlokzati(IProgressBar) A façade for working with the position of a progress bar control
CONTROL_RADIO_BUTTONCONTROL_RADIO_BUTTON (IRadioButton) egy homlokzati a működik rádió gomb vezérlőkkel(IRadioButton) A façade for working with radio button controls
CONTROL_STATIC_TEXTCONTROL_STATIC_TEXT (IStaticText), amely olvasási/írási engedéllyel a vezérlő, például egy címke vagy a beviteli mezőben az a szöveg egy homlokzati(IStaticText) A façade that provides read/write permission to the text of a control, such as a label or text box
CONTROL_TREE_VIEWCONTROL_TREE_VIEW (ItreeView) egy faszerkezetének vezérlője való munkához egy homlokzati(ItreeView) A façade for working with a tree view control

Kép lista összetevőImage List Component

Ez az összetevő egy homlokzati a egy ImageList vezérlőelemet.This component is a façade for an ImageList control on your page. Létrehozhat egy képlistában keresztül a IListView vagy ITreeView felületet.You create an image list via the IListView or ITreeView interface.

FormController összetevőFormController Component

A varázsló létrehozza ezt az összetevőt, és továbbítja azokat a lapot.The wizard creates this component for you and passes it to your page. A lap használatával férni a űrlap metódus, amely a WizardPageImpl osztály megvalósít kiinduló.You access it from your page using the Form method, which the WizardPageImpl base class implements.

InvalidCharacterValidator összetevőInvalidCharacterValidator Component

Ez az olyan típusú, amely egy oldalon is megadható.This is a type of validator that you can include on a page. Az azonosító ID_InvalidCharactersValidator (IValidator.h megadva), amely tartalmaz egy szöveges értéket a "Microsoft.Wizard.Validation.InvalidChars."The ID is ID_InvalidCharactersValidator (defined in IValidator.h), which has a text value of "Microsoft.Wizard.Validation.InvalidChars."

Az érvényesítő keresi ugyanazon a tulajdonságon (egy beállítására szolgáló a .config kiterjesztésű fájlban) nevű InvalidChars, ez nem engedélyezett karaktereket listáját.This validator looks for a single property (a Setter element in the .config file) called InvalidChars, which is a list of characters that are not allowed. Azt ellenőrzi, hogy a karakterek szövegdobozban; Ha a szöveg tartalmazza-e a karaktereket a listáról, az az összetevő jelent hibát.It checks the characters in a text box; if the text contains any characters from this list, the component reports failure.

NonEmptyValidator összetevőNonEmptyValidator Component

Ez az olyan típusú, amely egy oldalon is megadható.This is a type of validator that you can include on a page. Az azonosító ID_NonEmptyValidator (IValidator.h megadva), amely tartalmaz egy szöveges értéket a "Microsoft.Wizard.Validation.NonEmpty."The ID is ID_NonEmptyValidator (defined in IValidator.h), which has a text value of "Microsoft.Wizard.Validation.NonEmpty."

Az érvényesítő hibát jelent, ha a szövegmezőben (vagy bármely más, amely támogatja a vezérlő IStaticText) értéke üres karakterlánc.This validator reports failure if the text box (or any other control that supports IStaticText) has an empty string value.

PasswordValidator összetevőPasswordValidator Component

Ez az olyan típusú, amely egy oldalon is megadható.This is a type of validator that you can include on a page. Az azonosító ID_PasswordValidator (IValidator.h megadva), amely tartalmaz egy szöveges értéket a "Microsoft.Wizard.Validation.Password."The ID is ID_PasswordValidator (defined in IValidator.h), which has a text value of "Microsoft.Wizard.Validation.Password."

Az érvényesítő két különböző szöveges vezérlők együttműködve (támogató szabályozza IStaticText) és a jelentések hiba, ha azok nem tartalmaznak a megegyező értékeket.This validator works with two different text controls (controls that support IStaticText) and reports failure if they do not contain the same values. Ez azt jelenti, hogy sikertelen lesz, ha a jelszó és jelszó megerősítése szövegmezőkben nem egyeznek.In other words, it fails if the Password and Confirm Password text boxes do not match.

Az érvényesítő két vezérlők használatához, mint más érvényesség-ellenőrzők beállítása további szükséges.Because this validator requires two controls, it needs more setup than other validators. A telepítő előfordulhat, hogy kinéznie:The setup might look something like this:

Form()->AddToGroup(IDC_EDIT_PASSWORD, IDC_EDIT_PASSWORD2);  
PValidator pValidator;  
Form()->AddValidator(IDC_EDIT_PASSWORD, ID_PasswordValidator, pMessage, &pValidator);  
PStaticText pPassword2;  
GetControlWrapper(View(), IDC_EDIT_PASSWORD2, CONTROL_STATIC_TEXT, &pPassword2);  
pValidator->SetProperty(0, pPassword2);  

Először is megadhatja a jelszó megerősítése gyermekeként"" vezérlő a jelszó vezérlő.First, you define the Confirm Password control as a “child” of the Password control. Ha letiltja a képernyő vezérlő így a jelszó vezérlő, azt is letiltja a jelszó megerősítése vezérlő.That way, if the form controller disables the Password control, it will also disable the Confirm Password control. Ezután adja hozzá a jelszó érvényesítő az űrlaphoz.Next, add a password validator to the form. Végül adja meg a jelszó-ellenőrző a felülettel, hogy a jelszó megerősítése vezérlő.Finally, provide the password validator with the interface to the Confirm Password control.

Két vezérlők követelmény miatt a .config kiterjesztésű XML-fájl helyett az érvényesítő beállítása kódot kell használnia.Because of the requirement for two controls, you must use code to set up this validator rather than the .config XML file.

RegExValidator összetevőRegExValidator Component

Ez az olyan típusú, amely egy oldalon is megadható.This is a type of validator that you can include on a page. Az azonosító ID_RegExValidator (IValidator.h megadva), amely tartalmaz egy szöveges értéket a "Microsoft.Wizard.Validation.RegEx."The ID is ID_RegExValidator (defined in IValidator.h), which has a text value of "Microsoft.Wizard.Validation.RegEx."

Az érvényesítő összehasonlítja a vezérlőelem tartalmát (támogató IStaticText) reguláris kifejezést és nem sikerül, ha a szöveg nem felel meg a reguláris kifejezésnek.This validator compares the contents of a text control (one that supports IStaticText) to a regular expression and fails if the text does not match the regular expression.

Másik lehetőségként az érvényesítő használható egy előre definiált, nevesített mintát.Alternatively, you can use this validator with a predefined named pattern. Reguláris kifejezés, az XML-fájl csak tartalmaz beállító tulajdonságot, mintát.To use a regular expression, the XML must contain a setter property called Pattern. Ha szeretne egy elnevezett mintát használja, használja a nevű setter NamedPattern 7. táblázat az értékek megadásához.If you want to use a named pattern instead, use a setter called NamedPattern set to one of the values in Table 7.

7. táblázat.Table 7. Elnevezett mintát Setter elemekNamed Pattern Setters

PatternPattern LeírásDescription
FelhasználónévUsername Ellenőrzi, hogy a szöveg vagy az űrlap tartomány\felhasználónév vagy user@domainVerifies that the text is either of the form domain\user or user@domain
SzámítógépnévComputerName A neve 1 – 15 karakter között kell lennie, és nem karakterek (például: és?)The name must be between 1 and 15 characters long and cannot include a set of characters (such as : and ?)
MunkacsoportWorkgroup A neve 1 – 15 karakter között kell lennie, és nem tartalmazhatja a következő karakterek (például =, +, és?)The name must be between 1 and 15 characters long and cannot contain a set of characters (such as =, +, and ?)

FactoryRegistry ComponentFactoryRegistry Component

Ez az összetevő nyomon követi, hogy az összes osztály előállítók és szolgáltatások.This component keeps track of all class factories and services. Végrehajtja a IFactoryRegistry felületet, és rendelkezésére áll a lap keresztül közvetve tároló metódust.It implements the IFactoryRegistry interface and is available indirectly through your page’s Container method. Emellett a rendszerleíró adatbázis bővítmény-dll-tölti be.In addition, the registry loads extension DLLs. Miután betölti a dll-fájl, a beállításjegyzék keresi az exportált függvény hívása RegisterFactories.After it loads a DLL, the registry looks for an exported function called RegisterFactories. Ez a függvény végrehajtása kell, és azt regisztrálja a osztály előállítók a lapok, feladatok, és érvényesség-ellenőrzők (és más osztály előállítókkal regisztrálni kívánt).You must implement this function and in it register the class factories for your pages, tasks, and validators (and any other class factories you want to register). Íme egy példa a minta projektből:Here is an example from the sample project:

extern "C" __declspec(dllexport) void RegisterFactories(IFactoryRegistry *factories)  
{  
Register<LocationPageFactory>(ID_LocationPage, factories);  
}  

Naplózó összetevőLogger Component

Ez az összetevő és a lap keresztül érhető el a naplózó metódus (által megvalósított WizardPageImpl).This component is available to your page via the Logger method (implemented by WizardPageImpl). Ez a módszer segítségével bejegyzést ír a naplófájlba.You use this method to write entries to the log file. A naplófájl tartalma hasznosak lehetnek a felhasználóknak problémájuk lehet az UDI varázsló futtatása problémák diagnosztizálásához.The contents of the log file are useful for diagnosing issues users might have running the UDI Wizard.

A PropertyBag összetevőPropertyBag Component

A tulajdonságcsomag memória változók tárolója.The property bag is a container for memory variables. A lap használatával érhető el Container() -> Properties().It is available from your page using Container()->Properties(). Memória változók között a különböző oldalakhoz ideiglenes adatok átadására hasznosak.Memory variables are useful for passing temporary data among different pages.

TSVariableBag és TSRepository összetevőkTSVariableBag and TSRepository Components

A TSVariableBag összetevő lehetővé teszi a írási és olvasási feladatütemezési változókat.The TSVariableBag component allows you to read and write task sequence variables. Az értékek a memóriában amíg a felhasználó kattint tartja Befejezés (alapértelmezés).It keeps the values in memory until the user clicks Finish (by default). Érheti el a TSVariable az oldalon keresztül tulajdonságcsomag TSVariables metódus (által megvalósított a WizardPageImpl alaposztály).You can access the TSVariable bag via the page’s TSVariables method (implemented by the WizardPageImpl base class). Ezek az összetevők jelentkezzen az összes olvasási és írási feladatütemezési változókat.These components log all reads and writes of task sequence variables.

WmiRepository összetevőWmiRepository Component

Ez az összetevő egy homlokzati biztosít a WMI-lekérdezések használata.This component provides a façade for working with WMI queries. Hívása a CreateInstance segítő függvényt a ID_WmiRepository példánya ezt az összetevőt, amely támogatja az beszerzése a IWmiRepository felületet.You can call the CreateInstance helper function with ID_WmiRepository to obtain an instance of this component, which supports the IWmiRepository interface. Ez az összetevő keresztül rekordot ad vissza a IWmiIterator felületet.This component returns result records via the IWmiIterator interface.

Lap segítőosztályok varázslóWizard Page Helper Classes

Egyéni UDI varázslólapok az UDI SDK-val megadott beépített segítőosztályok használatával hozhat létre.You can create custom UDI wizard pages using built-in helper classes provided with the UDI SDK. 8. táblázat felsorolja a segítőosztályok, amelyek segítségével hozzon létre egyéni Varázslóoldalak.Table 8 lists the helper classes that you can use to create custom wizard pages.

8. táblázat.Table 8. SegítőosztályokHelper Classes

SegítőosztályHelper class LeírásDescription
ClassFactoryImpl osztályClassFactoryImpl Class Ez akkor hasznos alaposztály olyan osztály adat-előállítóval, amely majd regisztrálhatja a gyári beállításjegyzék létrehozásához.This is a useful base class for creating a class factory that you can then register with the factory registry.
Csatolóosztály sablonInterface Template Class A sablon osztályt használja, ha meg szeretné egy összetevő egynél több felületet megvalósító build.Use this template class when you want to build a component that implements more than one interface.
Elérési út segítőosztályPath Helper Class Ez az osztály a közös fájl vagy könyvtár műveleteket biztosít.This class provides common file/directory operations.
Mutató sablon osztályPointer Template Class Ez az osztály életciklusának kezelését a COM-összetevők a számbavételi hivatkozást biztosít.This class provides reference counting for lifetime management in COM components. Fontos felületek felszabadíthatják befejezése őket.It is important to release interfaces when you are done with them. A sablon osztály automatikusan kezeli a élettartama.This template class handles the lifetime automatically.
PUnknown osztályPUnknown Class Ez az osztály egy intelligens mutató kimondottan az IUnknown illesztőfelületen.This class is a smart pointer specifically for the IUnknown interface. Minden egyéb felületek használja a mutató sablon osztály.For all other interfaces, use the Pointer template class.
StringUtil segítőosztályStringUtil Helper Class Ez az osztály, amely könnyebben használható karakterláncok segédmódszereket biztosít.This class provides helper methods that make it easier to work with strings.
Alkapcsolat sablon osztálySubInterface Template Class Az alaposztály megkönnyíti az olyan összetevő, amely támogatja az adott önmagában illesztőfelület örököl egy másik felületet valósítja meg.This base class makes it easier to implement a component that supports an interface that itself inherits from another interface.
UnknownImpl sablon osztályUnknownImpl Template Class Ez az osztály kezeli a legtöbb COM-összetevő létrehozása részleteit.This class handles most of the details of creating a COM component.
WizardComponent sablon osztályWizardComponent Template Class Az alaposztály szolgáltatásokhoz férhet hozzá a varázsló, például összetevő létrehozása és a naplózás összetevők létrehozására szolgál.This base class is used for creating components that need access to the wizard services, such as component creation and logging.
WizardPageImpl sablon osztályWizardPageImpl Template Class Az alaposztály összes egyéni varázsló oldalán kell használható az alaposztályban.This base class should be used as the base class for all custom wizard pages

ClassFactoryImpl osztályClassFactoryImpl Class

Ez akkor hasznos alaposztály olyan osztály adat-előállítóval, amely majd regisztrálhatja a gyári beállításjegyzék létrehozásához.This is a useful base class for creating a class factory that you can then register with the factory registry.

Az alábbiakban található a minta projekt meghatározásához LocationPage.h fájlból cikkből a ClassFactoryImpl osztály.The following is an excerpt from the LocationPage.h file in the sample project to define the ClassFactoryImpl class.

#pragma once  

#include "ClassFactoryImpl.h"  

class LocationPageFactory :public ClassFactoryImpl  
{  
protected:  
    IUnknown *CreateNewInstance();  
};  

A lap a osztálykészítőjének meghatározásához használt minta oldalon, a LocationPage.cpp fájlból cikkből a következő:The following is an excerpt from the LocationPage.cpp file in the sample wizard page used to define the class factory for the page.

IUnknown *LocationPageFactory::CreateNewInstance()  
{  
    return static_cast<IWizardPage *>(new LocationPage);  
}  

Csatolóosztály sablonInterface Template Class

A sablon osztályt használja, ha meg szeretné egy összetevő egynél több felületet megvalósító build – például:Use this template class when you want to build a component that implements more than one interface—for example:

classLocationPage :public Interface<IFieldCallback, WizardPageImpl<IDD_LOCATION_PAGE>>  

Ez a kód során egy alaposztály is támogató IFieldCalback és a felületek, amelyek WizardPageImpl támogatja (kell történik, amely IWizardPage).This code creates a base class chain that supports both IFieldCalback and the interfaces that WizardPageImpl supports (which happens to be IWizardPage).

Elérési út segítőosztályPath Helper Class

Ez az osztály biztosít közös fájl vagy könyvtár műveletek:This class provides common file/directory operations:

static inline std::wstring GetModulePath(HINSTANCE hModule)  

Azt is adja vissza a teljes elérési útja a példányleíró, majd ezt a módszert való .exe vagy .dll fájl:It also returns the full path to the .exe or .dll file with the instance handle that you provide to this method:

static inline std::wstring GetModuleFilename(HINSTANCE hModule)  

Az osztály az Ön által biztosított példányleíró .exe vagy .dll fájl teljes elérési útját és nevét adja vissza ezt a módszert:The class returns the full path and file name of the .exe and .dll file with the instance handle that you provide to this method:

static inline std::wstring GetDirecotryName(LPCWSTR fullName)  

.. .. .. vagy csak a elérési útvonalát, amíg annak a fájl nevét:or just the path while stripping the file name:

static inline std::wstring GetFileName(LPCWSTR fullName)  

A megadott elérési utat a fájl nevét, a az elérési út segítőosztály csak a fájl nevét adja vissza:Given a path with a file name, the path helper class returns the file name only:

static inline std::wstring Combine(LPCWSTR path, LPCWSTR name)  

Végezetül az osztály, amely a teljes elérési útja és neve (vagy egy másik elérési utat) új karakterláncot ad vissza.Finally, the class returns a new string that is the combined path and file name (or another path).

Mutató sablon osztályPointer Template Class

Ez az osztály Pointer.h van meghatározva.This class is defined in Pointer.h. Mivel a COM-komponensek életciklusának kezelését a számbavételi hivatkozás, fontos, hogy minden esetben felszabadít felületek velük befejezése.Because COM components use reference counting for lifetime management, it is important that you always release interfaces when you are done with them. A Microsoft biztosít egy sablon osztály, amely automatikusan kezeli a élettartama.Microsoft provides a template class that handles the lifetime automatically. Például ha egy intelligens mutató használni szeretne egy XML-felülete, lehet írni, például ehhez hasonló:For example, if you want a smart pointer for an XML interface, you could write something like this:

Pointer<IXMLDOMNode> pNewChild  
pXmlDom->CreateNode(NODE_ELEMENT, L"MyElement", L"", &pNewChild);  

Az első sor a intelligens mutató határozza meg.The first line defines the smart pointer. A második sor azt mutatja, egy másik hívás útján intelligens mutató hivatkozások beolvasása.The second line shows retrieving a smart pointer via another call. A & operátor mindig feloldja egy meglévő kapcsolat, ha egy vagy több tartalmaz, és a belső mutató címét adja meg.The & operator always releases an existing interface if it contains one and returns the address for the internal pointer. Után egy ehhez hasonló mutató beolvasását a mutató hívások példány kiadás , ha a változó a hatókörön kívüli kerül.Once you have retrieved a pointer like this, the Pointer instance calls Release for you when the variable goes out of scope. A Microsoft azt javasolja, hogy hívása helyett használjon intelligens mutatók AddRef és kiadás manuálisan.Microsoft recommends that you use smart pointers instead of calling AddRef and Release manually.

Emellett a mutató mutató osztály hívások intelligens QueryInterface meg más illesztőfelületek beolvasása.In addition, the Pointer smart pointer class calls QueryInterface to retrieve other interfaces for you. Például a gyári beállításjegyzék létrehoz egy összetevő egy új példányát, ha van ilyen kódot:For example, when the factory registry creates a new instance of a component, it has code like this:

PWizardComponent pComp = pUnknown;  
if (pComp != nullptr)  
    pComp->SetContainer(m_pContainer);  

Az első sor hívások QueryInterface a háttérben, kérje a IWizardComponent felületet.The first line calls QueryInterface behind the scenes to request the IWizardComponent interface. Az eredményül kapott intelligens mutató lesz egyenlő nullptr Ha az összetevő nem támogatja a felületet.The resulting smart pointer will equal nullptr if the component does not support that interface.

PUnknown osztályPUnknown Class

Ez az osztály egy intelligens mutató kifejezetten a IUnknown felületet.This class is a smart pointer specifically for the IUnknown interface. Minden egyéb felületek, használja a mutató sablon osztály.For all other interfaces, use the Pointer template class.

StringUtil segítőosztályStringUtil Helper Class

Ez az osztály a Utilities.h van definiálva, és segédmódszereket, amelyek révén könnyebben karakterláncok együttműködve biztosítja:This class is defined in Utilities.h and provides helper methods that make it easier to work with strings:

static inline int CompareIgnore(LPCWSTR first, LPCWSTR second)  

Ez a módszer során figyelmen kívül hagyja a kis hasonlítja össze két karakterláncot (lásd a táblázat 9).This method compares two strings while ignoring case (see Table 9).

9. táblázat.Table 9. StringUtil segítőosztályStringUtil Helper Class

adja visszaReturns LeírásDescription
00 Karakterláncok azonosak, és nagybetűktőlStrings match, ignoring case
<0<0 Első < másodikFirst < second
>0>0 Első > másodikFirst > second

Íme egy példa:Here is an example:

static inline std::wstring Format(LPCWSTR input, int index, LPCWSTR value)  
static inline std::wstring Format(LPCWSTR input, int index, DWORD value)  

Ezek a módszerek kicsit olyanok, mint a Microsoft .NET formátum abban az értelemben, hogy paraméterei formájában módszerek {0}.These methods are a bit like the Microsoft .NET Format methods in the sense that parameters are in the form of {0}. Azonban nem működnek a bemeneti formázás – csak helyettesítés:However, they do not perform any formatting of the input—just substitution:

static inline std::wstring Printf(std::wstring format, I val)  
static inline std::wstring Printf(std::wstring format, I val1, J val2)  
static inline std::wstring Printf(std::wstring format, I val1, J val2, K val3)  
static inline std::wstring Printf(std::wstring format, I val1, J val2, K val3, L val4)  

Ezek a körül burkolók a StringCchPrintf adott vissza egy wstring így nem kell memóriát karakterlánc vagy a puffer magát.These are wrappers around the StringCchPrintf that return a wstring so you do not have to allocate memory for strings or buffers yourself.

Alkapcsolat sablon osztálySubInterface Template Class

Az alaposztály megkönnyíti az olyan összetevő, amely támogatja az adott önmagában illesztőfelület örököl egy másik felületet valósítja meg.This base class makes it easier to implement a component that supports an interface that itself inherits from another interface. Például a ICheckBox illesztőfelület örököl IControl.For example, the ICheckBox interface inherits from IControl. Íme, hogy ez az osztály azonosítására szolgál a CheckBoxWrapper:Here is how this class is used to define the CheckBoxWrapper:

classCheckBoxWrapper :public SubInterface<IControl, UnknownImpl<ICheckBox> >  

Az alap objektumfelület. az első paraméter, a második paraméter pedig a származtatott illesztőfelület.The base interface is the first parameter, while the derived interface is the second parameter.

UnknownImpl sablon osztályUnknownImpl Template Class

Ez az osztály UnknownImpl.h van definiálva, és a legtöbb COM-összetevő létrehozása részleteit.This class is defined in UnknownImpl.h and handles most of the details of creating a COM component. Íme egy példa hogyan szeretné használni az alaposztály:Here is an example of how you would use this base class:

classDirectory :public UnknownImpl<IDirectory>  

Ez a kód határozza meg egy osztály, amely támogatja a IDirectory felületet.This code defines a class that supports the IDirectory interface.

WizardComponent sablon osztályWizardComponent Template Class

Ez az osztály a IWizardComponent.h van definiálva, és létrehozásához a varázsló szolgáltatások, például összetevő létrehozása és a naplózási hozzáférést igénylő összetevők hasznos alaposztálya.This class is defined in IWizardComponent.h and is a useful base class for creating components that need access to the wizard services, such as component creation and logging.

Tegyük fel, ez hogyan a CopyFilesTask komponens definíciója:As an example, here is how the CopyFilesTask component is defined:

classCopyFilesTask :public WizardComponent<ITask>  
{  
    ...  

Az e sablon osztály paramétere a "fő" interface, az összetevő, amely feladatok esetében használni kívánt ITask.The parameter for this template class is the “main” interface you want to use for your component, which in the case of tasks is ITask. Használatával WizardComponent azt jelenti, hogy a komponens mindkét a felületét támogatja a adja meg (ITask ebben a példában) és IWizardComponent.Using WizardComponent means that your component supports both the interface your provide (ITask in this example) and IWizardComponent.

Ha az osztály gyári beállításjegyzék használatával hozzon létre egy új összetevőt, a beállításjegyzék meghívja az összetevő IWizardComponent -> SetContainer metódust az összetevő-a varázsló-szolgáltatásokhoz való hozzáférés.Whenever you use the class factory registry to create a new component, the registry calls the component’s IWizardComponent->SetContainer method to provide your component access to the wizard services.

WizardPageImpl sablon osztályWizardPageImpl Template Class

Ez az osztály használata az alaposztályban az egyéni lapok – például:Use this class as the base class for your custom pages—for example:

class LocationPage :public WizardPageImpl<IDD_LOCATION_PAGE>  

Az erőforrás-azonosítója a párbeszédpanel bezárásához sablon paraméter.The parameter is the resource ID for your dialog box template.

Felületeihez varázslólapWizard Page Interfaces

Az UDI varázsló felületeket különböző vezérlőit a lap eléréséhez használja.The UDI Wizard uses interfaces to access the different controls on your page. Ön oldalán, használja a GetControlWrapper működnek, mint a vezérlő burkoló beolvasása.Within you page, you use the GetControlWrapper function to retrieve a control wrapper. Íme egy példa:Here is an example:

PStaticText pFormat;  
GetControlWrapper(View(), IDC_CHECK_PARTITION, CONTROL_STATIC_TEXT, &pFormat);  

Itt PStaticText intelligens mutató a IStaticText felületet.Here, PStaticText is a smart pointer to the IStaticText interface. Intelligens hivatkozások automatikusan hívja a COM Release() metódusban, amikor azok nyissa meg hatókörén kívül, vagy adja meg a címet, a változók (például & pFormat) metódusra.Smart pointers automatically call the COM Release() method when they go out of scope or you pass the address of a variable (like &pFormat) to a method.

IADHelper felületIADHelper Interface

__interfaceIADHelper : IUnknown  
{  
    HRESULT Init(ILogger *pLogger);  
    HRESULT ValidLogon(LPCTSTR userName, LPCTSTR password, LPCTSTR domain);  
    HRESULT HasAccess(LPCTSTR username, LPCTSTR password, LPCTSTR domain, LPCTSTR computerName, LPCTSTR accountDomain);  
};  
HRESULT Init(ILogger *pLogger)HRESULT Init(ILogger *pLogger)

Ezt az összetevőt, a naplózó átadja azt, hogy információkat írhasson a naplóba inicializálni.Initialize this component, passing it to the logger so that it can log information.

HRESULTValidLogon (LPCTSTR felhasználónév, jelszó LPCTSTR, LPCTSTR tartomány)HRESULTValidLogon(LPCTSTR userName, LPCTSTR password, LPCTSTR domain)

Ez a metódus ellenőrzi hitelesítő adatokat érvényes, ahogy az 10. táblázat.This method verifies whether a set of credentials is valid, as shown in Table 10.

10. táblázat.Table 10. HResultValidLogonHResultValidLogon

HResultHResult LeírásDescription
S_OKS_OK Hitelesítő adatok érvényesek.Credentials are valid
S_FALSES_FALSE Hitelesítő adatok nem érvényesek.Credentials are not valid
E_FAILE_FAIL A tartományvezérlő; nem található. Ellenőrizze a naplókat a további részletekCould not locate the domain controller; check logs for details
HRESULT HasAccess(LPCTSTR username, LPCTSTR password, LPCTSTR domain, LPCTSTR computerName, LPCTSTR accountDomain)HRESULT HasAccess(LPCTSTR username, LPCTSTR password, LPCTSTR domain, LPCTSTR computerName, LPCTSTR accountDomain)

Ez a metódus ellenőrzi, hogy rendelkezik-e hitelesítő adatokat a számítógép-objektum olvasási/írási hozzáféréssel az AD DS-ben, ahogy 11. táblázat az.This method verifies whether a set of credentials has read/write access to the computer object in AD DS, as shown in Table 11.

11. táblázat.Table 11. HResult HasAccessHResult HasAccess

HRESULTHRESULT LeírásDescription
S_OKS_OK A felhasználó rendelkezik hozzáférésiThe user has access
E_FAILE_FAIL A felhasználó nem rendelkezik hozzáféréssel.The user does not have access. Ellenőrizze a naplófájl további információkat.Check the log file for additional information.

IBackgroundTask felületIBackgroundTask Interface

__interface IBackgroundTask : IUnknown  
{  
    HRESULT Init(ITask *pTask, int id, IBackgroundCallback *pCallback);  
    void Start(void);  
    BOOL Running(void);  
    HRESULT Wait(DWORD waitMilliseconds);  
    HRESULT Terminate(DWORD exitCode);  
    HRESULT GetExitCode(LPDWORD pCode, HRESULT *pHresult);  
    HRESULT Close(void);  
};  
ÁttekintésOverview

A folyamatban lap ezt az osztályt használja a feladatok futtatásához egy külön szálban.The Progress page uses this class to run tasks on a separate thread. Ez az osztály is használhatja, amikor le kívánja műveleteket külön szálban.You can also use this class whenever you want to perform operations on a separate thread. Feladatok bármely osztályát, amely támogatja a ITask felületet.Tasks are any class that supports the ITask interface.

Ez az interfész megvalósítja a ID_BackgroundTask ("Microsoft.Wizard.BackgroundTask") az összetevő a IBackgroundTask.h felületen meghatározott.This interface is implemented by the ID_BackgroundTask ("Microsoft.Wizard.BackgroundTask") component, defined in the IBackgroundTask.h interface.

HRESULT Init(ITask *pTask, int id, IBackgroundCallback *pCallback)HRESULT Init(ITask *pTask, int id, IBackgroundCallback *pCallback)

Ez az interfész inicializálja az összetevő, ahogy az 12. táblázat.This interface initializes the component, as shown in Table 12.

12. táblázat.Table 12. HRESULT InitHRESULT Init

ParaméterParameter LeírásDescription
pTaskpTask Egy másik szálon futtatni szeretné a kódot tartalmazó osztály mutató hivatkozásokPointer to the class that contains the code you want to run on another thread
IdId A visszahívási használható több befejezett metódus állapítható meg, hogy mely feladat befejeződött, fut, akkor hasznos, ha azonos visszahívási metódus több feladat indításaA number you can use in the callback’s Finished method to tell which task finished running; useful if you start several tasks with the same callback method
pCallbackpCallback Egy osztály, amely megvalósítja a befejezett metódus, amely nevezzük, amikor egy tevékenység befejezése után történik; a hívást a befejezett metódus lesz a háttérszálon, nem a felhasználói felület szálánA class that implements the Finished method, which is called whenever a task finishes running; the call to the Finished method will be on the background thread, not the UI thread
void Start(void)void Start(void)

Ez a módszer elindítja a feladatot a háttérszálon, majd a 13. táblázat látható elemeket adja vissza.This method starts the task on a background thread and returns the elements shown in Table 13.

13. táblázat.Table 13. Térjen vissza a HáttérszálonReturn Background Thread

adja visszaReturns LeírásDescription
E_INVALIDARGE_INVALIDARG A feladat már fut, ezért most nem lehet elindítani.The task is already running, so you cannot start it right now.
E_FAILE_FAIL Nem sikerült a szál indítása.There was a problem starting the thread.
S_OKS_OK A szál indítása.The thread was started.
LOGIKAI Running()BOOL Running()

Ez a metódus a háttérben futó feladat éppen fut. Ha igaz és hamis adja vissza, ha az nem futna.This method returns TRUE if the background task is currently running and FALSE if it is not running.

HRESULT Wait(DWORD waitMilliseconds)HRESULT Wait(DWORD waitMilliseconds)

Ez a módszer megvárja, amíg a szál leáll, vagy az eltelt ideje (MS).This method waits until either the thread stops running or the number of milliseconds has elapsed.

HRESULT Terminate(DWORD exitCode)HRESULT Terminate(DWORD exitCode)

Ez a módszer a szál (lásd a táblázat 14 és 15. táblázat) futtató használhatatlanná teszi.This method kills the thread that is running (see Table 14 and Table 15). Ez a folyamat befejezéséhez után ez a metódus visszaadja a rövid időn is igénybe vehet.This process may take a short amount of time to finish after this method returns.

14. táblázat.Table 14. HRESULT leáll kilépési kódHRESULT Terminate Exit Code

ParaméterParameter LeírásDescription
exitCodeexitCode A kilépési kóddal befejeződött visszahívási metódus, amely is elérhető lesz a elküldendő a GetExitCode metódust.The exit code that will be sent to the Finished callback method, which will also be available from the GetExitCode method.

15. táblázat.Table 15. Lezárás kódokTermination Codes

adja visszaReturns LeírásDescription
E_FAILE_FAIL Nem sikerült leállítani.The call to terminate failed.
S_OKS_OK A szál leáll a kérelem sikeres volt.The request to terminate the thread succeeded.
HRESULT GetExitCode(LPDWORD pCode, HRESULT *pHresult)HRESULT GetExitCode(LPDWORD pCode, HRESULT *pHresult)

Ezt a módszert a feladatütemezés futtatását a háttérben szálon eredményeinek lekérése (lásd a táblázat 16).Use this method to get the results of running the task on the background thread (see Table 16).

16. táblázat.Table 16. EredménykódokResult Codes

ParaméterParameter LeírásDescription
pCodepCode Mutató egy DWORD , amely lesz beállítva, a visszatérési vagy nullptr Ha nincs szükség a visszatérési érték.Pointer to a DWORD that will be set on return or nullptr if you do not need the return value. Kilépéskor, ez a paraméter értéke STILL_ACTIVE Ha a szál fut, a tevékenység által visszaadott hibakód Execute metódus, vagy a kapott értéket a megszakítás miatt metódus Ha Ez a módszer műveletet.On exit, this parameter is set to STILL_ACTIVE if the thread is running, the code returned by the task’s Execute method, or the value passed to the Terminate method if you called that method.
pHresultpHresult Mutató egy HRESULT , amely lesz beállítva, a visszatérési vagy nullptr Ha nincs szükség a HRESULT érték.Pointer to an HRESULT that will be set on return or nullptr if you do not need the HRESULT value.
HRESULT Close(void)HRESULT Close(void)

Ez a metódus a háttérben futó szál kiadását.This method releases the background thread. Adja vissza, E_INVALIDARG Ha a szál jelenleg fut és S_OK más módon.It returns E_INVALIDARG if the thread is currently running and S_OK otherwise.

ICheckBox felületICheckBox Interface

__interface ICheckBox : IControl  
{  
    void Check(BOOL check);  
    BOOL IsButtonChecked();  
};  
"void" jelölőnégyzet (logikai ellenőrzése)void Check(BOOL check)

Állítsa be a jelölőnégyzetet bejelöltségi állapota.Set the checked state of the check box. Ha a metódus értéke TRUE, a jelölőnégyzet be van jelölve; a metódus értéke HAMIS, ha a jelölőnégyzet nincs bejelölve.When the method is TRUE, the check box is selected; when the method is FALSE, the check box is cleared.

LOGIKAI IsButtonChecked()BOOL IsButtonChecked()

Ez a módszer az aktuális állapotának jelölőnégyzet jelenti.This method reports the current check state of a check box.

IComboBox felületIComboBox Interface

__interface IComboBox : IControl  
{  
    HRESULT Bind([in] IBindableList *pList);  
    HRESULT Select(int index);  
    int Selected(void);  
    void Add([in] LPCTSTR caption);  
    HRESULT GetText([out, retval] LPBSTR pText);  
    void Clear();  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a CheckBoxWrapper összetevő.This interface is implemented by the CheckBoxWrapper component. Ez az összetevő használatával példányának lekérése a GetControlWrapper segítő függvény típusú CONTROL_COMBO_BOX.You retrieve an instance of this component using the GetControlWrapper helper function with the type CONTROL_COMBO_BOX.

HRESULT Bind([in] IBindableList *pList)HRESULT Bind([in] IBindableList *pList)

Ezt a módszert használja, ha egy adatforrásban, amely megvalósítja a IBindableList felületet.Use this method when you have a data source that implements the IBindableList interface. A lista inicializálja a tartalmak a feliratok a listáról.The list box initializes the contents with the captions from this list.

HRESULT Select(int index)HRESULT Select(int index)

Válassza ki a elemet a kombinált lista a indexnél.Select the item in the combo box at the index.

int Selected(void)int Selected(void)

Ez a módszer visszaadása a kijelölt elem indexe vagy -1 Ha egyik sincs kiválasztva.This method returns the index of the selected item or -1 if nothing is selected.

([a] LPCTSTR felirat) void hozzáadásavoid Add([in] LPCTSTR caption)

Manuálisan vegyen fel egy elemet a kombinált lista.Manually add an item to the combo box.

HRESULT GetText([out, retval] LPBSTR pText)HRESULT GetText([out, retval] LPBSTR pText)

A karakterlánc a kombinált listán éppen kijelölt elem beolvasása.Retrieve the string of the currently selected item in the combo box.

"void" Clear()void Clear()

A kombinált lista elemeinek eltávolítása.Remove all the items from the combo box.

IControl felületIControl Interface

__interface IControl : IUnknown  
{  
    HRESULT SetEnable(BOOL enable);  
    BOOL IsEnabled(void);  
    HRESULT SetVisible(BOOL visible);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a ControlWrapper összetevő.This interface is implemented by the ControlWrapper component. Ez az összetevő használatával példányának lekérése a GetControlWrapper segítő függvény típusú CONTROL_GENERIC.You retrieve an instance of this component using the GetControlWrapper helper function with the type CONTROL_GENERIC.

HRESULT SetEnable(BOOL enable)HRESULT SetEnable(BOOL enable)

Engedélyezi vagy letiltja a vezérlő.Enable or disable the control.

BOOL IsEnabled(void)BOOL IsEnabled(void)

Igaz értéket ad vissza, ha a vezérlő engedélyezve, hamis, ha nem.Returns TRUE if the control is enabled, FALSE if it is not.

HRESULT SetVisible(BOOL visible)HRESULT SetVisible(BOOL visible)

Megjelenítheti vagy elrejtheti a vezérlő.Show or hide the control.

ICpuInfo felületICpuInfo Interface

__interface ICpuInfo : IUnknown  
{  
    BOOL Is64Bit(void);  
};  
ÁttekintésOverview

Ez az interfész szerezzen be egy új létrehozásával ID_CpuInfo összetevő.You obtain this interface by creating a new ID_CpuInfo component. Az egyetlen módszer jelzi, hogy a Processzor 32 vagy 64 bites.The single method reports whether the CPU is 32 or 64 bit. Vegye figyelembe, hogy ha egy 32 bites operációs rendszer 64 bites számítógépen, ezzel a módszerrel igaz értéket ad vissza, mert a Processzor (nem az operációs rendszer) szélessége csak jelez.Note that if you have a 32-bit operating system on a 64-bit computer, this method returns TRUE, because it is only reporting the width of the CPU (not the operating system).

IDirectory felületIDirectory Interface
__interface IDirectory : IUnknown  
{  
    BOOL FileExists(LPCWSTR name);  
    BOOL FindFirst([in] LPCWSTR name);  
    HRESULT FoundName([out, retval] LPBSTR name);  
    DWORD FoundAttributes(void);  
    BOOL FindNext(void);  
    void FinishFind(void);  
};  
ÁttekintésOverview

A Directory összetevő, amelyek segítségével létrehozott ID_Directory, egy homlokzati biztosít a könyvtárak működik-e a fájlrendszerben.The Directory component, which you create using ID_Directory, provides a façade for working with directories in the file system.

LOGIKAI FileExists(LPCWSTR name)BOOL FileExists(LPCWSTR name)

Ez a metódus eredménye IGAZ, ha a megadott fájl létezik.This method returns TRUE if a file with the name you provide exists.

LOGIKAI FindFirst([in] LPCWSTR name)BOOL FindFirst([in] LPCWSTR name)

Ez a metódus első egyezést talál a megadott név.This method finds a first match for the name you provide. Támogatja a helyettesítő karakterek és a fájl és a könyvtár nevét adja vissza.It supports wildcard characters and returns both file and directory names. A metódus igaz értéket ad vissza, ha egyezés található, hamis más módon.The method returns TRUE if a match was found, FALSE otherwise.

HRESULT FoundName([out, retval] LPBSTR name)HRESULT FoundName([out, retval] LPBSTR name)

Ez a metódus hívása található a fájl nevét kéri le FindFirst vagy KövetkezőKeresése.This method retrieves the name of the file found with a call to FindFirst or FindNext.

DWORD FoundAttributes(void)DWORD FoundAttributes(void)

Ez a módszer az attribútum a legújabb található fájl vagy könyvtár adja vissza.This method returns the attribute for the most recent found file or directory. Kódot használhatja az alábbiak szerint annak megállapítására, hogy egy könyvtár:You can use code as follows to test whether it is a directory:

pDirectory->FoundAttributes() & FILE_ATTRIBUTE_DIRECTORY  
LOGIKAI FindNext(void)BOOL FindNext(void)

A következő keresése.Find the next. Ez a módszer igaz értéket ad vissza Ha egy másik match nem talált, hamis más módon.This method returns TRUE if another match was found, FALSE otherwise.

void FinishFind(void)void FinishFind(void)

Ez a módszer a keresési művelet használt erőforrások kiadását.This method releases resources used for the Find operation.

IDomainJoinValidator felületIDomainJoinValidator Interface

__interface IDomainJoinValidator : IUnknown  
{  
    HRESULT Init(ILogger *pLogger, IWizardPageContainer *pContainer, IStaticText *pUsername, IStaticText *pPassword, IStaticText *pComputerName);  
    HRESULT IsUsernameValid(LPCWSTR domainName);  
    BOOL CanModifyComputerAdEntry(LPCWSTR domainName);  
};  
ÁttekintésOverview

Az illesztő használatával példányának beszerezte a ID_DomainJoinValidator egy érték a CreateInstance sablonfüggvény.You obtain an instance of this interface using the ID_DomainJoinValidator value to the CreateInstance template function.

HRESULT Init(ILogger *pLogger, IWizardPageContainer *pContainer, IStaticText *pUsername, IStaticText *pPassword, IStaticText *pComputerName)HRESULT Init(ILogger *pLogger, IWizardPageContainer *pContainer, IStaticText *pUsername, IStaticText *pPassword, IStaticText *pComputerName)

A példány inicializálása, a 17 látható módon.Initialize the instance, as shown in Table 17.

17. táblázat.Table 17. HRESULT Init - példány inicializálásaHRESULT Init - Instance Initialization

ParaméterParameter LeírásDescription
pLoggerpLogger A naplózó példányt, és a lap a lapján elérhető naplózó módszerThe logger instance, which is available to your page via the page’s Logger method
pContainerpContainer Az eredmények továbbítja a lapon tároló módszerPasses the results from your page’s Container method
pUsernamepUsername A szövegmező érvényesíteni a felhasználónevet tartalmazóThe text box that contains the user name to be validated
pPasswordpPassword A szövegmezőben, amely tartalmazza a jelszó érvényesítéseThe text box that contains the password to be validated
PComputerNamePComputerName A szövegmezőben, amely tartalmazza a számítógép, amely csatlakozik a tartományhoz fog végül nevétThe text box that contains the name of the computer that will eventually be joined to the domain
HRESULT IsUsernameValid(LPCWSTR domainName)HRESULT IsUsernameValid(LPCWSTR domainName)

Ez a módszer a IADHelper -> ValidLogon módszer a munkájuk elvégzéséhez.This method uses the IADHelper->ValidLogon method to do the work. Ez a módszer a részletekért tekintse meg.See that method for details.

LOGIKAI CanModifyComputerAdEntry(LPCWSTR domainName)BOOL CanModifyComputerAdEntry(LPCWSTR domainName)

Győződjön meg arról, hogy a felhasználó rendelkezik-e a számítógép bejegyzés módosításához szükséges jogokkal.Verify whether the user has rights to modify the computer entry. A munka nagyobb része végzi el IADHelper -> HasAccess.Most of the work is done by IADHelper->HasAccess. Ha ez a módszer a hamis értéket ad vissza, ellenőrizze a részletes adatokat a naplófájlban.If this method returns FALSE, check the log file for details.

IDriveList felületIDriveList Interface

__interface IDriveList : IUnknown  
{  
    HRESULT Init(IWmiRepository *pWmi);  
    HRESULT SetWhereClause(LPCTSTR whereClause);  
    HRESULT SetMinimumDriveSize(__int64 size);  
    HRESULT Update(void);  
    HRESULT AddProperty(ENUM_DISK_QUERY_SECTION section, LPCTSTR propName, LPCTSTR propNameReturned);  

    size_t Count(void);  
    HRESULT GetProperty(size_t index, LPCTSTR propName,  LPVARIANT value);  
    HRESULT GetCaption(size_t index,  LPBSTR pCaption);  
}  
HRESULT Init(IWmiRepository *pWmi)HRESULT Init(IWmiRepository *pWmi)

Ez a metódus meghívható bármely más összetevők hívása előtt.Call this method before you call any other components. Akkor hozzon létre egy új WmiRepository Ez a metódus hívása előtt.You will need to create a new WmiRepository before you call this method.

HRESULT SetWhereClause(LPCTSTR whereClause)HRESULT SetWhereClause(LPCTSTR whereClause)

Ez a módszer, amely megjelenik majd, mint a "where" záradék a lekérdezés szöveges hozzáadását teszi lehetővé.This method allows you to add text that will appear as a “where” clause in the query. Például a következő sort adja vissza egyetlen USB-meghajtó:For example, the following line returns only USB drives:

pDrives->SetWhereClause(L"WHERE InterfaceType='USB'");  
HRESULT SetMinimumDriveSize (__int64 mérete)HRESULT SetMinimumDriveSize(__int64 size)

Adja meg a kis méret meghajtó méretét, bájtban, a lekérdezés által visszaadott meghajtók esetében.Set the minimize drive size, in bytes, for drives that will be returned from the query.

HRESULT Update(void)HRESULT Update(void)

A lekérdezés végrehajtása.Execute the query. A metódus hívása után rendelkezésre álló meghajtó listában meghajtóbetűjelet szerint van rendezve.The drive list available after calling this method is sorted by drive letter.

HRESULT AddProperty(ENUM_DISK_QUERY_SECTION section, LPCTSTR propName, LPCTSTR propNameReturned)HRESULT AddProperty(ENUM_DISK_QUERY_SECTION section, LPCTSTR propName, LPCTSTR propNameReturned)

Ez a metódus nevét, amelyet szeretne elérhetővé tenni a lekérdezés eredményében további tulajdonságok hozzáadása.This method adds the names of additional properties that you want to make available in the query results. Ez a metódus hívása előtt hívható frissítés.Call this method before calling Update. 18. táblázat bemutatja a hasznos tulajdonságok közül hármat.Table 18 shows three of the useful properties.

18. táblázat.Table 18. HRESULT AddProperty: Hasznos tulajdonságaiHRESULT AddProperty: Useful Properties

A szakaszSection TulajdonságProperty LeírásDescription
DISKQUERY_LOGICALDISKDISKQUERY_LOGICALDISK SizeSize A mérete, a karakterláncbólThe size, in bytes, represented as a string
DISKQUERY_DISKPARTITIONDISKQUERY_DISKPARTITION DiskIndexDiskIndex Egy egész számot 0-tól induló, a lemezek számátThe disk number as an integer, starting with 0
DISKQUERY_LOGICALDISKDISKQUERY_LOGICALDISK VolumeNameVolumeName A kötet címkéjeThe volume label
size_t Count(void)size_t Count(void)

A lekérdezés visszaadja rekordok száma.The number of records the query returns. Hívás frissítés Ez a metódus hívása előtt.Call Update before you call this method.

HRESULT GetProperty(size_t index, LPCTSTR propName, LPVARIANT value)HRESULT GetProperty(size_t index, LPCTSTR propName, LPVARIANT value)

Ez a módszer tulajdonság értékének a lekérdezés eredményeit kéri le a 19 látható módon.This method retrieves the value of a property from the query results, as shown in Table 19.

19. táblázat.Table 19. HRESULT GetPropertyHRESULT GetProperty

ParaméterParameter LeírásDescription
IndexIndex Nulla alapú index az eredményrekordZero-based index to the result record
propNamepropName A tulajdonság, például a "Méret" neveName of the property, such as “Size”
ValueValue A visszatérési Ez a paraméter tartalmazza a változó értékét a tulajdonságOn return, this parameter contains a variant value of the property
HRESULT GetCaption(size_t index, LPBSTR pCaption)HRESULT GetCaption(size_t index, LPBSTR pCaption)

Ez a módszer lekéri a felirat, egy rekord áltás értéke ugyanaz, mint a felirat tulajdonság.This method retrieves the caption for a record witch is the same as the Caption property.

IImageList felületIImageList Interface

__interface IImageList  
{  
    HRESULT CreateImageList(int width, int height, UINT flags);  
    HImageList GetImageList(void);  
    int AddImage(HInstance hInstance, int resourceId);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a ImageList összetevő.This interface is implemented by the ImageList component. Ezt az összetevőt példányának lekérése a IListView felületet.You retrieve an instance of this component from the IListView interface.

HRESULT CreateImageList(int width, int height, UINT flags)HRESULT CreateImageList(int width, int height, UINT flags)

Hozzon létre egy új képlistában, amely ezt az összetevőt kezeli.Create a new image list, which this component manages. Ez a metódus csak egyszer hívható.Call this method only once.

HImageList GetImageList(void)HImageList GetImageList(void)

Ez a módszer a leírót a képlistában adja vissza, abban az esetben, ha más műveleteket végez a képlistában végrehajtásához.This method returns the handle for the image list in case you need to perform other operations on the image list.

int AddImage(HInstance hInstance, int resourceId)int AddImage(HInstance hInstance, int resourceId)

Hozzáadása egy új lemezképet a képlistában az adott erőforrás használata, ahogy 20. táblázat az.Add a new image to the image list from a resource, as shown in Table 20.

20. táblázat.Table 20. HRESULT IImageList felületHRESULT IImageList Interface

ParaméterParameter LeírásDescription
hInstancehInstance A modul, amely tartalmazza a bitkép erőforrás példányleíróInstance handle of the module that contains the bitmap resource
resourceIdresourceId A képlistában betölthető az erőforrás azonosítójaID of the resource to load into the image list

IListView felületIListView Interface

__interface IListView : IControl  
{  
    int AddItem([in] LPCTSTR text);  
    int AddColumn(int width, [in] LPCTSTR text);  
    HRESULT SetSubItem(int index, int column, [in] LPCTSTR text);  
    int GetWidth(void);  
    void SetExtendedStyle(DWORD style);  
    int GetSelectedItem(void);  
    HRESULT SelectItem(int index);  
    BOOL IsItemChecked(int index);  
    int GetItemCount(void);  
    HRESULT CreateImageList(int width, int height, UINT flags);  
    int AddImage(HINSTANCE hInstance, int resourceId);  
    HRESULT SetImage(int index, int imageIndex);  
    HRESULT Clear(void);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a ControlWrapper összetevő.This interface is implemented by the ControlWrapper component. Ez az összetevő használatával példányának lekérése a GetControlWrapper segítő függvény típusú CONTROL_LIST_VIEW.You retrieve an instance of this component using the GetControlWrapper helper function with the type CONTROL_LIST_VIEW.

int additem metódust ([a] LPCTSTR szövegben)int AddItem([in] LPCTSTR text)

Egy új sort ad hozzá a listához.Add a new row to the list box. A metódus adja vissza, az elem indexe az előzőekben adott hozzá.The method returns the index of the item just added.

int AddColumn (int szélesség, [a] LPCTSTR szövegben)int AddColumn(int width, [in] LPCTSTR text)

Egy olyan új oszlop hozzáadása a listanézetben.Add a new column to the list view.

HRESULT SetSubItem(int index, int column, [in] LPCTSTR text)HRESULT SetSubItem(int index, int column, [in] LPCTSTR text)

A szöveg megjelenő 21. táblázat az oszlop a lista első oszlopa nem beállításaSet the text in a column other than the first column of the list box, as shown in Table 21.

21. táblázat.Table 21. HRESULT SetSubItemHRESULT SetSubItem

ParaméterParameter LeírásDescription
indexindex A módosítani kívánt lista elem indexeThe index of the list item you want to modify
Oszlopcolumn A frissítendő; oszlop indexe az első oszlop értéke a additem metódust, a két oszlop és a következő van beállítva, ez a metódusThe index of the column you want to update; the first column is set with AddItem, columns two and following are set with this method
Szövegtext Az oszlop megjelenítendő karakterláncThe string to show in the column
int GetWidth(void)int GetWidth(void)

Ez a módszer a teljes szövegmező szélessége adja vissza.This method returns the width of the entire text box.

"void" SetExtendedStyle(DWORD style)void SetExtendedStyle(DWORD style)

Ez a módszer lehetővé teszi, hogy a lista kiterjesztett stílusok állíthat be – például:This method allows you to set extended styles on the list box—for example:

m_pList->SetExtendedStyle(LVS_EX_FULLROWSELECT);  
int GetSelectedItem(void)int GetSelectedItem(void)

Ez a módszer a kijelölt lista nézet indexét adja vissza.This method returns the index of the list view item currently selected.

HRESULT SelectItem(int index)HRESULT SelectItem(int index)

A kijelölt elem beállítása az ezt az indexet a listában.Set the selected item in the list to this index.

LOGIKAI IsItemChecked(int index)BOOL IsItemChecked(int index)

Ez a metódus eredménye IGAZ, ha ki van választva egy elem a listában.This method returns TRUE if an item in the list is selected. Ez a metódus megköveteli, hogy hívjon SetExtendedStyle beállítása a jelölőnégyzet stílusa.This method requires that you call SetExtendedStyle to set the check box style.

int GetItemCount(void)int GetItemCount(void)

Ez a módszer a számú elemet ad vissza a listanézetben.This method returns the number of items in the list view.

HRESULT CreateImageList(int width, int height, UINT flags)HRESULT CreateImageList(int width, int height, UINT flags)

Hozzon létre egy új képlistában, és csatlakoztassa a listanézetben.Create a new image list, and attach it to the list view.

int AddImage(HINSTANCE hInstance, int resourceId)int AddImage(HINSTANCE hInstance, int resourceId)

Kép felvétele a listanézet képlista.Add an image to the list view’s image list. Meg kell hívnia CreateImageList, első.You need to call CreateImageList, first.

HRESULT SetImage(int index, int imageIndex)HRESULT SetImage(int index, int imageIndex)

Állítsa be a képet, amely egy adott lista nézet elem bal oldalán megjelenik.Set the image that will be shown on the left side for a specific list view item.

HRESULT Clear(void)HRESULT Clear(void)

Az összes elem eltávolítása a listanézetben.Remove all items from the list view.

IProgressBar felületIProgressBar Interface

__interface IProgressBar : IControl  
{  
    HRESULT SetPercentage(int position);  
    int GetPercentage(void);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a ProgressBarWrapper összetevő.This interface is implemented by the ProgressBarWrapper component. Ez az összetevő használatával példányának lekérése a GetControlWrapper segítő függvény típusú CONTROL_PROGRESS_BAR.You retrieve an instance of this component using the GetControlWrapper helper function with the type CONTROL_PROGRESS_BAR.

HRESULT SetPercentage(int position)HRESULT SetPercentage(int position)

Állítsa be a folyamatjelző, 0 és 100 közötti számnak használatával pozícióját.Set the position of the progress bar using a number between 0 and 100. Alapértelmezés szerint új Win32® folyamatjelző sáv 100 maximális számos rendelkeznek.By default, new Win32® progress bars have a maximum range of 100.

int GetPercentage(void)int GetPercentage(void)

Ez a módszer a folyamatjelző aktuális pozícióját adja vissza.This method returns the current position of the progress bar.

IRadioButton felületIRadioButton Interface

__interface IRadioButton : IControl  
{  
public:  
    void SetGroup(int firstId, int lastId);  
    void CheckRadio(int id);  
    BOOL IsButtonChecked(int id);  
    void EnableRadio(int id, BOOL enable);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a RadioButtonWrapper összetevő.This interface is implemented by the RadioButtonWrapper component. Ez az összetevő használatával példányának lekérése a GetControlWrapper segítő függvény típusú CONTROL_RADIO_BUTTON.You retrieve an instance of this component using the GetControlWrapper helper function with the type CONTROL_RADIO_BUTTON.

"void" SetGroup (int firstId, int lastId)void SetGroup(int firstId, int lastId)

Adja meg a burkoló a tartománnyal, választógombok, amely egy csoportot kell kezelni.Provide the wrapper with the range of radio buttons that should be treated as a group. Ez a metódus hívása előtt hívja CheckRadio.Call this method before you call CheckRadio.

"void" CheckRadio(int id)void CheckRadio(int id)

A megadott választógombot a kiválasztott választógombok a csoport egyetlen gombra kell beállítani.Set the specific radio button to be the single button in the group of radio buttons selected. Hívás SetGroup a metódus hívása előtt.Call SetGroup before calling this method.

LOGIKAI IsButtonChecked(int id)BOOL IsButtonChecked(int id)

Ez a módszer igaz értéket ad vissza, ha a rendszer jelenleg kiválasztott, hamis ellenkező esetben.This method returns TRUE if the radio button is currently selected, FALSE otherwise.

érvénytelenítése EnableRadio (int azonosítója, BOOL engedélyezése)void EnableRadio(int id, BOOL enable)

Ez a módszer lehetővé teszi, vagy letilthatja a megfelelő választógombra kattintva.This method enables or disables a radio button.

IStaticText felületIStaticText Interface

__interface IStaticText : IControl  
{  
    HRESULT SetText([in] LPCTSTR pText);  
    HRESULT GetText([out, retval] LPBSTR pText);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a StaticTextWrapper összetevő.This interface is implemented by the StaticTextWrapper component. Ez az összetevő használatával példányának lekérése a GetControlWrapper segítő függvény típusú CONTROL_STATIC_TEXT.You retrieve an instance of this component using the GetControlWrapper helper function with the type CONTROL_STATIC_TEXT.

HRESULT SetText([in] LPCTSTR pText)HRESULT SetText([in] LPCTSTR pText)

Állítsa be a szöveget a vezérlő.Set the text for the control.

HRESULT GetText([out, retval] LPBSTR pText)HRESULT GetText([out, retval] LPBSTR pText)

Ez a módszer a szöveget a vezérlő aktuális értékét adja vissza.This method returns the current value of the text for the control.

ITask felületITask Interface

__interface IControl : IUnknown  
{  
    HRESULT Init(IStringProperties *pProperties, ISettingsProperties *pTaskSettings);  
    HRESULT Execute(LPDWORD pReturnCode);  
};  

Ez az interfész valósítja meg, ha azt szeretné, hogy az összetevőt az előzetes lapon feladatként elérhető legyen, vagy ha szeretné használni a BackgroundTask összetevő használatával végezhetik el a munkahelyi háttér szálban.Implement this interface if you want your component to be available as a task in the preflight page or if you want to use the BackgroundTask component to perform work on a background thread.

Az alábbiakban összetevők, amelyek megvalósítják a ITask felület:Here are components that implement the ITask interface:

  • ID_ShellExecuteTask, L"Microsoft.Wizard.ShellExecuteTask"ID_ShellExecuteTask, L"Microsoft.Wizard.ShellExecuteTask"

  • ID_CopyFilesTask, L"Microsoft.Wizard.CopyFilesTask"ID_CopyFilesTask, L"Microsoft.Wizard.CopyFilesTask"

  • ID_ACPowerTask, L"Microsoft.OSDRefresh.ACPowerTask"ID_ACPowerTask, L"Microsoft.OSDRefresh.ACPowerTask"

  • ID_WiredNetworkTask, L"Microsoft.SharedPages.WiredNetworkTask"ID_WiredNetworkTask, L"Microsoft.SharedPages.WiredNetworkTask"

InitInit
HRESULT Init(IStringProperties *pProperties, ISettingsProperties *pTaskSettings)  

Egy feladatot az előzetes oldal az írás, ezt a metódust a feladat inicializálása hívjuk.If you are writing a task for the preflight page, call this method to initialize your task. A .config fájl tartalmazhat XML-t, előfordulhat, hogy kinéznie:The .config file contain XML that might look something like this:

<Task DisplayName="Check Windows Scripting Host" Type="Microsoft.Wizard.ShellExecuteTask">  
  <Setter Property="filename">%windir%\system32\cscript.exe</Setter>  
  <Setter Property="parameters">Preflight\OSDCheckWSH.vbs</Setter>  
  <Setter Property="BitmapFilename">images\WinScriptHost.bmp</Setter>  
  <ExitCodes>  
    <ExitCode State="Success" Type="0" Value="0" Text="" />  
    <ExitCode State="Error" Type="-1" Value="*" Text="Windows Scripting Host not installed." />  
  </ExitCodes>  
</Task>  

A pProperties paraméter három beállító értékek hozzáférést biztosít, mivel a pTaskSettings paraméter hozzáférést biztosít a feladat elem és gyermekei.The pProperties parameter provides access to the three setter values, whereas the pTaskSettings parameter provides access to the Task element and children. A legtöbb lépéseket csak szükséges adatokat olvasni az pProperties paraméter.Most tasks only need to read data from the pProperties parameter.

VégrehajtásExecute
HRESULT Execute(LPDWORD pReturnCode)  

Ez a feladat megvalósító kódot ismertetheti.Here is where you write the code that performs the task. Ez a metódus visszaadja-e S_OK Ha nincsenek hibák léptek fel, és képes megjeleníteni egy másik HRESULT Ha hiba történt a feladat futása közben.This method should return S_OK if there were no errors, and it can return another HRESULT if an error occurred while the task was running. Eltérő értékeket S_OK , hogy ez a módszer adja vissza, akár egyeztetve lesznek < hiba> elemeinek a < ExitCodes> szakasz használata a elővizsgálati lap.Values other than S_OK that this method returns are matched up to <Error> elements in the <ExitCodes> section if you are using the preflight page.

A pReturnCode paraméter frissítenie kell egy szám, amely a feladat állapotát jelenti.The pReturnCode parameter must be updated with a number that reports the state of the task. Ezek az értékek megfelel-e a preflights lapra < ExitCode> elemek.These values are matched by the preflights page to <ExitCode> elements.

ITreeView felületITreeView Interface

__interface ITreeView : IControl  
{  
    void EnableCheckboxes(void);  
    HRESULT CreateImageList(int width, int height, UINT flags);  
    int AddImage(HINSTANCE hInstance, int resourceId);  

    HTREEITEM AddItem(LPCTSTR text, HTREEITEM hParent = NULL);  
    void SetImage(HTREEITEM item, int image, int expandImage);  

    void Clear(void);  
    BOOL SetFirstVisible(HTREEITEM item);  
    BOOL SelectItem(HTREEITEM item);  
    void CheckItem(HTREEITEM item, UINT checkState);  
    HTREEITEM SelectedItem(void);  
    int SetItemHeight(SHORT height);  
    HRESULT EnableItem(HTREEITEM item, BOOL enable);  
    void Expand(HTREEITEM hItem, BOOL expand);  

    HTREEITEM GetChild(HTREEITEM hParent);  
    HTREEITEM GetParent(HTREEITEM hNode);  
    HTREEITEM GetNextItem(HTREEITEM hPrevious);  

    UINT IsChecked(HTREEITEM item);  
    BOOL IsEnabled(HTREEITEM item);  

    INT_PTR CommonControlEvent(WORD controlId, void* pInfo, BOOL *pCancel);  
    HRESULT SetEventHandler(ITreeViewEvent *pEventHandler);  

    void SetSelectedBackColor(COLORREF color);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a TreeViewWrapper összetevő.This interface is implemented by the TreeViewWrapper component. Ez az összetevő használatával példányának lekérése a GetControlWrapper segítő függvény típusú CONTROL_TREE_VIEW.You retrieve an instance of this component using the GetControlWrapper helper function with the type CONTROL_TREE_VIEW.

"void" EnableCheckboxes(void)void EnableCheckboxes(void)

Ezzel a módszerrel úgy, hogy bekapcsolja faszerkezetének vezérlője jelölőnégyzetek a TVS_CHECKBOXES stílusát.This method turns on check boxes in the tree view control by setting the TVS_CHECKBOXES style.

HRESULT CreateImageList(int width, int height, UINT flags)HRESULT CreateImageList(int width, int height, UINT flags)

Egy új képlistában hozzáadása faszerkezetének vezérlője.Add a new image list to the tree view control. A jelzők paramétert a hívása közben a ImageList_Create Win32 függvény.The flags parameter is passed in the call to the ImageList_Create Win32 function.

int AddImage(HINSTANCE hInstance, int resourceId)int AddImage(HINSTANCE hInstance, int resourceId)

A képlistában lemezképének hozzáadása egy erőforráshoz (resourceId) az a példány leíró modul hInstance.Add an image to the image list from a resource (resourceId) in the module with the instance handle hInstance.

HTREEITEM AddItem(LPCTSTR text, HTREEITEM hParent = NULL)HTREEITEM AddItem(LPCTSTR text, HTREEITEM hParent = NULL)

A csomópont hozzáadása a faszerkezetes nézetben.Add a node to the tree view. Az új csomópont megjelenik a felső szintű Ha hParent null értékű.The new node will be added at the top level if hParent is NULL. Ellenkező esetben adja meg a leírót a fölérendelt elemtől, ahová az új elem hozzáadva.Otherwise, provide the handle to the parent item where you want the new item added. Ez a módszer a leíró és az új elemet ad vissza.This method returns the handle to the new item.

"void" SetImage (HTREEITEM elem, kép int, int expandImage)void SetImage(HTREEITEM item, int image, int expandImage)

Állítsa be egy fa nézet elem használni kívánt lemezkép.Set the image to use for a tree view item. A rendhagyó és a bővített kép állíthatja be.You can set both the normal and the expanded image.

"void" Clear(void)void Clear(void)

Az összes elem eltávolítása a faszerkezetes nézetben.Remove all items from the tree view.

LOGIKAI SetFirstVisible(HTREEITEM item)BOOL SetFirstVisible(HTREEITEM item)

Győződjön meg arról, hogy a fa nézet elem láthatóvá nem válik.Ensure that the tree view item is visible. A fanézet görgetése, ha ez az elem láthatóvá szükséges.The tree view will scroll if required to make this item visible.

LOGIKAI SelectItem(HTREEITEM item)BOOL SelectItem(HTREEITEM item)

A jelenleg kijelölt elemek beállítása az Ön által biztosított elemre.Set the currently selected item to the item that you provide. Hívása SetFirstVisible ezután annak érdekében, hogy az újonnan kijelölt elem láthatóvá nem válik.You can call SetFirstVisible after this to ensure that the newly selected item is visible.

"void" CheckItem (HTREEITEM elem, UINT checkState)void CheckItem(HTREEITEM item, UINT checkState)

A metódus alapvetően állítja be a jelölőnégyzetet a faszerkezetes nézetben megjelenítendő kép.The method basically sets the image that will be shown for the check box in the tree view. Ezeket a lemezképeket külön vannak ImageList vezérlő, amely a fanézetben kezeli.These images are in a separate ImageList control that the tree view manages. Alapértelmezés szerint a képlistában három lemezképet tartalmaz, benne a 22. táblázat látható.By default, this image list has three images in it, shown in Table 22.

Tábla 22. CheckItem kép alapértelmezett érvénytelenítéseTable 22.void CheckItem Image List Default

checkStatecheckState LeírásDescription
00 ÜresBlank
11 Nincs bejelölveCleared
22 KijelöltSelected
HTREEITEM SelectedItem(void)HTREEITEM SelectedItem(void)

Ez a módszer a faszerkezetes nézetben kijelölt leírójának beolvasása.This method returns the handle of the tree view item currently selected.

int SetItemHeight (rövid magasság)int SetItemHeight(SHORT height)

Ez a módszer minden elem magassága képpontban faszerkezetének vezérlője azt állítja be.This method sets the height of all items in the tree view control in pixels. Az előző magassága képpontban adja vissza.It returns the previous height in pixels.

HRESULT EnableItem(HTREEITEM item, BOOL enable)HRESULT EnableItem(HTREEITEM item, BOOL enable)

Ez a módszer lehetővé teszi, vagy letilthatja a fában csak egy elemet.This method enables or disables a single item in the tree. Gyermekek elemet letiltása a gyermekek nem letiltja.Disabling an item with children will not disable the children.

Kibontás érvénytelenítése (HTREEITEM: hItem, BOOL expand)void Expand(HTREEITEM hItem, BOOL expand)

Ez a módszer bővíti, vagy a fa csomópontja összecsukó.This method expands or collapses a node in the tree.

HTREEITEM GetChild(HTREEITEM hParent)HTREEITEM GetChild(HTREEITEM hParent)

Ez a módszer egy fa eleme vagy NULL első gyermekét adja vissza, ha nincsenek gyermekei.This method returns the first child of a tree view item or NULL if there are no children.

HTREEITEM GetParent(HTREEITEM hNode)HTREEITEM GetParent(HTREEITEM hNode)

Ez a módszer esetén fölérendelt leíróját a fanézetben vagy NULL értéket ad vissza, ha a legfelső szintjén van a csomópont.This method returns the handle of the parent for a node in the tree view or NULL if the node is at the top level.

HTREEITEM GetNextItem(HTREEITEM hPrevious)HTREEITEM GetNextItem(HTREEITEM hPrevious)

Hívása a metódushoz leírót, amely GetChild a csomópont gyermekeinek iterációt beolvasása.You can call this method with a handle that GetChild returns to iterate through all the children of a node. Ez a módszer a következő testvér tartalmazó közösen használja az ugyanazon szülő fában adja vissza.This method returns the next sibling in the tree that shares the same parent.

UINT IsChecked(HTREEITEM item)UINT IsChecked(HTREEITEM item)

Ez a metódus visszaadja 0 Ha nincs bejelölve a facsomópont nézet és 1 esetén.This method returns 0 if the tree view node is not selected and 1 if it is.

LOGIKAI IsEnabled(HTREEITEM item)BOOL IsEnabled(HTREEITEM item)

Ez a módszer igaz értéket ad vissza a facsomópont nézet engedélyezése esetén hamis más módon.This method returns TRUE if the tree view node is enabled, FALSE otherwise.

INT_PTR CommonControlEvent(WORD controlId, void* pInfo, BOOL *pCancel)INT_PTR CommonControlEvent(WORD controlId, void* pInfo, BOOL *pCancel)

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

HRESULT SetEventHandler(ITreeViewEvent *pEventHandler)HRESULT SetEventHandler(ITreeViewEvent *pEventHandler)

Ez a metódus meghívható, ha szeretne értesítést kapni, amikor a kijelölt elem módosításokat, vagy a felhasználó megváltoztatja egy fa nézet elem állapotának.Call this method if you want to receive notification when the selected item changes or the user changes the check state of a tree view item. Meg kell valósítani a ITreeViewEvent az összetevő a visszahívások fogadására.You must implement the ITreeViewEvent in your component to receive these callbacks.

"void" SetSelectedBackColor(COLORREF color)void SetSelectedBackColor(COLORREF color)

Állítsa be a kijelölt elemhez használt háttérszín.Set the background color used for the selected item.

IWmiIteration felületIWmiIteration Interface

__interface IWmiIterator : IUnknown  
{  
    HRESULT Next(void);  
    HRESULT GetProperty(LPCTSTR propertyName, [out] LPVARIANT pValue);  
};  
ÁttekintésOverview

Általában használhat ez az interfész mentén IWmiRepository, ha a WMI-hívások használata.You typically use this interface, along with IWmiRepository, when working with WMI calls. A IWmiIteration felület lehetővé teszi az értékek, amelyek a lekérdezés visszaadja az iterációt.The IWmiIteration interface allows you to iterate through the values that a query returns.

HRESULT Next(void)HRESULT Next(void)

Helyezze át a következő elem a lekérdezés eredményében 23. táblázat ismertetett módon.Move to the next item in the query results, as shown in Table 23.

23. táblázat.Table 23. HRESULT Next(void) lekérdezés beolvasásaHRESULT Next(void) Query Returns

HRRESULTHRRESULT LeírásDescription
S_OKS_OK Helyezi át a következő eredmény; használhat GetProperty eredményező tulajdonságainak beolvasása.Moved to the next result; you can use GetProperty to retrieve properties of that result.
S_FALSES_FALSE Nincsenek további elemek a listában.There are no more items in the list.
E_NOT_SETE_NOT_SET Lekérdezés eredménytelenThere are no query results
HRESULT GetProperty(LPCTSTR propertyName, [out] LPVARIANT pValue)HRESULT GetProperty(LPCTSTR propertyName, [out] LPVARIANT pValue)

Ez a módszer egy tulajdonság értékének 24. táblázat és 25. táblázat az aktuális eredményrekord lekérdezi.This method retrieves the value of a property from the current result record, as shown in Table 24 and Table 25.

24. táblázat.Table 24. HRESULT GetPropertyHRESULT GetProperty

ParaméterParameter LeírásDescription
propertyNamepropertyName A lekérdezni kívánt tulajdonság neveName of the property you want to retrieve
pValuepValue A visszatérési tulajdonság értéket tartalmazó VARIANT struktúrára pontokPoints to a VARIANT structure that on return contains the property value

25. táblázat.Table 25. HRESULT GetProperty eredményeHRESULT GetProperty Result

HRESULTHRESULT LeírásDescription
S_OKS_OK A beolvasott tulajdonság értéke.Property value was retrieved.
WBEM_E_NOT_FOUNDWBEM_E_NOT_FOUND Nincs nevű tulajdonság.There is no property with the name.
E_NOT_VALID_STATEE_NOT_VALID_STATE Nincs jelenlegi rekord.There is no current record.

Megjegyzés

A GetProperty metódus más WMI hibakódok azok 25. táblázat adhat vissza.The GetProperty method can return other WMI error codes other than those listed in Table 25. A felsorolt értékei a visszaadott közös eredmények.The values listed are the common results that are returned.

IWmiRepository felületIWmiRepository Interface

__interface IWmiRepository : IUnknown  
{  
    HRESULT SetNamespace(LPCWSTR namespaceName);  
    HRESULT ExecQuery(LPCWSTR query, [out] IWmiIterator **ppIterator);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a WmiRepository összetevő (ID_WmiRepository).This interface is implemented by the WmiRepository component (ID_WmiRepository).

HRESULT SetNamespace(LPCWSTR namespaceName)HRESULT SetNamespace(LPCWSTR namespaceName)

Ezt a módszert állítja be a WMI-névteret a lekérdezéshez használt.This method sets the WMI namespace that will be used for the query. Ez a metódus hívása előtt hívja ExecQuery.Call this method before you call ExecQuery. Ez a metódus nem hívható meg, ha a névtér lesz root\cimv2.If you do not call this method, the namespace will be root\cimv2. Ez a metódus mindig adja vissza S_OK.This method always returns S_OK.

HRESULT ExecQuery(LPCWSTR query, [out] IWmiIterator **ppIterator)HRESULT ExecQuery(LPCWSTR query, [out] IWmiIterator **ppIterator)

A WMI-névteret, állítsa be a következőt hívja elleni lekérdezés végrehajtása SetNamespace, ahogy az táblázat 26 és tábla 27.Execute a query against the WMI namespace set with a call to SetNamespace, as shown in Table 26 and Table 27.

Tábla 26.Table 26. HRESULT ExecQueryHRESULT ExecQuery

ParaméterParameter LeírásDescription
lekérdezésQuery A karakterláncot a WMI-lekérdezést végrehajtani kívántThe string for the WMI query you want to execute
ppIteratorppIterator Mutató átadása egy illesztőfelület-mutató, amely visszaállítja az illesztőfelület szerepelni fognak, adjon hozzáférést a lekérdezés eredményeiPass a pointer to an interface pointer, which on return will be filled in with an interface, giving you access to the query results

Tábla 27.Table 27. HRESULT lekérdezés eredményeHRESULT Query Result

HRESULTHRESULT LeírásDescription
S_OKS_OK A lekérdezés sikeresen befejeződöttQuery succeeded
OtherOther Ha a lekérdezés sikertelen volt, akkor adja vissza egy WMI HRESULTIf the query did not succeed, returns a WMI HRESULT

IFormController felületIFormController Interface

__interface IFormController : IUnknown  
{  
    Init(IWizardPageView *pView, IWizardPageContainer *pContainer);  
    SetPageInfo(ISettingsProperties *pPageInfo);  

    Validate(void);  

    AddToGroup(int groupControlId, int controlId);  
    UpdateCheckGroup(int groupControlId);  
    AddValidator(int controlId, IValidator *pValidator, IControl *pCOntrol = 0);  

    AddValidator(int controlId, LPCWSTR validatorId, LPCWSTR message, IValidator **ppValidator = nullptr);  
    DisableValidation(int controlId, BOOL disable);  

    AddField(LPCWSTR fieldName, int controlId, BOOL suppressLog, DialogControlTypes type);  
    AddRadioGroup(LPCWSTR groupName, int radioControlId);  
    EnableRadioGroup(LPCWSTR groupName, BOOL enable);  
    InitFields(IFieldCallback *pFieldCallback = nullptr);  
    SaveFields(IFieldCallback *pFieldCallback = nullptr);  
    BOOL IsFieldDisabled(int controlId);  

    InitSection(LPCWSTR key, LPCWSTR sectionCaption);  
    AddSummaryItem(LPCWSTR first, LPCWSTR second);  
    SuppressLogValue(LPCWSTR tsVariableName);  
    SaveText(int controlId, LPCWSTR tsVariableName, LPCWSTR summaryCaption);  
    LoadText(int controlId, LPCWSTR tsVariableName);  

    void ControlEvent(WORD eventId, WORD controlId);  
    BOOL IsValid(void);  
 };  
ÁttekintésOverview

UDI varázsló minden lapján rendelkezik a saját képernyőn tartományvezérlőre, amely megvalósítja ezt a felületet.Each page in the UDI Wizard has its own form controller that implements this interface. Ez a vezérlő segítségével csatlakozzon a lap vezérlői a mezőadatok a .config kiterjesztésű XML-fájlban.You use this controller to connect the field data in the .config XML file to the controls on your page. Az űrlap vezérlő majd kezeli számos részletet meg.The form controller then handles many of the details for you.

Az űrlap beállításaSetting up the Form

Általában, állítsa be az űrlapot vezérlő a lapon OnWindowCreated metódust.Generally, set up the form controller in your page’s OnWindowCreated method. Ezért általában ez magában foglalja a tábla 28 látható metódusok meghívása.Doing so usually involves calling the methods shown in Table 28.

Tábla 28.Table 28. OnWindowCreated módszerOnWindowCreated Method

MódszerMethod LeírásDescription
InitInit Inicializálja az űrlap-vezérlőInitializes the form controller
AddFieldAddField A .config kiterjesztésű XML-fájlban, amely egy karakterlánc neve mező és a lap párbeszédpanelt, amely egy azonosító vezérlők közötti kapcsolatProvides a connection between a field in the .config XML file that is a string name and a control in your page’s dialog box that is an ID
AddRadioGroupAddRadioGroup A csoport és a párbeszédpanel vezérlő választógomb kapcsolódáshoz használtUsed to connect a radio button to both a group and a control in your dialog box
AddToGroupAddToGroup Lehetővé teszi a "" gyermekvezérlők engedélyezve van vagy le van tiltva, valamint a szülő vagy alapján mely választógomb van kiválasztva.Allows you “child” controls that are enabled or disabled along with their parent or based on which radio button is selected
InitFieldsInitFields Minden hívott után hívja a hozzáadása módszerek az űrlap beállításaCall after you have called all the Add methods to set up the form
EllenőrzéseValidate A kezdeti érvényesítésénekPerforms the initial validation
Űrlap események feldolgozását.Processing Form Events

Adja hozzá a következő hívást a OnControlEvent módszert:Add the following call to your OnControlEvent method:

Form()->ControlEvent(eventId, controlId);  

A hívás továbbítja az események be az űrlapot vezérlő így képes a képernyő-események.This call passes events on to the form controller so it can process form-related events.

Űrlap az adatok mentéseSave Form Data

Az a OnNextClicked módszer esetén hívható meg a tábla 29 látható űrlap metódus.In the OnNextClicked method, call the form methods shown in Table 29.

Tábla 29.Table 29. OnNextClicked módszerOnNextClicked Method

MódszerMethod LeírásDescription
InitSectionInitSection A következő szakasz jelenik meg a nevét a összegzés oldal lapProvides the name of the section that will be shown on the Summary page for this page
SaveFieldsSaveFields Feladatütemezési változók és a mezőértékek mentése a összegzés lapSave field values to task sequence variables and to the Summary page
InitInit
HRESULT Init(IWizardPageView *pView, IWizardPageContainer *pContainer)  

Általában ez metódust hívja a oldal kezdetét közelében OnWindowCreated metódust.You usually call this method near the start of your page’s OnWindowCreated method. A parancs kell kinéznie:The command should look something like this:

Form()->Init(View(), Container());  
SetPageInfoSetPageInfo
HRESULT SetPageInfo(ISettingsProperties *pPageInfo)  

Ez a metódus belső nevezik, és nem hívja a azt saját maga.This method is called internally, and you should not call it yourself. A lap XML űrlap vezérlőhöz biztosít.It provides the page’s XML to the form controller.

EllenőrzéseValidate
HRESULT Validate(void)  

Ez a módszer minden az érvényesség-ellenőrzők vezérlők csatolva hajtja végre.This method executes all the validators attached to controls. Ha egy érvényesítő nem felel meg, a képernyő vezérlő figyelmeztető üzenetet, és letiltja a következő gombra, majd az érvényesség-ellenőrzők feldolgozása leáll.If a validator does not pass, the form controller displays a warning message and disables the Next button, then stops processing validators. Általában csak akkor kell Ez a metódus meghívható végén a OnWindowCreated metódus; mindig vissza S_OK.Typically, you only need to call this method at the end of your OnWindowCreated method; it always returns S_OK.

AddToGroupAddToGroup
AddToGroup(int groupControlId, int controlId)  

Ez a metódus "gyermekeként" jelölőnégyzet vagy választógombot, a vezérlő ad hozzá, ahogy az táblázat 30.This method adds a control as a “child” of a check box or radio button, as shown in Table 30. Ilyen gyermekvezérlők letiltásra kerül, ha a szülő vezérlő nincs bejelölve.All such child controls will be disabled when the parent control is not selected. A metódus mindig visszaadja S_OK.The method always returns S_OK.

Tábla 30.Table 30. AddToGroupAddToGroup

ParaméterParameter LeírásDescription
groupControlIdgroupControlId A jelölőnégyzet vagy választógombot, amely szabályozza a gyermekvezérlő engedélyezése állapotának azonosítójaThe ID of the check box or radio button that will control the enable state of the child control
ControlldControlld A gyermek hozzáadni kívánt vezérlő azonosítójaThe ID of the control that you want to add as a child
UpdateCheckGroupUpdateCheckGroup
HRESULT UpdateCheckGroup(int groupControlId)  

Ez a módszer engedélyezni a frissítéseket, vagy tiltsa le a szülő vezérlő állapota alapján a csoporthoz tartozó gyermekvezérlők állapotának.This method updates the enable or disable status of a group’s child controls based on the status of the parent control. Általában nem kell saját kezűleg, ez a metódus meghívható, mert az űrlapot vezérlő hívja meg.Generally, you do not need to call this method yourself, because the form controller calls it for you.

AddValidatorAddValidator
HRESULT AddValidator(int controlId, IValidator *pValidator, IControl *pControl = 0)  

Ez a metódus meghívható csak akkor, ha egy érvényesítő szeretne létrehozni az XML-kódban ahelyett, hogy rendelkezik.Call this method only if you have a validator you want to create in code instead of with the XML. Ez a metódus mindig adja vissza S_OK.This method always returns S_OK.

AddValidatorAddValidator
HRESULT AddValidator(int controlId, LPCWSTR validatorId, LPCWSTR message, IValidator **ppValidator = nullptr)  

Ez a metódus meghívható csak akkor, ha egy érvényesítő szeretne létrehozni az XML-kódban ahelyett, hogy rendelkezik.Call this method only if you have a validator you want to create in code instead of with the XML.

DisableValidationDisableValidation
HRESULT DisableValidation(int controlId, BOOL disable)  

Ez a metódus explicit módon letiltja az érvényesítő a vezérlő vagy állítsa vissza a normál ellenőrzése, hívható, ahogy az táblázat 31.Call this method to either explicitly disable validator for a control or restore normal validation, as shown in Table 31. Ez a módszer akkor hasznos, például ha szabály engedélyezését vagy letiltását a vezérlők űrlapon érvényesítéssel nem ismertetett, és le kell tiltania a vezérlő érvényesítése.This method is useful, for example, when you have enable/disable rules for controls that are not covered with form validation and you need to disable validation for a control. Ez azt jelenti, hogy volna nem általában ez a metódus meghívható.In other words, you would not normally call this method. Ez a metódus mindig adja vissza S_OK.This method always returns S_OK.

Tábla 31.Table 31. HRESULT DisableValidationHRESULT DisableValidation

ParaméterParameter LeírásDescription
controlIdcontrolId A vezérlőt, legyen érvényesítés letiltása és engedélyezéseThe control for which you want to enable or disable validation
LetiltásDisable Ha értékre van állítva letiltása érvényesítési az IGAZ értéket, és hamis visszaállítása a szokásos érvényesítéseSet to TRUE to disable validation and to FALSE to restore normal validation
AddFieldAddField
HRESULT AddField(LPCWSTR fieldName, int controlId, BOOL suppressLog, DialogControlTypes type)  

Között a neve, a vezérlő hozzárendelés hozzáadása egy mező elem a .config kiterjesztésű XML-fájl és a vezérlő azonosítója a lapon párbeszédpanelen, ahogy az táblázat 32.Add a control mapping between the name in a Field element of the .config XML file and the control ID in your page’s dialog box, as shown in Table 32. Ez a metódus hívása előtt hívja meg InitFields, mert InitFields használja ezeket az adatokat.You must call this method before the call to InitFields, because InitFields uses this information. Ez a metódus mindig adja vissza S_OK.This method always returns S_OK.

Tábla 32.Table 32. HRESULT AddFieldHRESULT AddField

ParaméterParameter LeírásDescription
FieldnameFieldname A mező nevét a lap XML megjelenőName of the field as it appears in your page’s XML
controlIdcontrolId A lap párbeszédpanel bezárásához sablonban vezérlő azonosítójaThe ID of the control in your page’s dialog box template
suppressLogsuppressLog Ha nem szeretné, hogy ez a mező ír a naplófájlba; értékeinek igaz értékre kell beállítani mindig ezt a paramétert TRUE értékűre jelszót vagy PIN-kód mezőkSet to TRUE if you do not want the values from this field written to the log file; always set this parameter to TRUE for password or PIN fields
TípusType Milyen típusú vezérléssel, pedig a következők egyikét:The type of control, which is one of the following:

- CONTROL_STATIC_TEXT- CONTROL_STATIC_TEXT
- CONTROL_COMBO_BOX- CONTROL_COMBO_BOX
- CONTROL_LIST_VIEW- CONTROL_LIST_VIEW
- CONTROL_PROGRESS_BAR- CONTROL_PROGRESS_BAR
- CONTROL_GENERIC- CONTROL_GENERIC
- CONTROL_RADIO_BUTTON- CONTROL_RADIO_BUTTON
- CONTROL_CHECK_BOX- CONTROL_CHECK_BOX
- CONTROL_TREE_VIEW- CONTROL_TREE_VIEW
AddRadioGroupAddRadioGroup
HRESULT AddRadioGroup(LPCWSTR groupName, int radioControlId)  

Ez a módszer látható módon tábla 33 hozzáadása egy elnevezett választógomb-csoportban, a vezérlő.This method adds a control to a named radio button group, as shown in Table 33. Ez előtt meg kell hívnia a InitFields metódus, mert ez a módszer attribútumok használja a RadioGroup elem a csoportban lévő összes rádió gomb vezérlők beállításait.You must call this before the InitFields method, because that method uses attributes on the RadioGroup element to control settings for all the radio button controls in the group. Rádió csoportok zárolhatók, például, hogy a választógombok le vannak tiltva, de gyermekvezérlők engedélyezve vannak, vagy le van tiltva, melyik a megfelelő választógombra kattintva alapján van kiválasztva.Radio groups can be locked, for example, so that all the radio buttons are disabled, but child controls are enabled or disabled based only on which radio button is selected. Ez a metódus mindig adja vissza S_OK.This method always returns S_OK.

Tábla 33.Table 33. HRESULT AddRadioGroupHRESULT AddRadioGroup

ParaméterParameter LeírásDescription
groupNamegroupName Választógombok csoport ezen az oldalon meghatározó karakterláncA string that defines a group of radio buttons on this page
radioControlIdradioControlId A csoporthoz hozzáadni kívánt egyetlen választógomb azonosítójaThe ID of a single radio button to add to this group
EnableRadioGroupEnableRadioGroup
HRESULT EnableRadioGroup(LPCWSTR groupName, BOOL enable)  

Ez a módszer lehetővé teszi egy teljes választógomb-csoportban letiltása és engedélyezése.This method allows you to enable or disable an entire radio button group. A választógomb-csoportban letiltása az összes csoport szabályozza a választógomb ezeket a hozzáadott választógombok, valamint bármely gyermekek AddToGroup.Disabling a radio group disables all the radio button controls in the group as well as any children of those radio buttons that have been added with AddToGroup. Tekintse meg a tábla 34 és tábla 35.See Table 34 and Table 35.

Tábla 34.Table 34. EnableRadioGroupEnableRadioGroup

ParaméterParameter LeírásDescription
groupNamegroupName Neve a választógomb-csoportban hívása már definiált AddRadioGroupName of a radio button group that you defined already with a call to AddRadioGroup
EngedélyezésEnable Ahhoz, hogy a választógomb-csoportban pedig hamis tiltsa le a csoport igaz értékre kell beállítaniSet to TRUE to enable the radio button group and FALSE to disable the group

Tábla 35.Table 35. HRESULT EnableRadioGroupHRESULT EnableRadioGroup

HRESULTHRESULT LeírásDescription
S_OKS_OK Engedélyezett vagy letiltott csoportotGroup enabled or disabled
E_INVALIDARGE_INVALIDARG A megadott néven nincs választógomb-csoportban vanThere is no radio button group with the name you provided
InitFieldsInitFields
HRESULT InitFields(IFieldCallback *pFieldCallback = nullptr)  

A metódus hívása előtt hívja AddField az egyes mezők a XML szabályozó.Before calling this method, call AddField for each field that the XML can control. Ez a metódus mindig adja vissza S_OK.This method always returns S_OK.

A pFieldCallback paraméter nem kötelező.The pFieldCallback parameter is optional. Azt adja meg, ha meghívja-e az űrlapot vezérlő SetFieldDefault vezérlők, amelyek nem vagy CONTROL_STATIC_TEXT vagy CONTROL_CHECK_BOX.If you provide it, the form controller calls SetFieldDefault for controls that are not either CONTROL_STATIC_TEXT or CONTROL_CHECK_BOX. Ez a viselkedés lehetővé teszi egy alapértelmezett érték lekérése az XML-fájl, és állítsa be a vezérlő saját magának.This behavior allows you to retrieve a default value from the XML and set it in the control yourself.

SaveFieldsSaveFields
HRESULT SaveFields(IFieldCallback *pFieldCallback = nullptr)  

Ez a módszer feladatütemezési változók és az összefoglalókat, amely megjelenik a mezőértékek menti a összefoglaló lap.This method saves field values to task sequence variables and to the summary data that will be shown on the Summary page. A mutató biztosító pFieldCallback lehetővé teszi a vezérlők, amelyek nem támogatják az értékek mentése kezelésére CONTROL_STATIC_TEXT.Providing a pointer in pFieldCallback allows you to handle saving values for controls that do not support CONTROL_STATIC_TEXT.

IsFieldDisabledIsFieldDisabled
BOOL IsFieldDisabled(int controlId)  

Ez a módszer lehetővé teszi a segítségével meghatározhatja, hogy egy mező le van tiltva a XML-kódban.This method allows you to determine whether a field has been disabled in the XML.

InitSectionInitSection
HRESULT InitSection(LPCWSTR key, LPCWSTR sectionCaption)  

Ez a módszer inicializálja az összefoglalókat, amely jelenik meg a összefoglaló lapon, ahogy az táblázat 36.This method initializes the summary data that will be shown on the Summary page, as shown in Table 36. Ez a metódus meghívható a OnNextClicked metódus hívása előtt SaveFields.Call this method in your OnNextClicked method before calling SaveFields. Ez a metódus mindig adja vissza S_OK.This method always returns S_OK.

Tábla 36.Table 36. HRESULT InitSectionHRESULT InitSection

ParaméterParameter LeírásDescription
KeyKey Ez a paraméter és a lap egyedinek kell lennie.This parameter should be unique to your page. Győződjön meg arról, hogy minden lapon van-e saját összefoglaló információkat szolgál.It is used to ensure that each page has its own summary information.
sectionCaptionsectionCaption A fejléc jeleníthető meg. a összefoglaló lap ezen a lapon összefoglaló információt.The header that will be shown on the Summary page for this page’s summary information. Általában akkor használják DisplayName() Ez a paraméter értéke.Typically, you use DisplayName() as the value for this parameter.
AddSummaryItemAddSummaryItem
HRESULT AddSummaryItem(LPCWSTR first, LPCWSTR second)  

Ez a módszer lehetővé teszi az összegző elem a összefoglaló lap above and beyond beállítása van az XML-elemeket.This method allows you to add summary items to the Summary page above and beyond those items set with the XML. Tekintse meg a tábla 37.See Table 37.

Tábla 37.Table 37. HRESULT AddSummaryItemHRESULT AddSummaryItem

ParaméterParameter LeírásDescription
elsőFirst Az összegző elem, a bal oldalon megjelenő feliratThe caption for the summary item, which is shown on the left side
SecondSecond Az érték, amely jobb oldalán megjelenikThe value that will be shown on the right side
SuppressLogValueSuppressLogValue
HRESULT SuppressLogValue(LPCWSTR tsVariableName)  

Ez a metódus meghívható a feladatütemezés változók, amelynek meg szeretné akadályozni a érték íródik a naplófájlba írást.Call this method for task-sequence variables for which you do not want the values to be written to the log file. Ez a metódus meghívható feladathoz, amely tárolja a jelszavakat, PIN-kódok és egyéb bizalmas értékek, a felhasználó adja meg a feladatütemezési változók.Call this method for task sequence variables that store passwords, PINs, or other sensitive values a user might enter.

SaveTextSaveText
HRESULT SaveText(int controlId, LPCWSTR tsVariableName, LPCWSTR summaryCaption)  

Ez a módszer az érték a szöveges vezérlők feladatütemezési változót, mind az összefoglaló szakasz menti.This method saves the value of a text control to both a task sequence variable and the summary section. Általában nem kell a metódus meghívásához, saját magának, mert az űrlapot vezérlő elvégzi ezt a beállítást, minden mezőbe.Typically, you will not need to call this method yourself, because the form controller does this for all fields. Tekintse meg a tábla 38.See Table 38.

Tábla 38.Table 38. HRESULT SaveTextHRESULT SaveText

ParaméterParameter LeírásDescription
controlIdcontrolId A szövegmezőben, amely tartalmazza a menteni kívánt érték (vagy bármely más adhat vissza szöveges vezérlőelem) azonosítójaThe ID of the text box that contains the value you want to save (or any other control that can return text)
tsVariableNametsVariableName A módosítani kívánt feladatütemezési változó neveName of the task sequence variable that you want to modify
summaryCaptionsummaryCaption A felirat a összegzés ehhez az értékhez lapThe caption on the Summary page for this value
LoadTextLoadText
HRESULT LoadText(int controlId, LPCWSTR tsVariableName)  

Ez a módszer beolvassa a feladatütemezési változó értékét, és ezt az értéket állítja be a szövegmezőben.This method reads the value of a task sequence variable and sets the text box to this value.

ControlEventControlEvent
void ControlEvent(WORD eventId, WORD controlId)  

Ez a metódus hívható meg a OnControlEvent győződjön meg arról, hogy az űrlap tartományvezérlő képes-e a vezérlő események, amelyek ehhez a megfelelő működéshez szükséges metódust.Call this method on your OnControlEvent method to ensure that the form controller can process control events, which it needs to do to function correctly. Adja meg ezt a módszert értékei átadott ugyanazokat az értékeket a OnControlEvent metódust.The values you pass to this method are the same values passed to the OnControlEvent method.

IsValidIsValid
BOOL IsValid(void)  

Ez a módszer az űrlap legutóbbi ellenőrzési állapota adja vissza.This method returns the status of the most recent validation of the form. Ha a vezérlő érvényesség-ellenőrzők bármelyikét hibát jelzett, ez a módszer hamis értéket ad vissza.If any of the control validators reported an error, this method returns FALSE. Ez azt jelenti az IGAZ értéket ad vissza csak akkor, ha a lapon az összes vezérlő érvényesek.In other words, it returns TRUE only if all the controls on the page are valid.

IValidator felületIValidator Interface

__interface IValidator : IUnknown  
{  
    HRESULT Init(IControl *pControl, LPCTSTR message);  
    HRESULT Init(IControl *pControl, IWizardPageContainer *pContainer, IStringProperties *pProperties);  
    BOOL, IsValid(LPBSTR pMessage);  
    HRESULT SetProperty(int propertyId, LPVARIANT pValue);  
    HRESULT SetProperty(int propertyId, IUnknown *pUnknown);  
    HRESULT SetProperty)(int propertyId, LPCTSTR pValue);  
};  
ÁttekintésOverview

Érvényesség-ellenőrzők összetevők, amelyek egy egyetlen vezérlőelemet azt is ellenőrzi.Validators are components that can validate a single control on your page. Egy érvényesítő végrehajtásához legkönnyebben abba, hogy a alosztálya a BaseValidator osztályt, amelyet a BaseValidator.h fejlécfájlt.The easiest way to implement a validator is to make it a subclass of the BaseValidator class, which is defined in the BaseValidator.h header file.

HRESULT Init(IControl *pControl, LPCTSTR message)HRESULT Init(IControl *pControl, LPCTSTR message)

Ha létrehoz egy érvényesítési kódot, hívása az érvényesítő inicializálása ezt a metódust.If you create a validator in code, you can call this method to initialize the validator. Tekintse meg a tábla 39.See Table 39.

Tábla 39.Table 39. HRESULT InitHRESULT Init

ParaméterParameter LeírásDescription
pControlpControl Az érvényesítő ellenőrizni kell a vezérlőThe control that your validator must validate
ÜzenetMessage Milyen üzenet jelenjen meg az oldalon, ha a vezérlő érvénytelen.The message to display on the page if the control is not valid
HRESULT Init(IControl *pControl, IWizardPageContainer *pContainer, IStringProperties *pProperties)HRESULT Init(IControl *pControl, IWizardPageContainer *pContainer, IStringProperties *pProperties)

Az űrlap vezérlő meghívja ezt a metódust a lap XML-alapú nevéhez érvényesítők inicializálni.The form controller calls this method to initialize validators that it creates based on the page’s XML. Tekintse meg a tábla 40.See Table 40.

Tábla 40.Table 40. HRESULT Init metódusHRESULT Init Method

ParaméterParameter LeírásDescription
pControlpControl Az érvényesítő ellenőrizni kell a vezérlőThe control that your validator must validate
pContainerpContainer Esetében az érvényesítő hozzá kell férnie a naplózó, vagy létre kell hoznia egyéb összetevőkIn case your validator needs access to the logger or needs to create other components
pPropertiespProperties (A setter elemek) tulajdonságainak hozzáférést biztosít az érvényesítőProvides access to the properties (setter elements) for your validator
Logikai érték, IsValid (LPBSTR pMessage)BOOL, IsValid(LPBSTR pMessage)

Ez a metódus eredménye IGAZ, ha a vezérlő érvényes, és hamis értéket, ha a vezérlő érvénytelen.This method returns TRUE if the control is valid or FALSE if the control is invalid. A visszatérési pMessage ki kell tölteni be egy új BSTR , amely tartalmazza, hogy milyen üzenet jelenjen meg, ha a vezérlő nem érvényes.On return, pMessage should be filled in with a new BSTR that contains the message to display when the control is not valid.

HRESULT SetProperty(int propertyId, LPVARIANT pValue)HRESULT SetProperty(int propertyId, LPVARIANT pValue)

Ez a módszer is létrehozható, ha a plusz értékeket, amelyek nem szerepelnek az XML-fájl szükséges.You can implement this method if you need extra values that are not provided in the XML.

HRESULT SetProperty(int propertyId, IUnknown *pUnknown)HRESULT SetProperty(int propertyId, IUnknown *pUnknown)

Ez a módszer is létrehozható, ha a plusz értékeket, amelyek nem szerepelnek az XML-fájl szükséges.You can implement this method if you need extra values that are not provided in the XML.

HRESULT SetProperty) (int propertyId, LPCTSTR pValue)HRESULT SetProperty)(int propertyId, LPCTSTR pValue)

Ez a módszer is létrehozható, ha a plusz értékeket, amelyek nem szerepelnek az XML-fájl szükséges.You can implement this method if you need extra values that are not provided in the XML.

IRegEx felületIRegEx Interface

__interface IRegEx : IUnknown  
{  
    BOOL MatchesRegex(LPCTSTR input, LPCTSTR regex);  
    HRESULT GetMatch(size_t index, LPBSTR pValue);  
};  

Ez a módszer megvalósítja a ID_Regex (IRegex.h) összetevő és támogatást nyújt a reguláris kifejezés feldolgozása.This method is implemented by the ID_Regex component (IRegex.h) and provides support for regular expression processing.

LOGIKAI MatchesRegex(LPCTSTR input, LPCTSTR regex)BOOL MatchesRegex(LPCTSTR input, LPCTSTR regex)

Ez a módszer a bemeneti szöveg fut a reguláris kifejezés.This method runs the regular expression against the input text. A C++ szabványos függvénytár használ regex_match működnek, mint el a valódi munkát.It uses the C++ standard library’s regex_match function to do the actual work. A metódus igaz értéket ad vissza, ha talált egyezést, hamis ellenkező esetben.The method returns TRUE if there were matches, FALSE otherwise.

HRESULT GetMatch(size_t index, LPBSTR pValue)HRESULT GetMatch(size_t index, LPBSTR pValue)

Ez a módszer lehetővé teszi a legújabb egyezések MatchesRegex hívható meg.This method allows you to retrieve the matches from the most recent MatchesRegex call. Nincs az ezzel a módszerrel feldolgozási hiba, és vagy visszatérési S_OK vagy kivételt jelez.Note that there is no error processing in this method, and it either returns S_OK or throws an exception.

ISummaryInfo felületISummaryInfo Interface

__interface ISummaryInfo : IUnknown  
{  
    size_t Count(void);  
    HRESULT Clear(void);  
    HRESULT AddInfo(LPCTSTR pFirst, LPCTSTR pSecond);  
    HRESULT GetInfo(size_t index, LPBSTR pFirst, LPBSTR pSecond);  
    HRESULT GetCaption(LPBSTR pCaption);  
    HRESULT SetCaption(LPCTSTR caption);  
};  

Nem ez az interfész közvetlenül használni kell.You should not need to use this interface directly. Ehelyett használjon IFormController.Instead, use IFormController.

ISummaryBagISummaryBag

__interface ISummaryBag : IUnknown  
{  
    size_t Count(void);  
    HRESULT GetInfoByIndex(size_t index, [out] ISummaryInfo **ppSummary);  
    HRESULT GetInfoByKey(LPCTSTR key, [out] ISummaryInfo **ppSummary);  
};  

Nem ez az interfész közvetlenül használni kell.You should not need to use this interface directly. Ehelyett használjon IFormController.Instead, use IFormController.

ITSVariableBag felületITSVariableBag Interface

__interface ITSVariableBag : IUnknown  
{  
    void GetValue([in] LPCTSTR variableName, [out] LPBSTR pValue);  
    void SetValue([in] LPCTSTR variableName, [in] LPCTSTR pValue);  
    void Clear(void);  
    HRESULT Remove([in] LPCTSTR variableName);  
    HRESULT SuppressLogValue([in] LPCTSTR variableName);  
    void Save(void);  
};  

Ez az interfész feladatütemezési változók hozzáférést biztosít.This interface provides access to task sequence variables. Ez az interfész a oldal használatával végezheti el TSVariables() metódust.You can access this interface using your page’s TSVariables() method.

([a] [out] LPBSTR pValue LPCTSTR variableName) void GetValuevoid GetValue([in] LPCTSTR variableName, [out] LPBSTR pValue)

Ez a módszer egy feladatütemezési változó értékének beolvasása.This method reads the value of a task sequence variable.

Megjegyzés

Az első olvasott értékek kerülnek a gyorsítótárba.Values are cached after the first read.

([a] [a] LPCTSTR pValue LPCTSTR variableName) void SetValue műveletvoid SetValue([in] LPCTSTR variableName, [in] LPCTSTR pValue)

Ez a módszer egy feladatütemezési változó értékének beállítása.This method sets the value of a task sequence variable. Ezt az értéket a rendszer menti a memóriában.This value is saved in memory. A feladat értékek írt gombra kattintva Befejezés UDI varázslóban.Task sequence values are written once you click Finish in the UDI Wizard.

"void" Clear(void)void Clear(void)

Ez a módszer eltávolítja a memóriában mentett összes feladat feladatütemezési értéket.This method removes all task sequence values that have been saved in memory.

HRESULT Remove([in] LPCTSTR variableName)HRESULT Remove([in] LPCTSTR variableName)

Ez a módszer egy adott feladat feladatütemezési érték eltávolítása a memória.This method removes a specific task sequence value from memory. A következő alkalommal meghívja a GetValue az azonos nevű feladatütemezési, a metódus megpróbálja beolvasni a feladatütemezés.The next time you call GetValue with the same task sequence name, the method attempts to retrieve it from the task sequence.

HRESULT SuppressLogValue([in] LPCTSTR variableName)HRESULT SuppressLogValue([in] LPCTSTR variableName)

Amikor feladatütemezési változók íródtak, például ha Befejezés UDI varázslóban a nevek és értékek kerülnek a naplófájlba írást.Whenever task sequence variables are written, such as when you click Finish in the UDI Wizard, the names and values are written to the log file. Ez a metódushívás arra, hogy letiltsa az érzékeny értékek, például a jelszavak és PIN-kód, egy adott feladatütemezési változó naplózását.Call this method to suppress logging of sensitive values, such as passwords or PINs, for a specific task sequence variable.

void Save(void)void Save(void)

Ez a módszer menti hívások beállított összes feladat feladatütemezési értékek SetValue.This method saves all task sequence values that have been set with calls to SetValue.

ITSVariableRepository felületITSVariableRepository Interface

__interface ITSVariableRepository : IUnknown  
{  
    void GetValue([in] LPCTSTR variableName, BOOL logValue, [out] LPBSTR pValue);  
    void SetValue([in] LPCTSTR variableName, BOOL logValue, [in] LPCTSTR value);  
};  

Ez az interfész általi belső használatra van TSVariableBag olvasására vagy írására feladatütemezési változókat.This interface is for internal use by TSVariableBag for reading and writing task sequence variables.

IWizardFinish InterfaceIWizardFinish Interface

__interface IWizardFinish : IUnknown  
{  
    HRESULT Canceled(void);  
    HRESULT Finished(void);  
};  

Ez az interfész akkor hasznos, ha szeretne végezni, kattintva további feldolgozás speciális forgatókönyvekhez Befejezés vagy Mégse UDI varázslóban.This interface is useful in advanced scenarios where you want to perform additional processing when you click Finish or Cancel in the UDI Wizard. Az UDI varázsló tartalmaz egy Befejezés feladatot, amely menti a feladatütemezési változók kattintva Befejezés.The UDI Wizard contains a Finish task that saves task sequence variables when you click Finish. A varázsló megszakítása, ha a feladat csak beállítja a OSDSetupWizCancelled feladatütemezési változót is igaz, és nem menti a változásokat bármilyen egyéb jellegű feladat biztosítja a feladatütemezési változók.If you cancel the wizard, the task only sets the OSDSetupWizCancelled task sequence variable to TRUE and does not save changes to any other task sequence variables.

A saját Befejezés összetevő hoz létre, ha regisztrálja őket a kódot kell:If you create your own finish component, you need to register it with code like this:

Register<MyFinishTaskFactory>(ID_MyFinishTask, pRegistry);  

PWizardFinish pFinish;  
CreateInstance(pRegistry, ID_MyFinishTask, &pFinish);  

PWizardFinishService pService;  
GetService<IWizardFinishService>(pRegistry, &pService);  

pService->Register(pFinish);  

IBindableList felületIBindableList Interface

__interface IBindableList : IUnknown  
{  
    size_t Count(void);  
    HRESULT GetCaption(size_t index, LPBSTR pCaption);  
};  

Ez az interfész valósítja meg, ha van a kombinált lista meghívásával kötni kívánt adatok forrás összetevő a kötési metódust.Implement this interface if you have a data source component that you want to bind to a combo box by calling its Bind method.

size_t Count(void)size_t Count(void)

Ez a módszer azon elemek száma a lista adja vissza.This method returns the number of items in the list.

HRESULT GetCaption(size_t index, LPBSTR pCaption)HRESULT GetCaption(size_t index, LPBSTR pCaption)

Ez a módszer egy adott indexű elem feliratának adja vissza.This method returns the caption of the item at a specific index.

IDataNodes felületIDataNodes Interface

__interface IDataNodes : IUnknown  
{  
    size_t Count();  
    HRESULT SetCaptionProperty(LPCTSTR captionProperty);  
    HRESULT GetProperty(size_t index, LPCTSTR propertyName, [out] LPBSTR propertyValue);  
    HRESULT GetNode(size_t index, [out] ISettingsProperties **ppNode);  
};  

Ez az interfész lapon menthető hierarchikus adatokhoz hozzáférést biztosít.This interface provides access to hierarchical data that can be saved in a page. Ez az interfész keresztül módszerek a szerezze be a ISettingsProperties felületet, és a lap keresztül elérhető a beállítások metódus.You obtain this interface via methods on the ISettingsProperties interface, which is available to your page through the Settings method.

A lap XML-Fájlban lévő adatok is kinéznieData in a page’s XML can look something like this

      <Data Name="Network">  
        <DataItem>  
          <Setter Property="DisplayName">Public</Setter>  
          <Setter Property="Share">\\servername\Share</Setter>  
        </DataItem>  
        <DataItem>  
          <Setter Property="DisplayName">Dev Team</Setter>  
          <Setter Property="Share">\\servername\DevShare</Setter>  
        </DataItem>  
      </Data>  

Hívása Settings() GetDataNode ("Hálózat" L & pData) -> lehetővé teszi egy IDataNodes két adatelemek-példány (amelyek viszont két tulajdonságokkal rendelkezik).Calling Settings()->GetDataNode(L"Network", &pData) gives you an IDataNodes instance with two data items (each of which in turn has two properties).

size_t Count()size_t Count()

Ez a módszer számát adja vissza DataItem elemek.This method returns the number of DataItem elements.

HRESULT SetCaptionProperty(LPCTSTR captionProperty)HRESULT SetCaptionProperty(LPCTSTR captionProperty)

Az összetevő, amely támogatja ezt a felületet is támogatja a IBindableList, amely megkönnyíti a kombinált lista az oldal XML-adatok feltöltése.The component that supports this interface also supports IBindableList, which makes it easy to populate a combo box with data from the page’s XML. Ez a módszer minden meghatározza, mely tulajdonsága (setter) DataItem elem ehhez a kötéshez használandó.This method controls which property (setter) in each DataItem element will be used for this binding. Például hívhatja meg a metódushoz DisplayName, és azt használna az adatkötés beállító tulajdonság.For example, you could call this method with DisplayName, and it would use that setter property for data binding. A kombinált lista majd tartalmazná nyilvános és fejlesztői csoport elemként.The combo box would then contain Public and Dev Team as items.

HRESULT GetProperty(size_t index, LPCTSTR propertyName, [out] LPBSTR propertyValue)HRESULT GetProperty(size_t index, LPCTSTR propertyName, [out] LPBSTR propertyValue)

Ez a módszer egy tulajdonság lekérdezi az egyik a DataItem elemek.This method gets a property from one of the DataItem elements. Tekintse meg a tábla 41-es és a tábla 42.See Table 41 and Table 42.

Tábla 41-es.Table 41. DataItem GetPropertyDataItem GetProperty

ParaméterParameter LeírásDescription
IndexIndex Az index értékének (0-tól induló) a DataItem , amelynek meg szeretné tulajdonság értékeThe index value (starting with 0) of the DataItem for which you want to retrieve a property value
propertyNamepropertyName A setter tulajdonság értéke szeretné neveName of the setter property for which you want to retrieve a value
propertyValuepropertyValue A visszatérési tartalmazza a tulajdonság a karakterlánc értékeOn return, contains the string value of a property

Tábla 42.Table 42. HRESULT GetPropertyHRESULT GetProperty

HRESULTHRESULT LeírásDescription
S_OKS_OK A tulajdonság be lett olvasva.The property was retrieved.
E_INVALIDARGE_INVALIDARG Az index a tömb végén túlra esik.The index is past the end of the array.
HRESULT GetNode(size_t index, [out] ISettingsProperties **ppNode)HRESULT GetNode(size_t index, [out] ISettingsProperties **ppNode)

Ez a módszer hasonlít GetProperty, de egy értéket visszaadó helyett egy DataItem, adja vissza, a teljes DataItem csomagolni egy ISettingsProperties felületet.This method is similar to GetProperty, but instead of returning one value from a DataItem, it returns the entire DataItem wrapped in an ISettingsProperties interface. Tekintse meg a tábla 43 és tábla 44.See Table 43 and Table 44.

Tábla 43.Table 43. HRESULT GetNodeHRESULT GetNode

ParaméterParameter LeírásDescription
IndexIndex Az index értékének (0-tól induló) a DataItem , amelynek meg szeretné tulajdonság értékeThe index value (starting with 0) of the DataItem for which you want to retrieve a property value
ppNodeppNode Kilépéskor a ISettingsProperties felületet burkolja a DataItem csomópontOn exit, the ISettingsProperties interface that wraps the DataItem node

Tábla 44.Table 44. HRESULT GetNode eredményekHRESULT GetNode Results

HRESULTHRESULT LeírásDescription
S_OKS_OK A csomópont be lett olvasva.The node was retrieved.
E_INVALIDARGE_INVALIDARG Az index a tömb végén túlra esik.The index is past the end of the array.

IFactoryRegistry InterfaceIFactoryRegistry Interface

__interface IFactoryRegistry : IUnknown  
{  
    void Register(LPCTSTR type,  IClassFactory *pFactory);  
    HRESULT LoadAndRegister(LPCTSTR dllName, ILogger *pLogger);  
    BOOL Contains(LPCTSTR type);  
    HRESULT GetFactory(LPCTSTR type,  IClassFactory **ppFactory);  
    HRESULT CreateInstance(LPCTSTR type,  IUnknown **ppInstance);  
    HRESULT SetContainer(IWizardPageContainer *pContainer);  
    HRESULT RegisterService(REFGUID iid, IUnknown *pService);  
    HRESULT GetService(REFGUID iid,  IUnknown **ppService);  
};  
ÁttekintésOverview

Amikor létrehoz egy új egyéni lap, minimális kell létrehoznia egy lap gyári– egy osztály, amely megvalósítja az IClassFactory.When you create a new custom page, at a minimum you need to create a page factory—a class that implements IClassFactory. (Használható ClassFactoryImpl és az osztály alaposztálya a beépített.)(You can use ClassFactoryImpl as a base class for your factory.)

Regisztráció érvénytelenítése (LPCTSTR típusa, IClassFactory *pFactory)void Register(LPCTSTR type, IClassFactory *pFactory)

Ez a módszer egy osztálykészítő behívása a beállításjegyzék regisztrálja.This method registers a class factory with the registry. Tekintse meg a tábla 45.See Table 45.

Tábla 45.Table 45. IClassFactory "void" regisztrálásaIClassFactory void Register

ParaméterParameter LeírásDescription
TípusType Karakterlánc, amely azonosítja a gyári regisztrál; általában ez a paraméter kell rendelkezniük a vállalat nevére a karakterláncot. Győződjön meg arról, hogy az egyediA string that identifies the factory you are registering; generally, this parameter should have your company name in the string to ensure that it is unique
pFactorypFactory A gyári osztálypéldány mutató hivatkozásokA pointer to your class factory instance
HRESULT LoadAndRegister(LPCTSTR dllName, ILogger *pLogger)HRESULT LoadAndRegister(LPCTSTR dllName, ILogger *pLogger)

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

LOGIKAI Contains(LPCTSTR type)BOOL Contains(LPCTSTR type)

Ez a módszer általában belső használatra szolgál.This method is generally for internal use. Azt ellenőrzi, hogy egy osztálykészítő behívása regisztrálva van egy.It checks to see whether a class factory has been registered for a type.

HRESULT GetFactory(LPCTSTR type, IClassFactory **ppFactory)HRESULT GetFactory(LPCTSTR type, IClassFactory **ppFactory)

Ez a módszer lehetővé teszi a osztálykészítőjének lekérése.This method allows you to retrieve the class factory. Általában meghívta CreateInstance.Typically, you would call CreateInstance. Azonban ha azt tervezi, az adott összetevő nagy számú létrehozásához, sokkal hatékonyabban a gyári beolvasásához, és majd kérje meg, hogy hozza létre a példányok.However, if you are going to create a large number of the same component, it is more efficient to retrieve the factory, and then ask it to create the instances for you.

HRESULT CreateInstance(LPCTSTR type, IUnknown **ppInstance)HRESULT CreateInstance(LPCTSTR type, IUnknown **ppInstance)

Ez a módszer új példányt hoz létre az adott annak típusú összetevő.This method creates a new instance of a component, given its type. Használja a CreateInstance sablon metódus ehelyett lehetővé teszi típus környezetben is biztonságos objektum-létrehozás.Use the CreateInstance template method instead, which allows type-safe object creation.

HRESULT SetContainer(IWizardPageContainer *pContainer)HRESULT SetContainer(IWizardPageContainer *pContainer)

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

HRESULT RegisterService(REFGUID iid, IUnknown *pService)HRESULT RegisterService(REFGUID iid, IUnknown *pService)

Szolgáltatások olyan összetevő, amely több helyen is használható egyetlen példánya is.Services are single instances of a component that can be used in multiple places. Egy oldalon szolgáltatás regisztrálni ezt a módszert használja, és majd, hogy ugyanazon le egy másik lapra.You can use this method to register a service on one page, and then retrieve that same instance from another page.

HRESULT GetService(REFGUID iid, IUnknown **ppService)HRESULT GetService(REFGUID iid, IUnknown **ppService)

Ez a metódus egy korábban regisztrált RegisterService hívja service kéri le.This method retrieves a service that was previously registered with a call to RegisterService.

HRESULT SetLanguage(LANGID languageId)HRESULT SetLanguage(LANGID languageId)

Ez a módszer az UDI varázsló nyelvének beállítása a megadott nyelvi azonosító a languageId paraméter.This method sets the language of the UDI Wizard to the language identifier you provided in the languageId parameter.

LANGID GetLanguage()LANGID GetLanguage()

Ez a módszer a megadott nyelvi azonosító értékét adja vissza a Locale az UDI varázsló parancssori paraméter.This method returns the value of the language identifier you provided with the /locale command-line parameter for the UDI Wizard. A módszer a következő értékek egyikét adja vissza:The method returns one of the following values:

  • A megadott nyelvi azonosító értékének a Locale parancssori paraméterValue of the language identifier provided with the /locale command-line parameter

  • 0, ha nem adott meg a Locale parancssori paraméter0, if you did not provide the /locale command-line parameter

ILogger felületILogger Interface

__interface ILogger : IUnknown  
{  
    HRESULT Init(LPCWSTR logFilename);  
    HRESULT MoveLog(LPCWSTR logFilename);  
    HRESULT LogBase(EMessageType messageType, LPCTSTR component, SYSTEMTIME eventTime, LPCTSTR message);  
    HRESULT Log(EMessageType messageType, LPCTSTR component, LPCTSTR message);  
    HRESULT Error(HRESULT error, LPCTSTR component, LPCTSTR message);  
    HRESULT Error2(HRESULT error, LPCTSTR component, LPCTSTR message, LPCTSTR message2);  
    HRESULT Normal(LPCTSTR component, LPCTSTR message);      
    HRESULT Normal2(LPCTSTR component, LPCTSTR message, LPCTSTR message2);  
    HRESULT Verbose(LPCTSTR component, LPCTSTR message);  
    HRESULT Verbose2(LPCTSTR component, LPCTSTR message, LPCTSTR message2);  
    HRESULT Debug(LPCWSTR component, LPCWSTR message);  
    HRESULT EnableDebug(BOOL debug);  
    HRESULT Close(void);  
    HRESULT GetLogFilename(LPBSTR pFilename);  
};  
ÁttekintésOverview

Az UDI varázsló egy naplófájlba, amely segít a mezőben talált problémák elhárításához információkat naplózza.The UDI Wizard logs information to a log file, which helps troubleshoot issues found in the field. Érdemes a lapok naplózza az adatokat.It is a good idea for your pages to log information. Ez az interfész a mutató szerezheti be a lapon, a lapon lévő Logger() metódust.You can obtain a pointer to this interface from within your page using the page’s Logger() method. A naplófájlban sorok tartalmaznak egy "szint" szám, adott jelöli hiba, a normál, részletes, vagy a hibakeresési üzeneteket.Lines in the log file contain a “level” number that represents error, normal, verbose, or debug messages.

Megjegyzés

Hibakeresési üzeneteket nincsenek mentve a naplófájlba írást, kivéve, ha hibakeresési támogatási be van kapcsolva.Debug messages are not saved to the log file unless debug support is turned on. Ha bekapcsolja a hibakeresési támogatási adja hozzá a következő sort a stílus a .config fájlban:You can turn on debug support by adding the following line to the Style element in the .config file:

<Setter Property="debug">true</Setter>  
InitInit
HRESULT Init(LPCWSTR logFilename)  

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

MoveLogMoveLog
HRESULT MoveLog(LPCWSTR logFilename)  

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

LogBaseLogBase
HRESULT LogBase(EMessageType messageType, LPCTSTR component, SYSTEMTIME eventTime, LPCTSTR message)  

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

NaplóLog
HRESULT Log(EMessageType messageType, LPCTSTR component, LPCTSTR message)  

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

HibaError
HRESULT Error(HRESULT error, LPCTSTR component, LPCTSTR message)  

A hibával kapcsolatos adatok Ez a metódus meghívható.Call this method to log information about an error. Tekintse meg a tábla 46.See Table 46.

Tábla 46.Table 46. HRESULT hibaHRESULT Error

ParaméterParameter LeírásDescription
Hiba:Error (Ez a kód jelenik meg egy számot a napló tétel.) egy hívás által visszaadott hibakód:The error code returned by a call (This code will be displayed in the log entry as a number.)
ÖsszetevőComponent Karakterlánc, amely azonosítja a hiba, amely általában a lap vagy az összetevő, amely írt forrásaA string that identifies the source of the error, which is generally your page or the component that you have written
ÜzenetMessage Az üzenet, amely ismerteti a hiba okárólThe message that explains what caused the error
error2Error2
HRESULT Error2(HRESULT error, LPCTSTR component, LPCTSTR message, LPCTSTR message2)  

Ez a módszer olyan, mint a hiba módszer azonban lehetővé teszi egy kétlépéses üzenetet.This method is like the Error method but allows you to provide a two-part message. Az utolsó üzenet "üzenet", és "message2" lesz a kimeneti fájl.The final message will have “message,” and then “message2” in the output file. Ez a csupán kényelmi módszer.This is simply a convenience method.

NormálNormal
HRESULT Normal(LPCTSTR component, LPCTSTR message)  

Ez a módszer egy normál üzenetet naplózza.This method logs a normal message. Leírását lásd a hiba paraméterek metódust.See the description of the Error method for parameters.

Normal2Normal2
HRESULT Normal2(LPCTSTR component, LPCTSTR message, LPCTSTR message2)  

Ez a módszer egy normál üzenetet naplózza.This method logs a normal message. Leírását lásd a Error2 paraméterek metódust.See the description of the Error2 method for parameters.

RészletesVerbose
HRESULT Verbose(LPCTSTR component, LPCTSTR message)  

Ez a módszer egy részletes üzenetet naplózza.This method logs a verbose message. Leírását lásd a hiba paraméterek metódust.See the description of the Error method for parameters.

Verbose2Verbose2
HRESULT Verbose2(LPCTSTR component, LPCTSTR message, LPCTSTR message2)  

Ez a módszer egy részletes üzenetet naplózza.This method logs a verbose message. Leírását lásd a Error2 paraméterek metódust.See the description of the Error2 method for parameters.

HibakeresésiDebug
HRESULT Debug(LPCWSTR component, LPCWSTR message)  

Ez a módszer egy hibakeresési üzenetet naplózza.This method logs a debug message. Leírását lásd a hiba paraméterek metódust.See the description of the Error method for parameters. Hibakeresési üzeneteket nem menti a fájlt, kivéve, ha engedélyezve van.Debug messages are not saved to the file unless enabled. További részletek a áttekintése című szakaszában talál.See the Overview section for details.

EnableDebugEnableDebug
HRESULT EnableDebug(BOOL debug)  

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

Zárja beClose
HRESULT Close(void)  

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

GetLogFilenameGetLogFilename
HRESULT GetLogFilename(LPBSTR pFilename)  

Ez a módszer lekéri a naplófájl nevét.This method retrieves the name of the log file.

IOrientation felületIOrientation Interface

__interface IOrientation : IUnknown  
{  
    void SetController(IWizardDialogController *pController);  
    int AddPage(LPCTSTR name);  
    void SelectPage(int index);  
};  

Ez az interfész csak belső használatra szolgál.This interface is for internal use only.

ISettings felületISettings Interface

__interface ISettings : IUnknown  
{  
    int NumDlls();  
    int NumPages();  

    HRESULT SetStage(LPCWSTR stageName);  
    HRESULT GetDllName(long index, __out LPBSTR pDllName);  
    HRESULT GetPageInfo(long index, __out ISettingsProperties **ppPageInfo);  
    HRESULT GetStyle(__out ISettingsProperties **ppStyleInfo);  
};  

Ez az interfész csak belső használatra szolgál.This interface is for internal use only.

ISettingsProperties felületISettingsProperties Interface

__interface ISettingsProperties : IUnknown  
{  
    HRESULT GetAttribute(LPCTSTR attributeName, __out LPBSTR attributeValue);  
    IStringProperties * Properties();  
   RESULT SelectNodes(LPCTSTR xPath, __out IXMLDOMNodeList **ppList);  
    HRESULT SelectSingleNode(LPCTSTR xPath, __out IXMLDOMNode **ppNode);  
    HRESULT GetDataNode(LPCTSTR name, __out ISettingsProperties **ppNode);  
    HRESULT GetDataNodes(__out IDataNodes **ppNodes);  
    HRESULT GetChildDataNodes(LPCTSTR childeName, __out IDataNodes **ppNodes);  
};  
ÁttekintésOverview

Ez az interfész oldaladatokat hozzáférést biztosít.This interface provides access to page data. A legfelső szintjükre lap adatainak megtekintéséhez használja a lap Settings() metódust.To get to the top level of page data, use the page’s Settings() method.

HRESULT GetAttribute(LPCTSTR attributeName, LPBSTR attributeValue)HRESULT GetAttribute(LPCTSTR attributeName, LPBSTR attributeValue)

Ez a módszer lehetővé teszi a fő csomóponton, amely attribútum értéke a lap csomópont használata esetén a Settings() módszer a lap.This method allows you to retrieve the values of attributes on the main node, which is the Page node when you are using the Settings() method of the page.

IStringProperties * Properties()IStringProperties * Properties()

Ez a módszer a fő csomópontban beállító tulajdonságértéket hozzáférést biztosít.This method provides access to the setter property values under the main node. Egy lap ezek a legfelső szintű tulajdonságait.For a page, these are the top-level properties.

HRESULT SelectNodes(LPCTSTR xPath, IXMLDOMNodeList **ppList)HRESULT SelectNodes(LPCTSTR xPath, IXMLDOMNodeList **ppList)

Ez a metódus meghívható, ha szeretne közvetlenül az XPath kifejezésben használt XML-csomópontok listáját.Call this method if you want to directly get a list of XML nodes using an XPath expression. Ajánlott az egyéb módszerek egyikét használja, ha az.It is better to use one of the other methods if you can. Ezt a módszert csak akkor, ha a csomópontok nem sikerül más módon.Use this method only if you cannot get to nodes any other way.

HRESULT SelectSingleNode(LPCTSTR xPath, IXMLDOMNode **ppNode)HRESULT SelectSingleNode(LPCTSTR xPath, IXMLDOMNode **ppNode)

Ez a metódus meghívható, ha szeretne közvetlenül XPath kifejezés segítségével egyetlen XML-csomópont.Call this method if you want to directly get a single XML node using an XPath expression. Ajánlott az egyéb módszerek egyikét használja, ha az.It is better to use one of the other methods if you can. Ezt a módszert csak akkor, ha egy csomópont nem sikerül más módon.Use this method only if you can’t get to a node any other way.

HRESULT GetDataNode(LPCTSTR name, ISettingsProperties **ppNode)HRESULT GetDataNode(LPCTSTR name, ISettingsProperties **ppNode)

Beolvasni egy adatok elem alapján, hogy a(z) neve attribútum.Retrieve a Data element based on that element’s Name attribute.

HRESULT GetDataNodes(IDataNodes **ppNodes)HRESULT GetDataNodes(IDataNodes **ppNodes)

Ez a metódus lekér egy listát azokról DataItem elemeket az aktuális csomópont alatt.This method retrieves a list of DataItem elements under the current node. Hívása a lap szintről GetDataNode beolvasni egy ISettingsProperty felületet az adatokat.From the page level, call GetDataNode to retrieve an ISettingsProperty interface for the data. Majd, azon a példányon, meghívják GetDataNodes a rekordok listáját.Then, on that instance, call GetDataNodes to retrieve the list of records. Ha például adott az XML-kód:For example, given this XML:

    <Page …>  
      <Data Name="Network">  
        <DataItem>  
          <Setter Property="DisplayName">Public</Setter>  
          <Setter Property="Share">\\servername\Share</Setter>  
        </DataItem>  
        <DataItem>  
          <Setter Property="DisplayName">Dev Team</Setter>  
          <Setter Property="Share">\\servername\DevShare</Setter>  
        </DataItem>  
      </Data>  

PSettingsProperties pData;  
Settings()->GetDataNode(L"Network", &pData);  
PDataNodes pNodes;  
pData->GetDataNodes(&pNodes);  
HRESULT GetChildDataNodes(LPCTSTR childeName, IDataNodes **ppNodes)HRESULT GetChildDataNodes(LPCTSTR childeName, IDataNodes **ppNodes)

Ez a metódus eléréséhez készletét gyors lehetőséget kínál DataItem egy adott csomópontokban adatok csomópont.This method provides a quick way to get to the set of DataItem nodes under a specific Data node. Az XML használatával a GetDataNodes példában az alábbi kód művelet pontosan megegyezik a négy sornyi kód, a példában a GetDataNodes , de hiba ellenőrzése:Using the XML from the GetDataNodes example, the following code does exactly the same thing as the four lines of code in the example under GetDataNodes but with error checking:

ISimpleStringProperties Interface  

ISimpleStringProperties InterfaceISimpleStringProperties Interface

__interface ISimpleStringProperties : IStringProperties  
{  
void Add(LPCTSTR propertyName, LPCTSTR value);  
};  

Önálló Ez az interfész nem lehetnek hasznosak.By itself, this interface may not be useful. Által megvalósított azonban a ID_SimpleStringProperties összetevő, amely is a IStringProperties felületet.However, it is implemented by the ID_SimpleStringProperties component, which also implements the IStringProperties interface. Ez az összetevő azokban az esetekben, ahol kell átadni egy másik összetevő, például egy feladat tulajdonságait, de hozzá szeretné adni az értékeket az XML-értékek helyett programozott módon használhatja.You can use this component in cases where you need to pass a set of properties to another component, such as a task, but you want to add values programmatically instead of using values from XML. Íme egy példa hogyan használja a kapcsolat:Here is an example of how you would use this interface:

PSimpleStringProperties *pProperties;  
CreateInstance(Container(), ID_SimpleStringProperties, &pProperties);  
pProperties->Add(L"filename", L"%windir%\\system32\\cscript.exe");  
pTask->Init(pProperties, nullptr);  
IStringProperties  
__interface IStringProperties : IUnknown  
{  
    HRESULT Get(LPCTSTR propertyName, [out] LPBSTR pPropValue);  
};  

Ez az interfész setter elemek XML érkező egyszerű hozzáférést biztosít.This interface provides simple access to a set of setter elements that come from XML. Ez az interfész érhető el a Tulajdonságok lap használatával Settings() -> Properties().This interface is available for the properties of a page using Settings()->Properties().

HRESULT Get(LPCTSTR propertyName, [out] LPBSTR pPropValue)HRESULT Get(LPCTSTR propertyName, [out] LPBSTR pPropValue)

Ez a módszer lekéri egyetlen tulajdonság értéke.This method retrieves a single property value. Tekintse meg a tábla 47 és tábla 48.See Table 47 and Table 48.

Tábla 47.Table 47. IHRESULT Get tulajdonság értékeIHRESULT Get Property Value

ParaméterParameter LeírásDescription
propertyNamepropertyName Az olvasni kívánt tulajdonság neveName of the property that you want to read
pPropValuepPropValue Kilépéskor karakterláncként tulajdonság értéket tartalmazza (Ez az érték nullptr nincs ilyen tulajdonság esetén.)On exit, contains the property value as a string (This value will be nullptr if there is no such property.)

Tábla 48.Table 48. IHRESULT tulajdonság értéke eredményekhez juthat.IHRESULT Get Property Value Results

HRESULTHRESULT LeírásDescription
S_OKS_OK A beolvasott tulajdonság értéke.Property value is retrieved.
E_INVALIDARGE_INVALIDARG Nincs a megadott nevű tulajdonság.There is no property with the name you provided.

ITaskManager felületITaskManager Interface

__interface ITaskManager : IUnknown  
{  
    HRESULT Init(IWizardPageView *pPageView, int idListView, int idMessage, int idRetryButton, ISettingsProperties *pPageInfo, ITaskManagerCallback *pCallback);  
    HRESULT SetFailMessage(LPCWSTR message);  

    HRESULT Start(void);  

    HRESULT GetTaskMessage(size_t index, LPBSTR message);  
    HRESULT GetResultType)(size_t index, LPBSTR type);  
    HRESULT GetProperty(size_t index, LPCTSTR propertyName, LPBSTR value);  
    int GetSelectedIndex(void);  
    HRESULT Wait(DWORD waitMilliseconds);  
    size_t FailedCount(void);  
    size_t WarningCount(void);  
    size_t SucceedCount(void);  
    size_t RunningCount(void);  

    void OnCommonControlEvent(WORD controlId, LPNMHDR pInfo);  
    void OnControlEvent(WORD eventId, WORD controlId);  
    void EnableButtons(BOOL enable);  
}  

Ez az interfész megvalósítja a taskmanager objektum összetevő (ID_TaskManager a ITaskManager.h), ez az összetevő, amely a feladatok futtatása az előzetes oldalon.This interface is implemented by the TaskManager component (ID_TaskManager in ITaskManager.h), which is the component that runs tasks on the preflight page. Az ellenőrzés lapon közvetlenül, amely mit az esetek többségében, vagy összeállítása a saját lap, ha engedélyezi, hogy a munka nagyobb része tegye ezt az összetevőt.You can either use the preflight page directly, which is what you do most of the time, or build your own page, letting this component do most of the work.

HRESULT Init(IWizardPageView *pPageView, int idListView, int idMessage, int idRetryButton, ISettingsProperties *pPageInfo, ITaskManagerCallback *pCallback)HRESULT Init(IWizardPageView *pPageView, int idListView, int idMessage, int idRetryButton, ISettingsProperties *pPageInfo, ITaskManagerCallback *pCallback)

Ez a módszer semmilyen más metódus meghívása előtt meg kell hívni.You must call this method before calling any other method. Állíthatja a taskmanager objektum összetevő.It initializes the TaskManager component. Tekintse meg a tábla 49.See Table 49.

Tábla 49.Table 49. HRESULT InitHRESULT Init

ParaméterParameter LeírásDescription
pPageViewpPageView A feladatok (ezen a lapon rendelkeznie kell egy adott készletét vezérlőket, amelyek a következő néhány paraméterek vázolt.) futtató adataitProvides access to the page that will be running tasks (This page must have a specific set of controls, which are outlined in the next few parameters.)
idListViewidListView A pagedcontrolid azonosító egy ListView vezérlő, amely a feladatok állapotát és feladatok listáját jeleníti megThe control ID of a ListView control that will display the list of tasks and the status of those tasks
idMessageidMessage Megjelenít egy üzenetet a kiválasztott feladathoz használandó szövegmezőt VezérlőazonosítójaThe control ID of a text box that will be used to display a message for the task that you select
idRetryButtonidRetryButton A gombra kattintva futtassa újra a feladatok VezérlőazonosítójaThe control ID of a button you can click to run the tasks again
pPageInfopPageInfo A lap XML csomagolásának (taskmanager objektum betölti a feladatok az XML-ről futtatva.)A wrapper around the page’s XML (TaskManager loads the set of tasks to run from this XML.)
pCallbackpCallback Lehet null értékű (Ha ez a paraméter értéke nem null, taskmanager objektum hívások a elindítva feladat indításkor metódust és a befejezett módszer minden feladat befejezése után történik,.)Can be null (If this parameter is not null, TaskManager calls the Started method when it starts a task and the Finished method for each task that finishes running.)
HRESULT SetFailMessage(LPCWSTR message)HRESULT SetFailMessage(LPCWSTR message)

Ezt a módszert állítja be az üzenetet fog megjelenni, ha egy vagy több feladat sikertelen.This method sets the message that will be displayed if one or more tasks fail.

HRESULT Start(void)HRESULT Start(void)

Ez a módszer minden feladat elindul.This method starts all the tasks. Minden feladat elindítva külön szálban.Each task is started on a separate thread.

HRESULT GetTaskMessage(size_t index, LPBSTR message)HRESULT GetTaskMessage(size_t index, LPBSTR message)

Ez a módszer csak belső használatra szolgál.This method is for internal use only. Lekérdezi az aktuális üzenet egy feladatot a feladatok listáját az index alapján.It retrieves the current message for a task based on its index in the list of tasks.

HRESULT GetResultType) (size_t index, LPBSTR típusa)HRESULT GetResultType)(size_t index, LPBSTR type)

Ez a módszer az aktuális "type" feladat kéri le.This method retrieves the current “type” for a task. Tábla 50 a használható típusok jeleníti meg.Table 50 shows the available types.

Tábla 50.Table 50. HRESULT GetResultTypeHRESULT GetResultType

TípusType LeírásDescription
00 Sikeresen végrehajtott egy feladatot jelöli.Represents a task that succeeded
11 Jelenti. a feladatok, amelyek figyelmeztetéssel fejeződött beRepresents a tasks that returned a warning
-1-1 A meghiúsult feladat jelenti.Represents a failed task

A típus lekéri a feladat vagy kilépési hibakód megnézi, és megfelelő első találat a feladat < ExitCodes> XML-elemet.The type is retrieved by looking at the task’s exit or error code and finding a match in the task’s <ExitCodes> XML element.

HRESULT GetProperty(size_t index, LPCTSTR propertyName, LPBSTR value)HRESULT GetProperty(size_t index, LPCTSTR propertyName, LPBSTR value)

Ez a metódus által a folyamat és annak elővizsgálati lapok beolvasásához használt a BitmapFilename beállító tulajdonság, a lemezkép mellett, akkor jelölje ki a feladatot az üzenet megjeleníti.This method is used by the progress and preflight pages to retrieve the BitmapFilename setter property so it can display an image next to the message for the task that you highlight. Ez azt jelenti egy egyéni beállító vegye fel a feladatütemezés XML, és ezzel a módszerrel beolvasásához.In other words, you can add a custom setter to the task’s XML, and then retrieve it with this method.

int GetSelectedIndex(void)int GetSelectedIndex(void)

Ez a módszer lekéri a jelenleg kijelölt tevékenység, akkor hasznos, ha azt szeretné, a feladattal kapcsolatos további információk lekéréséhez indexe (lásd: GetProperty metódus) a kijelölt tevékenység megjelenítéséhez.This method retrieves the index of the currently selected task, which is useful if you want to retrieve additional information about the task (see GetProperty method) to display for the selected task. A folyamatban lévő és ellenőrzés lapok ezt a módszert a kijelölt tevékenység kép megjelenítéséhez.The progress and preflight pages use this method to display an image for the selected task.

HRESULT Wait(DWORD waitMilliseconds)HRESULT Wait(DWORD waitMilliseconds)

Ez a módszer főként segít egység teszttel együtt, a vizsgálat bizonyosodjon meg arról, hogy a feladatok befejezését, mielőtt a egység tesztelése kilép.This method mainly helps with unit tests so the test can ensure that tasks finish before the unit test exits. Meg szeretné nem általában ez a metódus meghívható.You would not normally call this method. Azt adja vissza, vagy ha minden feladat befejeződik, futó vagy a várakozási idő lejárt.It returns either when all tasks finish running or the wait time has elapsed.

size_t FailedCount(void)size_t FailedCount(void)

Ez a módszer jelenleg megjelölve, a sikertelen feladatok számát adja vissza.This method returns the number of tasks currently marked as failed.

size_t WarningCount(void)size_t WarningCount(void)

Ez a módszer jelenleg jelölésű figyelmeztetés feladatok számát adja vissza.This method returns the number of tasks currently marked as warning.

size_t SucceedCount(void)size_t SucceedCount(void)

Ez a módszer jelenleg megjelölve, a sikeres feladatok számát adja vissza.This method returns the number of tasks currently marked as succeeded.

size_t RunningCount(void)size_t RunningCount(void)

Ez a módszer a jelenleg futó feladatok száma adja vissza.This method returns the number of tasks currently running.

"void" OnCommonControlEvent (WORD controlId, LPNMHDR pInfo)void OnCommonControlEvent(WORD controlId, LPNMHDR pInfo)

Ez a metódus meghívható a oldalból OnCommonControlEvent ezért a taskmanager objektum tud feldolgozni az eseményeket a szükséges.Call this method from your page’s OnCommonControlEvent so the TaskManager can process events it needs.

"void" OnControlEvent (WORD eseményazonosító, WORD controlId)void OnControlEvent(WORD eventId, WORD controlId)

Ez a metódus meghívható a oldalból OnControlEvent ezért a taskmanager objektum tud feldolgozni az eseményeket a szükséges.Call this method from your page’s OnControlEvent so the TaskManager can process events it needs.

"void" EnableButtons(BOOL enable)void EnableButtons(BOOL enable)

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

IWizardComponent InterfaceIWizardComponent Interface

__interface IWizardComponent : IUnknown  
{  
    HRESULT SetContainer(IWizardPageContainer *pContainer);  
};  
ÁttekintésOverview

Általában nem megvalósítandó Ez az interfész közvetlenül, de ehelyett keresztül a WizardComponent sablon osztály.Typically, you will not implement this interface directly but instead through the WizardComponent template class. Ha az összetevő megvalósítja ezt a felületet, és regisztrálta a osztálykészítő behívása a beállításjegyzék, az összetevő megkapja-e a mutató hivatkozások a IWizardPageContainer példány létrehozásakor.If your component implements this interface and you have registered a class factory with the registry, your component receives a pointer to the IWizardPageContainer instance when it is created. Ezzel a megoldással, például, a naplózót vagy más összetevőket, módosítania kell a összetevő létrehozásához a beállításjegyzék eléréséhez.This helps you, for example, access the Logger or the registry for creating other components that your component might need.

IWizardDialogController felületIWizardDialogController Interface

__interface IWizardDialogController : IUnknown  
{  
    void Initialize(ISettings *pSettings);  
    void InitPages(void);  
    void Start();  
    void Next();  
    void Finish();  
    void Previous();  
    int NumPages();  
    void Cancel();  

    HRESULT Focus(WizardButtons button);  
    HRESULT SetEnable(WizardButtons button, BOOL enable);  
    void ShowWarningMessage(LPCTSTR message);  
    void HideWarningMessage();  

    void ChangePage(size_t newIndex);  
    IUnknown *CurrentPage(void);  
    HRESULT GetCurrentTitle([out, retval] LPBSTR pDisplayName);  
};  

Ez az interfész csak belső használatra szolgál.This interface is for internal use only.

IWizardDialogView felületIWizardDialogView Interface

__interface IWizardDialogView : IUnknown  
{  
    HRESULT LoadBannerImage(LPCTSTR bannerFilename);  
    HRESULT LoadPage(LPCTSTR pageType, ISettingsProperties *pPageSettings, IWizardPageView **view);  
    HRESULT SetEnable(WizardButtons button, BOOL enable);  
    HRESULT Focus(WizardButtons button);  
    void EnableFinish(BOOL isFinish);  
    void Exit(int exitCode);  
    void ShowWarningMessage(LPCTSTR message);  
    void HideWarningMessage(void);  
    void SetTitle(LPCTSTR title);  
    void SetPageTitle(LPCTSTR title);  
    int ShowMessageBox(LPCTSTR message, LPCTSTR lpCaption, UINT uType);  
    HWND GetHwnd(void);  
    void UpdateFocus(void);  
};  

Ez az interfész csak belső használatra szolgál.This interface is for internal use only.

IWizardPage InterfaceIWizardPage Interface

__interface IWizardPage : IUnknown  
{  
    HRESULT SetPageSettings(ISettingsProperties *pPageSettings);  
    HINSTANCE GetInstanceHandle(void);  
    int GetDialogResourceId(void);  
    void WindowCreated(IWizardPageView *pView, IWizardPageContainer *pContainer);  
    void WindowShown(void);  
    void WindowHidden(void);  

    HRESULT NextClicked(void);  
    void ControlEvent(WORD eventId, WORD controlId);  
    void CommonControlEvent(WORD controlId, LPNMHDR pInfo, LPBOOL pCancel);  
    void UnhandledEvent(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja WizardPageImpl, így általában nem kell saját kezűleg ezen végrehajtásához.This interface is implemented by WizardPageImpl, so you will not typically have to implement this it yourself. A varázsló meghívja az összes, az alábbi módszerek, amikor hatással van az egyéni lapok az.The wizard calls all of these methods for you when it interacts with your custom pages.

IWizardPageContainer InterfaceIWizardPageContainer Interface

__interface IWizardPageContainer : IUnknown  
{  
    ILogger * Logger(void);  
    IPropertyBag * Properties(void);  
    HRESULT CreateInstance(LPCTSTR type, [out] IUnknown **ppInstance);  
    HRESULT GetService(REFIID iid, [out] IUnknown **ppInstance);  
    HRESULT ReplaceVariables(LPCTSTR source, [out] LPBSTR pDest);  
    HRESULT GotoPage(LPCTSTR pageName);  
    int ShowMessageBox(LPCTSTR message, LPCTSTR lpCaption, UINT uType);  
    BOOL InPreview(void);  
    HWND GetHwnd(void);  
};  
ÁttekintésOverview

Ez az interfész és a lap keresztül érhető el a tároló metódus (által megvalósított WizardPageImpl), és elérheti a varázsló különböző szolgáltatások.This interface is available to your page via the Container method (implemented by WizardPageImpl) and gives you access to various services of the wizard.

ILogger * Logger(void)ILogger * Logger(void)

Ezt a módszert használja az üzenetek ír a naplófájlba – például:Use this method to write messages to the log file—for example:

Logger()->Verbose(s_component, L"Message for log file");  
IPropertyBag * Properties(void)IPropertyBag * Properties(void)

Ez a metódus "memória" változókat, amelyek csak az UDI varázsló futtatása közben a memóriában képező tulajdonságok hozzáférést biztosít.This method provides access to “memory” variables, which are properties that are in memory only while the UDI Wizard is running. Ezek a tulajdonságok érhetők el más lapra kód vagy az XML-használatával a $memoryVarName$ szintaxist.These properties are available to other pages either in code or in the XML using the $memoryVarName$ syntax.

HRESULT CreateInstance(LPCTSTR type, [out] IUnknown **ppInstance)HRESULT CreateInstance(LPCTSTR type, [out] IUnknown **ppInstance)

Ez a módszer lehetővé teszi, hogy regisztrálva van egy új példányának létrehozása.This method allows you to create a new instance of any component that has been registered. Azonban érdemes használni a függvénye CreateInstance, mert az erős típusmegadású.However, it is better to use the template function CreateInstance, because it is strongly typed.

HRESULT GetService(REFIID iid, [out] IUnknown **ppInstance)HRESULT GetService(REFIID iid, [out] IUnknown **ppInstance)

Ez a módszer olyan szolgáltatás, amely regisztrálva van lekérését teszi lehetővé.This method allows you to retrieve a service that has been registered. Azonban érdemes hívja a GetService erős típusmegadású sablonfüggvény (használata helyett IUnknown).However, it is better to call the GetService template function, which is strongly typed (instead of using IUnknown).

HRESULT ReplaceVariables(LPCTSTR source, [out] LPBSTR pDest)HRESULT ReplaceVariables(LPCTSTR source, [out] LPBSTR pDest)

Ez a módszer munkanapon belül karakterlánc-értékek változók kezeli.This method handles working with variables inside string values. A tábla 51 és tábla 52 látható formátumokat támogatja.It supports the formats shown in Table 51 and Table 52.

Tábla 51.Table 51. HRESULT ReplaceVariablesHRESULT ReplaceVariables

FormátumbanFormat LeírásDescription
$Name$$Name$ Lecseréli a memória változó értékét ezzel a névvel (Ha nincs memória nevű változó, a "token" törlődik.)Replaces the value of a memory variable with this name (If there is no memory variable with the name, the “token” will be removed.)
%Name%%Name% Egy feladatütemezési változót vagy a környezeti változó.Either a task sequence variable or an environment variable. A sorrend a következőképpen történik:The order is as follows:

1. Használja az értékét a feladatütemezési változót, ha van ilyen.1. Use the value of a task sequence variable, if present.
2. Egy környezeti változó értékét használja, ha van ilyen.2. Use the value of an environment variable, if present.
3. Ellenkező esetben távolítsa el ezt a szöveget a karakterláncot.3. Otherwise, remove this text from the string.

Tábla 52.Table 52. HRESULT paraméterHRESULT Parameter

ParaméterParameter LeírásDescription
ForrásSource A bemeneti karakterlánc, amely tartalmazhat tetszőleges kombinációja $ és % változók vagy egyáltalán nincsThe input string, which can contain any combination of $ and % variables or none at all
pDestpDest A visszatérési tartalmazza a tábla 51 megfelelően lecseréli az összes jogkivonatok új karakterláncOn return, contains a new string that has all the tokens replaced according to Table 51
HRESULT GotoPage(LPCTSTR pageName)HRESULT GotoPage(LPCTSTR pageName)

Ez a módszer nem teljes körűen tesztelve.This method has not been fully tested. A lényege, hogy váltson közvetlenül egy adott lap a .config kiterjesztésű XML-fájlban meghatározottak szerint a lap neve alapján.The idea is that you can switch directly to a specific page based on the name of the page as defined in the .config XML file. A metódus hívása megkerüli a OnNextClicked a lapon.Calling this method bypasses the OnNextClicked on your page. Emellett szemlélteti ezt a módszert a rendszer nem változhat, így a saját kockázatára használhatja azt.In addition, the behavior of this method is subject to change, so use it at your own risk.

int ShowMessageBox (LPCTSTR üzenet, LPCTSTR lpCaption, UINT uType)int ShowMessageBox(LPCTSTR message, LPCTSTR lpCaption, UINT uType)

Ez a módszer egy üzenetet jelenít meg a szöveg és a felirat tegye.This method displays a message box with the text and caption that you provide. A uType paraméter értéke, megadhatja, hogy a MessageBox Win32 függvény.The uType parameter is any value that you can supply to the MessageBox Win32 function.

BOOL InPreview(void)BOOL InPreview(void)

Ez a metódus eredménye IGAZ, ha a varázsló "előzetes verziójú" módban indul el, úgy, hogy megadja a /előzetes váltani.This method returns TRUE if you launched the wizard in “preview” mode by supplying the /preview switch. Előnézeti módban a következő gomb soha le van tiltva.In preview mode, the Next button is never disabled. Ez a módszer lehetővé teszi megkerüléséhez szükséges kód előnézeti módban, például, hogy a hibát okozhat, ha nem rendelkezik érvényes adatokat a lapon.This method allows you to bypass code in preview mode, for example, that could cause issues when you do not have valid data on the page.

HWND GetHwnd(void)HWND GetHwnd(void)

Ez a metódus visszaadja a HWND a fő párbeszédpanel.This method returns the HWND for the main dialog box. Ez a módszer körültekintően használja.Use this method with care. Általában az UDI varázsló alkalmazásprogramozási felület célja, hogy soha nem dolgozunk közvetlenül ablak kezeli.Generally, the UDI Wizard application programming interface is designed so that you never work directly with window handles.

IWizardPageView felületIWizardPageView Interface

__interface IWizardPageView : IUnknown  
{  
    HRESULT GetControlWrapper(int itemId, DialogControlTypes controlType, IUnknown **ppControl);  
    HWND GetHwnd(void);  
    HWND GetControl(int itemId);  
    HRESULT Show (void);  
    HRESULT Hide(void);  
    HRESULT Focus(int itemId);  
    IWizardPage * Page(void);  
    IFormController * Form(void);  

    HRESULT FocusWizardButton(WizardButtons button);  
    HRESULT SetEnable(WizardButtons button, BOOL enable);  
    void ShowWarningMessage(LPCTSTR message);  
    void HideWarningMessage(void);  
};  

Ez az interfész érhető el a lap a kódhoz a nézet metódus (által megvalósított WizardPageImpl).This interface is available to the code in your page through the View method (implemented by WizardPageImpl).

HRESULT GetControlWrapper(int itemId, DialogControlTypes controlType, IUnknown *ppControl)HRESULT GetControlWrapper(int itemId, DialogControlTypes controlType, IUnknown *ppControl)

Az UDI varázsló burkolók, amelyeket valóban façades a lap vezérlői való kommunikáció.The UDI Wizard uses wrappers, which are really façades for interacting with the controls on your page. Ezek façades helyett a tényleges vezérlők megkönnyíti írási teszt lapon, mert utánzatait façades megadhatja a vizsgálatokból.Using these façades instead of the actual controls makes it much easier to write tests for your page, because you can provide mock façades from your tests.

Helyett ezzel a módszerrel közvetlenül, érdemes használni a GetControlWrapper sablon metódus, amely erős típusmegadású – például:Instead of using this method directly, it is better to use the GetControlWrapper template method, which is strongly typed—for example:

PComboBox m_pLanguagePackCombo;  
GetControlWrapper(View(), IDC_MY_COMBO, CONTROL_COMBO_BOX, &m_pCombo);  
HWND GetHwnd(void)HWND GetHwnd(void)

Ez a módszer az ablakleíró lapon adja vissza.This method returns the window handle for your page. Általában nem kell az ablakleíró elérésére.Generally, you should not need access to this window handle.

HWND GetControl(int itemId)HWND GetControl(int itemId)

Ha kell, akkor az ablakleíró lekérése egy vezérlőelemet a metódus hívása.If you must, you can call this method to get the window handle for a control on your page. (Célszerűbb hívja a GetControlWrapper sablon függvény).(It is better to call the GetControlWrapper template function).

HRESULT jelenjen meg (void)HRESULT Show (void)

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

HRESULT Hide(void)HRESULT Hide(void)

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

HRESULT Focus(int itemId)HRESULT Focus(int itemId)

A bevitel fókuszának értékre egy adott vezérlőt.Set the input focus to a specific control.

IWizardPage * Page(void)IWizardPage * Page(void)

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

IFormController * Form(void)IFormController * Form(void)

Ez a módszer csak belső használatra szolgál.This method is for internal use only.

HRESULT FocusWizardButton(WizardButtons button)HRESULT FocusWizardButton(WizardButtons button)

A varázsló gombokra állítja be a fókuszt. WizardButtons két értéke van: BackButton és NextButton.Sets the focus to one of the wizard’s buttons.WizardButtons has two values: BackButton and NextButton.

HRESULT SetEnable(WizardButtons button, BOOL enable)HRESULT SetEnable(WizardButtons button, BOOL enable)

A kérelem, hogy a varázsló gombokra engedélyezhetők és letilthatók.Request that one of the wizard buttons be enabled or disabled. A gomb nem egyeznek meg a kért állapotát.The button might not match the state that you request. Például, ha az UDI varázslót futtatja a /előzetes kapcsoló, a gombok mindig engedélyezve lesz.For example, if you run the UDI Wizard with the /preview switch, the buttons will always be enabled. WizardButtons két értéke van: BackButton és NextButton.WizardButtons has two values: BackButton and NextButton.

"void" ShowWarningMessage(LPCTSTR message)void ShowWarningMessage(LPCTSTR message)

Ez a módszer egy figyelmeztető üzenet az oldal tartalom területen alján jeleníti meg.This method displays a warning message at the bottom of the page content area. Ez az üzenet lehet a kívánt szöveget.This message can be any text you want.

void HideWarningMessage(void)void HideWarningMessage(void)

Egy figyelmeztető üzenet jelenik meg, ha hívása elrejtése ShowWarningMessage.Hide a warning message that you displayed with a call to ShowWarningMessage.

IXmlDocument felületIXmlDocument Interface

__interface IXmlDocument : IUnknown  
    HRESULT Load(LPCTSTR filename);  
    HRESULT LoadXml(LPCTSTR xml);  
    HRESULT Save(LPCWSTR filename);  
    HRESULT GetParseErrorMessage(LPBSTR pMessage);  
    HRESULT SelectNodes(LPCTSTR xpath, IXMLDOMNodeList **ppNodes);  
    HRESULT SelectSingleNode(LPCTSTR xpath, IXMLDOMNode **ppNode);  
    HRESULT AddSchema(LPCTSTR filename, LPCTSTR ns);  
    HRESULT AddAttribute(IXMLDOMNode *pNode, LPCWSTR name, LPCWSTR value);  
    HRESULT CreateNode(DOMNodeType type, LPCWSTR name, LPCWSTR ns, IXMLDOMNode **ppNode);  
};  
ÁttekintésOverview

Ez az interfész megvalósítja a ID_IXmlDocument összetevő, amely egy homlokzati úgy tervezték, hogy könnyebben c++ XML-dokumentumok kezelése.This interface is implemented by the ID_IXmlDocument component, which is a façade designed to make it easier to work with XML documents in C++.

HRESULT Load(LPCTSTR filename)HRESULT Load(LPCTSTR filename)

Ez a módszer az XML-dokumentum betölti a külső fájlból.This method loads an XML document from an external file. Adja vissza, S_OK Ha a fájl hiba nélkül lett betöltve, vagy S_FALSE hiba esetén.It returns S_OK if the file was loaded without errors or S_FALSE if an error occurred. Ha nem sikerül, a hibaüzenet a következő meghívásával kaphat GetParseErrorMessage.When there is an error, you can get the error message by calling GetParseErrorMessage.

HRESULT LoadXml(LPCTSTR xml)HRESULT LoadXml(LPCTSTR xml)

Ez a módszer az XML-dokumentum egy külső fájl helyett egy karakterláncból tölti be.This method loads an XML document from a string instead of an external file. Csak az XML-fájl olvasásához a forráskiszolgálón, a rendszer nem ugyanaz, mint a terhelés metódust.Other than the source for reading the XML, the behavior is the same as the Load method.

HRESULT Save(LPCWSTR filename)HRESULT Save(LPCWSTR filename)

Ez a módszer az XML-dokumentumot, amely a memóriában külső fájlba menti.This method saves the XML document that is in memory to an external file.

HRESULT GetParseErrorMessage(LPBSTR pMessage)HRESULT GetParseErrorMessage(LPBSTR pMessage)

Ez a módszer a következő hibaüzenettel új karakterláncot ad vissza az XML-dokumentum betöltésekor, ha van ilyen.This method returns a new string with the error message from loading the XML document, if any. Mindig adja vissza S_OK.It always returns S_OK.

HRESULT SelectNodes(LPCTSTR xpath, IXMLDOMNodeList **ppNodes)HRESULT SelectNodes(LPCTSTR xpath, IXMLDOMNodeList **ppNodes)

Ez a módszer lehetővé teszi az XPath kifejezések használatát csomópontok gyűjteménye lekérése a dokumentumot.This method allows you to use an XPath expression to retrieve a collection of nodes from the document. Mindig adja vissza S_OK.It always returns S_OK.

HRESULT SelectSingleNode(LPCTSTR xpath, IXMLDOMNode **ppNode)HRESULT SelectSingleNode(LPCTSTR xpath, IXMLDOMNode **ppNode)

Ez a módszer lehetővé teszi az XPath kifejezések használatával egy csomópont le a dokumentumot.This method allows you to use an XPath expression to retrieve one node from the document. Mindig adja vissza S_OK.It always returns S_OK.

HRESULT AddSchema(LPCTSTR filename, LPCTSTR ns)HRESULT AddSchema(LPCTSTR filename, LPCTSTR ns)

Ez a módszer egy külső sémafájl, ha be van töltve a séma az XML-dokumentum érvényesítéséhez használt nevét adja hozzá.This method adds the name of an external schema file that will be used to validate the schema of your XML document when it is loaded. Megadja, hogy a karakterlánc a névtér használható XPath lekérdezések, bár ez nem tesztelték.The namespace you provide is the string you can use in XPath queries, although this has not been tested.

HRESULT AddAttribute(IXMLDOMNode *pNode, LPCWSTR name, LPCWSTR value)HRESULT AddAttribute(IXMLDOMNode *pNode, LPCWSTR name, LPCWSTR value)

Ez a módszer új attribútum hozzáadása egy meglévő csomópont az XML-dokumentumban.This method adds a new attribute to an existing node in the XML document. Tekintse meg a tábla 53.See Table 53.

Tábla 53.Table 53. HRESULT AddAttributeHRESULT AddAttribute

ParaméterParameter LeírásDescription
pNodepNode A csomópont kívánt attribútum hozzáadásaThe node to which you want to add an attribute
NévName Az új attribútum neveName of the new attribute
ValueValue Az új attribútum értékeThe value for the new attribute
HRESULT CreateNode(DOMNodeType type, LPCWSTR name, LPCWSTR ns, IXMLDOMNode **ppNode)HRESULT CreateNode(DOMNodeType type, LPCWSTR name, LPCWSTR ns, IXMLDOMNode **ppNode)

Ez a metódushívás hozzon létre egy új csomópont:Call this method to create a new node:

Pointer<IXMLDOMNode> pNewChild  
pXmlDom->CreateNode(NODE_ELEMENT, L"MyElement", L"", &pNewChild);  

Miután létrehozott egy új csomópont, ezt hozzáadhatja gyermek egy másik csomópontra hívásával a szülő appendchild metódusban metódust.Once you create a new node, you can add it as a child to another node by calling the parent’s appendChild method.

Segédfüggvények találhatókHelper Functions

CreateInstance SablonfüggvényCreateInstance Template Function

HRESULT CreateInstance(IWizardPageContainer *pContainer, LPCTSTR type, I **ppObject)  

Ez a funkció IWizardPageContainer.h van definiálva, és egy típus szálbiztos burkoló biztosítanak a IWizardPageContainer -> CreateInstance módszer – például:This function is defined in IWizardPageContainer.h and provides a type-safe wrapper over the IWizardPageContainer->CreateInstance method—for example:

CreateInstance<IDirectory>(Container(), ID_Directory, &pDirectory);  

Ez a kód létrehoz egy új ID_Directory összetevő beolvasni a IDirectory adott összetevő felületét.This code creates a new ID_Directory component to retrieve the IDirectory interface of that component.

GetService Template FunctionGetService Template Function

void GetService(IWizardPageContainer *pContainer, I **ppService)  

Ez a funkció IWizardPageContainer.h van definiálva, és egy típus szálbiztos burkoló biztosítanak a IWizardPageContainer -> GetService módszer – például:This function is defined in IWizardPageContainer.h and provides a type-safe wrapper over the IWizardPageContainer->GetService method—for example:

GetService<ITSVariableBag>(Container(), &pTsBag);  

Ez a funkció lekéri a feladat feladatütemezési összetevő, amely támogatja a ITSVariableBag felületet.This function retrieves the task sequence component, which supports the ITSVariableBag interface. (A ITSVariableBag, TSVariables módszerét használhatja a WizardPageImpl osztály, hanem.)(For ITSVariableBag, you can use the TSVariables method of the WizardPageImpl class, instead.)

UDI varázsló Tervező konfigurációs fájl séma-hivatkozásUDI Wizard Designer Configuration File Schema Reference

Ez a fájl az UDI varázsló Designer fel.This file is consumed by the UDI Wizard Designer. Egy külön fájl egyéni dll fájlok, egyéni varázsló lap szerkesztők, egyéni feladatok vagy egyéni érvényesség-ellenőrzők tartalmazó jön létre.A separate file is created for each custom .dll file, which can contain custom wizard page editors, custom tasks, or custom validators. A fájl végén szerepelnie kell .config és találhatók a installation_folder\Bin\Config mappában (ahol installation_folder a mappába, amelyben az MDT van).The file must end with .config and reside in the installation_folder\Bin\Config folder (where installation_folder is the folder in which you installed MDT).

Tábla 54 az elemek az UDI varázsló Designer konfigurációs fájlban és azok leírásait sorolja fel.Table 54 lists the elements in the UDI Wizard Designer configuration file and their descriptions. A DesignerConfig eleme a gyökércsomópontját. ezt a hivatkozást.The DesignerConfig element is the root node for this reference.

Tábla 54.Table 54. Az UDI varázsló Tervező konfigurációs fájlban és azok leírásait elemeiElements in the UDI Wizard Designer Configuration File and Their Descriptions

Elem neveElement Name LeírásDescription
DesignerConfigDesignerConfig Adja meg az összes többi elem gyökerénekSpecifies the root for all other elements
DesignerMappingsDesignerMappings Olyan csoportok lapelemeiGroups a set of Pageelements
PagePage Adja meg a varázsló a varázsló segítségével módosíthatja a konfigurációs beállításait egy varázsló lapja UDI Designerben betöltését szerkesztőSpecifies a wizard page editor to be loaded in the UDI Wizard Designer, which is used to edit the configuration settings for a wizard page
ParamParam Adja meg a szülő átadott paraméter feladat vagy érvényesítő elem megfelel-e, és egy beállító a UDI varázsló konfigurációs fájlban Megjegyzés: Ehhez az elemhez attribútumokat eltérő, ha a felsőbb szintű a feladat vagy érvényesítő elemet.Specifies a parameter that is passed to the parent Task or Validator element and corresponds to a Setter element in the UDI Wizard configuration file Note: The attributes for this element are different if the parent is the Task or Validator element.
A feladatTask Adja meg a feladat könyvtárból feladatSpecifies a task within the task library
TaskItemTaskItem Adja meg a feladatnak átadott paraméterekSpecifies a group of parameters that are passed to the task
TaskLibraryTaskLibrary Olyan csoportok feladat elemeiGroups a set of Task elements
ÉrvényesítésiValidator Megadja a érvényesítő könyvtárból egy érvényesítőSpecifies a validator within the validator library
ValidatorLibraryValidatorLibrary Olyan csoportok érvényesítő elemeiGroups a set of Validator elements

DesignerConfigDesignerConfig

Ez az elem összes többi elem gyökerének határozza meg.This element specifies the root for all other elements.

Elem adataiElement Information

Tábla 55 információt nyújt a DesignerConfig elemet.Table 55 provides information about the DesignerConfig element.

Tábla 55.Table 55. DesignerConfig elem adataiDesignerConfig Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egyike: Az elem szükség.One: This element is required.
SzülőelemekParent elements NincsenekNone
TartalomContents DesignerMappings, TaskLibrary, ValidatorLibraryDesignerMappings, TaskLibrary, ValidatorLibrary
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample
<DesignerConfig>  
   + <TaskLibrary>  
   + <ValidatorLibrary>  
   + <DesignerMappings>  
</DesignerConfig>  

DesignerMappingsDesignerMappings

Ez az elem csoportok olyan lap elemek.This element groups a set of Page elements.

Elem adataiElement Information

Tábla 56 információt nyújt a DesignerMappings elemet.Table 56 provides information about the DesignerMappings element.

Tábla 56.Table 56. DesignerMappings elem adataiDesignerMappings Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy egy belül a DesignerConfig elem (Ez az elem nem kötelező, ha a nem egyéni varázslólap szerepelnek a dll-fájlt, amely megfelel a UDI varázsló Designer konfigurációs fájl.)Zero or one within the DesignerConfig element (This element is optional if there are no custom wizard page in the DLL that corresponds to this UDI Wizard Designer configuration file.)
SzülőelemekParent elements DesignerConfigDesignerConfig
TartalomContents PagePage
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample
<DesignerConfig>  
   + <TaskLibrary>  
   + <ValidatorLibrary>  
   - <DesignerMappings>  
        <Page DLL="SharedPages.dll"  
           Description="Used to display text that describes the current stagegroup"  
           Type="Microsoft.SharedPages.WelcomePage"  
           DisplayName="Welcome"   
           Image="Welcome_188.png"  
           DesignerType="Microsoft.Enterprise.UDIDesigner.CoreModules.Views.WelcomePageView"  
           DesignerAssembly="Microsoft.Enterprise.UDIDesigner.CoreModules.dll"/>  
        <Page DLL="OSDRefreshWizard.dll"  
           Description="Captures or restores user state data"  
           Type="Microsoft.OSDRefresh.UserStatePage"  
           DisplayName="User Data"  
           Image="UserState_188.png"  
           DesignerType="Microsoft.Enterprise.UDIDesigner.CoreModules.Views.UserStatePageView"  
           DesignerAssembly="Microsoft.Enterprise.UDIDesigner.CoreModules.dll"/>  
        <Page DLL="OSDRefreshWizard.dll"  
           Description="Allows selecting the image to install, target drive, and whether to format"  
           Type="Microsoft.OSDRefresh.VolumePage"  
           DisplayName="Volume"  
           Image="Volume_188.png"  
           DesignerType="Microsoft.Enterprise.UDIDesigner.CoreModules.Views.VolumePageView"  
           DesignerAssembly="Microsoft.Enterprise.UDIDesigner.CoreModules.dll"/>  
     </DesignerMappings>  
</DesignerConfig>  

LapPage

Ez az elem egy varázsló szerkesztő a varázsló pedig használatával módosíthatja a konfigurációs beállításait egy varázsló lapja UDI Designerben betöltését határozza meg.This element specifies a wizard page editor to be loaded in the UDI Wizard Designer, which is in turn used to edit the configuration settings for a wizard page.

Elem adataiElement Information

Tábla 57 információt nyújt a lap elemet.Table 57 provides information about the Page element.

Tábla 57.Table 57. Lap elem adataiPage Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több, a varázsló minden lapján definiált a DesignerMappings elemOne or more for each wizard page defined in the DesignerMappings element
SzülőelemekParent elements DesignerMappingsDesignerMappings
TartalomContents Bármely szabályos XML-tartalomAny well-formed XML content
ElemattribútumokElement Attributes

Tábla 58 attribútumait ismerteti a lap elem és az egyes leírását.Table 58 lists the attributes of the Page element and a description for each.

Tábla 58.Table 58. Attribútumok és a lap az elemhez tartozó értékekAttributes and Corresponding Values for the Page Element

AttribútumAttribute LeírásDescription
LeírásDescription Itt információkat nyújt azokról a paramétert, amely az UDI varázsló tervezőben megjelenő szövegSpecifies text that provides information about the parameter, which is displayed in the UDI Wizard Designer
DesignerAssemblyDesignerAssembly A varázsló szerkesztő társított DLL-fájl neve (a .dll kiterjesztésű fájlnak léteznie kell a installation_folder\Bin mappában (ahol installation_folder az a mappa, amelyben Ön telepített MDT.)Specifies the name of the .dll file associated with the wizard page editor (The .dll file must exist in the installation_folder\Bin folder (where installation_folder is the folder in which you installed MDT.)
DesignerTypeDesignerType A varázsló szerkesztő belül megadott .dll fájl nevét adja meg a DesignerAssembly attribútumot (ez nem a Microsoft .NET típusú a varázsló szerkesztővel, a teljes Microsoft .NET-névtér.)Specifies the name of the wizard page editor within the .dll file specified in the DesignerAssembly attribute (This is the Microsoft .NET type for the wizard page editor, with the fully qualified Microsoft .NET namespace.)
DisplayNameDisplayName A szerkesztő, az UDI varázsló tervezőben megjelenő felhasználóbarát neveSpecifies the user-friendly name of the page editor, which is displayed in the UDI Wizard Designer
DLLDLL A varázsló társított DLL-fájl neve (a .dll kiterjesztésű fájlnak léteznie kell a installation_folder\Templates\Distribution\Tools\platform mappában (ahol installation_folder az MDT telepítési mappáját és platform van x86 a 32 bites verziója vagy x64 van a 64 bites verziója.) Megjegyzés: Győződjön meg arról, hogy a dll-fájl processzorarchitektúrát megegyezik-e a telepített MDT-processzorarchitektúra.Specifies the name of the .dll file associated with the wizard page (The .dll file must exist in the installation_folder\Templates\Distribution\Tools\platform folder (where installation_folder is the folder in which you installed MDT and platform is x86 for the 32-bit version or x64 is for the 64-bit version.) Note: Ensure that the DLL processor architecture matches the MDT processor architecture installed. Például ha egy 32 bites MDT telepített, majd győződjön meg róla egy 32 bites DLL használja a varázsló oldalán.For example, if you installed a 32-bit version of MDT, then ensure you use a 32-bit DLL for the wizard page.
ImageImage Az oldal Portable Network Graphics (PNG) formátumú kép neve (a .png formátumú léteznie kell a installation_folder\Bin\Images mappában (ahol installation_folder van a Az MDT telepítési mappáját.)Specifies the name of an image of the page that is in Portable Network Graphics (PNG) format (The .png file must exist in the installation_folder\Bin\Images folder (where installation_folder is the folder in which you installed MDT.)
TípusType Adja meg a varázsló-szerkesztőt, és meg kell egyeznie a megnevezett használható, ha az egyéni oldal regisztrációjaSpecifies the wizard page editor and must match the named used when the custom page was registered
MegjegyzésekRemarks

Az UDI varázsló Designer használja a lap elem, például egy új varázsló az kezdeti XML-fájl létrehozásához.The UDI Wizard Designer uses the Page element like a template to create the initial XML for a new wizard. Az UDI varázsló Designer végez annak biztosításához, hogy a séma érvényesítése a lap és gyermekelemek formátuma érvénytelen.The UDI Wizard Designer performs schema validation to ensure that the Page and child elements have a valid format. Ez az elem biztosít az UDI varázsló lap típusa és az adatokat, amelyek az UDI varázsló Designer szerkesztheti, és hozzon létre egy egyéni szerkesztő használatával az ilyen típusú lapok közötti leképezést.This element provides a mapping between the UDI Wizard page type and the information that the UDI Wizard Designer needs to edit and create pages of this type using a custom page editor.

PéldaExample

Nincs.None.

ParamParam

Ezt az elemet adja meg a szülő átadott paraméter feladat vagy érvényesítő elem megfelel-e, és egy beállító a UDI varázsló konfigurációs fájlban.This element specifies a parameter that is passed to the parent Task or Validator element and corresponds to a Setter element in the UDI Wizard configuration file.

Megjegyzés

Ehhez az elemhez attribútumokat eltérő, ha a felsőbb szintű a feladat vagy érvényesítő elemet.The attributes for this element are different if the parent is the Task or Validator element.

Elem adataiElement Information

Tábla 59 információt nyújt a Param elemet.Table 59 provides information about the Param element.

Tábla 59.Table 59. Param elem adataiParam Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több, az egyes TaskItem vagy érvényesítő szülőelemOne or more for each TaskItem or Validator parent element
SzülőelemekParent elements TaskItem, érvényesítőTaskItem, Validator
TartalomContents Bármely szabályos XML-tartalomAny well-formed XML content
ElemattribútumokElement Attributes

Tábla 60 attribútumait ismerteti a Param elem és a leírását.Table 60 lists the attributes of the Param element and provides a description of each.

Tábla 60.Table 60. Attribútumok és a Param elemhez tartozó értékekAttributes and Corresponding Values for the Param Element

AttribútumAttribute LeírásDescription
LeírásDescription Itt információkat nyújt azokról a paramétert, amely az UDI varázsló tervezőben megjelenő szöveg Megjegyzés: Ez az attribútum értéke csak érvényes a érvényesítő elemet.Specifies text that provides information about the parameter, which is displayed in the UDI Wizard Designer Note: This attribute is valid only for the Validator element.
DisplayNameDisplayName Az érvényesítő paramétert, amely nem jelenik meg a megfelelő UDI varázslólap az UDI varázsló Designer felhasználóbarát nevét adja meg (Ez a név általában több leíró, mint a neve attribútum.) Megjegyzés: Ez az attribútum értéke csak érvényes a érvényesítő elemet.Specifies the user-friendly name of the validator parameter, which is displayed for the appropriate UDI Wizard page in the UDI Wizard Designer (This name is usually more descriptive than the Name attribute.) Note: This attribute is valid only for the Validator element.
NévName A feladat vagy érvényesítő, attól függően, hogy a szülőelem átadott paraméter neve (Ez az attribútum lesz a tulajdonság attribútum egy beállítására szolgáló elem az UDI varázsló konfigurációs fájl.) Megjegyzés: Ezzel a paraméterrel mindkét TaskItem és érvényesítő elemek szülő.Specifies the name of the parameter that is passed to the task or validator, depending on the parent element (This attribute will become the Property attribute in a Setter element in the UDI Wizard configuration file.) Note: This parameter is used for both TaskItem and Validator parent elements.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

A feladatTask

Ez az elem egy feladatot a feladatok könyvtára belül határozza meg.This element specifies a task within the task library.

Elem adataiElement Information

Tábla 61 információt nyújt a feladat elemet.Table 61 provides information about the Task element.

Tábla 61.Table 61. A feladat elem adataiTask Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több belül a TaskLibrary elem (Ez az elem nem kötelező Ha a TaskLibrary elem van megadva.)One or more within the TaskLibrary element (This element is not optional if the TaskLibrary element is specified.)
SzülőelemekParent elements TaskLibraryTaskLibrary
TartalomContents TaskItemTaskItem
ElemattribútumokElement Attributes

Tábla 62 attribútumait ismerteti a feladat elem és a leírását.Table 62 lists the attributes of the Task element and provides a description of each.

Tábla 62.Table 62. Attribútumok és a feladat az elemhez tartozó értékekAttributes and Corresponding Values for the Task Element

AttribútumAttribute LeírásDescription
LeírásDescription Itt információkat nyújt azokról a feladat, az UDI varázsló tervezőben megjelenő szövegSpecifies text that provides information about the task, which is displayed in the UDI Wizard Designer
DLLDLL A feladathoz kapcsolódó dll-fájl neve (a .dll kiterjesztésű fájlnak léteznie kell a installation_folder\Templates\Distribution\Tools\platform mappában (ahol installation_folder az MDT telepítési mappáját és platform van x86 a 32 bites verziója vagy x64 a 64 -bites verziója.)Specifies the name of the .dll file associated with the task (The .dll file must exist in the installation_folder\Templates\Distribution\Tools\platform folder (where installation_folder is the folder in which you installed MDT and platform is x86 for the 32-bit version or x64 for the 64-bit version.)
NévName A feladat, a megfelelő UDI varázslólapon és az UDI varázsló tervezőben megjelenő neveSpecifies the name of the task, which is displayed in the appropriate UDI Wizard page and in the UDI Wizard Designer
TípusType Adja meg a tevékenység típusát, amely a gyári beállításjegyzék regisztrálva és .dll kiterjesztésű fájlnak belül egy adott feladat meghívásához használtSpecifies the task type, which is registered with the factory registry and used to call a specific task within a .dll file
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

TaskItemTaskItem

Ez az elem megadja a feladatnak átadott paraméterek.This element specifies a group of parameters that are passed to the task.

Elem adataiElement Information

Tábla 63 információt nyújt a TaskItem elemet.Table 63 provides information about the TaskItem element.

Tábla 63.Table 63. TaskItem elem adataiTaskItem Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több, az egyes feladat elemOne or more for each Task element
SzülőelemekParent elements A feladatTask
TartalomContents ParamParam
ElemattribútumokElement Attributes

Tábla 64 attribútumait ismerteti a TaskItem elem és a leírását.Table 64 lists the attributes of the TaskItem element and provides a description of each.

Tábla 64.Table 64. Attribútum és TaskItem elemhez tartozó értékekAttribute and Corresponding Values for the TaskItem Element

AttribútumAttribute LeírásDescription
TípusType Megadja az elem típusa, amely az UDI varázsló konfigurációs fájl jön létre.Specifies the of element type that will be created in the UDI Wizard configuration file. Egy XML-elem, amely megfelel ennek az attribútumnak az értéke jön létre.An XML element will be created that corresponds to the value of this attribute. Például, ha ez az attribútum értéke fájl, majd egy fájl elem létrehozza az UDI varázsló konfigurációs fájlban.For example, if the value for this attribute is File, then a File element will be created in the UDI Wizard configuration file.

Jelenleg az egyetlen támogatott értékei a következők:Currently, the only values supported are:

- Fájl, ehhez a két Param gyermekelemek (egy Param rendelkező gyermek elemet a neve attribútum értékének beállítása forrásés egy másik Param rendelkező gyermek elemet a neve attribútum értékének beállítása cél)- File, which requires two Param child elements (one Param child element with the Name attribute set to Source and another Param child element with the Name attribute set to Dest)
- A Setter, ami megköveteli, hogy egy Param gyermekelem- Setter, which requires one Param child element
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

TaskLibraryTaskLibrary

Ez az elem csoportok olyan feladat elemek.This element groups a set of Task elements.

Elem adataiElement Information

Tábla 65 információt nyújt a TaskLibrary elemet.Table 65 provides information about the TaskLibrary element.

Tábla 65.Table 65. TaskLibrary elem adataiTaskLibrary Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy egy belül a DesignerConfig elem (Ez az elem nem kötelező, ha a nincsenek egyéni tevékenységek a dll-fájl, amely megfelel a UDI varázsló Designer konfigurációs fájl.)Zero or one within the DesignerConfig element (This element is optional if there are no custom tasks in the DLL that correspond to this UDI Wizard Designer configuration file.)
SzülőelemekParent elements DesignerConfigDesignerConfig
TartalomContents A feladatTask
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample
<DesignerConfig>  
   - <TaskLibrary>  
        +<Task DLL="" Description="Executes a process with the given command line." Type="Microsoft.Wizard.ShellExecuteTask" Name="Shell Execute Task">  
        +<Task DLL="OSDRefreshWizard.dll" Description="Discovers supported applications for install." Type="Microsoft.OSDRefresh.AppDiscoveryTask" Name="Application Discovery">  
        +<Task DLL="SharedPages.dll" Description="Check to ensure a wired network connection is available." Type="Microsoft.SharedPages.WiredNetworkTask" Name="Wired Network Check">  
        +<Task DLL="OSDRefreshWizard.dll" Description="Check to ensure power source is AC (not battery)." Type="Microsoft.OSDRefresh.ACPowerTask" Name="AC Power Check">  
        +<Task DLL="" Description="Check to ensure power source is AC (not battery)." Type="Microsoft.Wizard.CopyFilesTask" Name="Copy Files Task">  
     </TaskLibrary>  
   + <ValidatorLibrary>  
   + <DesignerMappings>  
</DesignerConfig>  

ÉrvényesítésiValidator

Ez az elem egy érvényesítő a érvényesítő könyvtárból határozza meg.This element specifies a validator within the validator library.

Elem adataiElement Information

Tábla 66 információt nyújt a érvényesítő elemet.Table 66 provides information about the Validator element.

Tábla 66.Table 66. Érvényesítési elem adataiValidator Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül a ValidatorLibrary elem (Ez az elem nem kötelező.)Zero or more within the ValidatorLibrary element (This element is optional.)
SzülőelemekParent elements ValidatorLibraryValidatorLibrary
TartalomContents ParamParam
ElemattribútumokElement Attributes

Tábla 67 attribútumait ismerteti a érvényesítő elem és a leírását.Table 67 lists the attributes of the Validator element and provides a description of each.

67-es tábla.Table 67. Attribútumok és érvényesítő elemhez tartozó értékekAttributes and Corresponding Values for the Validator Element

AttribútumAttribute LeírásDescription
LeírásDescription Itt információkat nyújt azokról az érvényesítő, az UDI varázsló tervezőben megjelenő szövegSpecifies text that provides information about the validator, which is displayed in the UDI Wizard Designer
DisplayNameDisplayName Az érvényesítő jelennek meg az UDI varázsló Designer felhasználóbarát nevét adja meg (Ez a név általában több leíró, mint a neve attribútum.)Specifies the user-friendly name of the validator displayed in the UDI Wizard Designer (This name is usually more descriptive than the Name attribute.)
DLLDLL Az érvényesítő társított DLL-fájl neve (a .dll kiterjesztésű fájlnak léteznie kell a installation_folder\Templates\Distribution\Tools\platform mappában (ahol installation_folder az MDT telepítési mappáját és platform van x86 a 32 bites verziója vagy x64 a 64 bites verziója.)Specifies the name of the .dll file associated with the validator (The .dll file must exist in the installation_folder\Templates\Distribution\Tools\platform folder (where installation_folder is the folder in which you installed MDT and platform is x86 for the 32-bit version or x64 for the 64-bit version.)
NévName Az érvényesítő, a megfelelő UDI varázslólapon és az UDI varázsló tervezőben megjelenő neveSpecifies the name of the validator, which is displayed in the appropriate UDI Wizard page and in the UDI Wizard Designer
TípusType Érvényesítési típusa, amelyet a rendszer a beállításjegyzék tényező regisztrált .dll kiterjesztésű fájlnak belül egy adott érvényesítő meghívásához használtSpecifies the validator type, which is registered with the registry factor and used to call a specific validator within a .dll file
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

ValidatorLibraryValidatorLibrary

Ez az elem csoportok olyan érvényesítő elemek.This element groups a set of Validator elements.

Elem adataiElement Information

Tábla 68-as információt nyújt a ValidatorLibrary elemet.Table 68 provides information about the ValidatorLibrary element.

Tábla 68-as.Table 68. ValidatorLibrary elem adataiValidatorLibrary Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy egy belül a DesignerConfig elem (az elem állapota nem kötelező, ha nincs egyéni érvényesség-ellenőrzők a dll-fájl, amely megfelel a UDI varázsló Designer konfigurációs fájl.)Zero or one within the DesignerConfig element (This element is optional if there are no custom validators in the DLL that correspond to this UDI Wizard Designer configuration file.)
SzülőelemekParent elements DesignerConfigDesignerConfig
TartalomContents ÉrvényesítésiValidator
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample

< DesignerConfig> + < TaskLibrary> -< ValidatorLibrary> + < érvényesítő DLL = "" leírás "Mező szövegét szükséges" Type="Microsoft.Wizard.Validation.NonEmpty =" Name = "NonEmpty"> + < érvényesítő DLL = "" leírása = "Nem engedélyezi a bizonyos karaktereket mező" Type="Microsoft.Wizard.Validation.InvalidChars" név = "InvalidChars"> + < érvényesítő DLL = "" leírás = "Egy előre definiált mintát kell követnie" típus = " Microsoft.Wizard.Validation.RegEx"Name ="NamedPattern"> + < érvényesítő DLL =" "leírása Type="Microsoft.Wizard.Validation.RegEx "Tartalma egy adott reguláris kifejezésnek egyeznie kell" = "név ="RegEx"> < / ValidatorLibrary> + < DesignerMappings>< / DesignerConfig><DesignerConfig> + <TaskLibrary> - <ValidatorLibrary> +<Validator DLL="" Description="Requires text in a field" Type="Microsoft.Wizard.Validation.NonEmpty" Name="NonEmpty"> +<Validator DLL="" Description="Doesn't allow certain characters to be in a field" Type="Microsoft.Wizard.Validation.InvalidChars" Name="InvalidChars"> +<Validator DLL="" Description="Must follow a pre-defined pattern" Type="Microsoft.Wizard.Validation.RegEx" Name="NamedPattern"> +<Validator DLL="" Description="Require the contents match a regular expression" Type="Microsoft.Wizard.Validation.RegEx" Name="RegEx"> </ValidatorLibrary> + <DesignerMappings></DesignerConfig>

UDI varázsló Tervező-hivatkozásUDI Wizard Designer Reference

vezérlőkControls

A létrehozásához használt egyéni varázslólap szerkesztők használatra az UDI varázsló Designer vezérlőelemek WPF UserControl példányok.The controls used to create custom wizard page editors for use in the UDI Wizard Designer are WPF UserControl instances. Tábla 69 a vezérlőket, amelyek segítségével hozzon létre egyéni varázsló lap szerkesztők sorolja fel.Table 69 lists the controls that you can use to create custom wizard page editors.

69-es tábla.Table 69. Egyéni varázsló lap szerkesztők létrehozásához használható vezérlőkControls That Can Be Used to Create Custom Wizard Page Editors

vezérlőControl LeírásDescription
CollectionTControlCollectionTControl Ez a vezérlő tárolt adatok szerkesztésére szolgáló a adatok elemet egy lap elemet.This control is used to edit data stored in the Data element within a Page element.
FieldElementControlFieldElementControl Ez a vezérlő mező, amelyhez általában van csatolva a TextBox vezérlővel, amely a .xaml oldalon szerkesztése szolgál.This control is used to edit a field, which is typically linked to a TextBox control on the .xaml page.
SetterControlSetterControl Ez a vezérlő értékének módosításához szolgál egy beállító a UDI varázsló konfigurációs fájlban.This control is used to modify the value of a setter element in the UDI Wizard configuration file.

CollectionTControlCollectionTControl

Ez a vezérlő az adatok szerkesztéséhez sok képességeket biztosít.This control provides many capabilities for editing data. A legjobb módja a vezérlő használata, lásd: a minta, amely bemutatja, hogyan szerkesztheti a lap az adatok adatok elemet.The best way to learn how to use this control is to look at the sample, which shows how to edit data under a page’s Data element. Különösen a minta bemutatja, hogyan hozzáadása, eltávolítása és szerkesztése elemeknek a vezérlőn.In particular, the sample shows how to add, remove, and edit items in this control.

FieldElementControlFieldElementControl

A vezérlő segítségével egy mező, amely általában csatolva van egy szövegmező vezérlőelem .xaml lapon.Use this control to edit a field, which is typically linked to a TextBox control on the .xaml page.

PéldaExample

A következő cikkből .xaml fájlból történő használatát mutatja a FieldElementControl konfigurálása az alapértelmezett érték mező használatával gyermek varázsló oldalon szövegmező vezérlő:The following excerpt from an .xaml file illustrates the use of the FieldElementControl to configure the default value for a field on a wizard page using a child TextBox control:

<Controls:FieldElementControl  
Width="450"  
Margin="0,5"  
FieldData="{Binding DataContext.Location, ElementName=ControlRoot}"  
HeaderText="Location Combo Box"  
InstructionText="Here you can configure the behavior of the location combo box."  
HideValidationTab="True">  

<TextBox Text="{Binding FieldData.DefaultValue,  
 UpdateSourceTrigger=PropertyChanged,  
 Mode=TwoWay}"/>  
</Controls:FieldElementControl>  
TulajdonságokProperties
FieldDataFieldData

A karakterlánc típusú tulajdonság történő összekapcsolására vonatkozó információkat tartalmaz a FieldElementControl az alapul szolgáló XML-mező.This string property contains information for connecting the FieldElementControl to the underlying XML for the field. A kapcsolat az oldal szerkesztő illesztőfelület egyik tulajdonság.The connection is made to a property of the page editor interface. A következő cikkből .xaml fájlból történő használatát mutatja a FieldData tulajdonság:The following excerpt from an .xaml file illustrates the use of the FieldData property:

FieldData="{Binding DataContext.Location, ElementName=ControlRoot}"  

Az a cikkből, a lap szerkesztő felület neve ControlRoot és az van megadva a ElementName paraméter.In this excerpt, the page editor interface is called ControlRoot and is specified in the ElementName parameter. A kötés végez a DataContext.Location tulajdonsága a ControlRoot lap szerkesztő felületet.The binding is performed to the DataContext.Location property of the ControlRoot page editor interface. A DataContext elemet mutató nézet modell a lap elem UDI varázsló konfigurációs fájlban.DataContext is a view model that points to the Page element within the UDI Wizard configuration file. Hely tulajdonság, amely a lehetséges helyek listáját adja vissza, és határozza meg a nézet egy adatok elem UDI varázsló konfigurációs fájlban.Location is a property of the view that returns a list of the possible locations and is defined by a Data element within the UDI Wizard configuration file. Határozza meg minden hely egy DataItem elem UDI varázsló konfigurációs fájlban.Each location is defined by a DataItem element within the UDI Wizard configuration file.

HeaderTextHeaderText

A karakterlánc típusú tulajdonság lehetővé teszi egy fejléc a FieldElementControl vezérlő.This string property allows you to specify a header for the FieldElementControl control. A fejléc úgy működik, mint a vezérlő címét, és félkövér, narancssárga szöveg jelenik meg azonnal a vezérlő fölé formátumúak.The header acts as a title for the control and is formatted as bold, orange text displayed immediately above the control.

InstructionTextInstructionText

A karakterlánc típusú tulajdonság lehetővé teszi az információs szöveget a FieldElementControl vezérlő.This string property allows you to specify informational text for the FieldElementControl control. Általában a szöveg segítségével adjon meg egy rövid leírást a mező, és azt ismertetik, hogyan befolyásolja a mező konfigurálása a varázsló megfelelő lapján.Typically, the text is used to provide a brief description of the field and explain how configuring the field affects the corresponding wizard page.

HideEnableButtonHideEnableButton

Ez a logikai tulajdonság lehetővé teszi, hogy látható-e a gomb közötti állapota változik vezérlését feloldva és zárolt (engedélyezve vagy letiltva).This Boolean property allows you to control the visibility of the button that changes state between Unlocked and Locked (enabled or disabled). Ha beállítása:If set to:

  • Igaz, a gomb nem láthatóTrue, the button is not visible

  • Hamis, a gomb akkor jelenik meg (Ez az az alapértelmezett érték.)False, the button is visible (This is the default value.)

HideDefaultTabHideDefaultTab

Ez a logikai tulajdonság lehetővé teszi, hogy látható-e a vezérlő segítségével állítsa be az alapértelmezett értéket tartalmazó szakasz vezérlését.This Boolean property allows you to control the visibility of the section that contains the control used to set the default value. A tulajdonság egy lapon hivatkozik, de nincs nincs lap a FieldElementControl , de ahelyett, hogy lehet-e rejtett szakasz.Although the property refers to a tab, there is no tab on the FieldElementControl but rather a section that can be hidden. Ha beállítása:If set to:

  • Igaz, a szakasz nem látható el.True, the section is not visible

  • Hamis, a szakaszban látható (Ez az az alapértelmezett érték.)False, the section is visible (This is the default value.)

HideBorderHideBorder

Ez a logikai tulajdonság lehetővé teszi, hogy látható-e a mező vezérlő szegélyének vezérlését.This Boolean property allows you to control the visibility of the border around the field control. Ha beállítása:If set to:

  • Igaz, a szegély nem látható el.True, the border is not visible

  • Hamis, a szegély látható (Ez az az alapértelmezett érték.)False, the border is visible (This is the default value.)

HideImageHideImage

Ez a logikai tulajdonság lehetővé teszi a vezérlő látható-e a képet, amely a FieldImageSource tulajdonság konfigurálja.This Boolean property allows you to control the visibility of the image that the FieldImageSource property configures. Ha beállítása:If set to:

  • Igaz, a kép nem látható el.True, the image is not visible

  • Hamis, a kép akkor látható (Ez az az alapértelmezett érték.)False, the image is visible (This is the default value.)

HideValidationTabHideValidationTab

Ez a logikai tulajdonság lehetővé teszi, hogy látható-e az érvényesítők listájának kezelése ahol szakaszban vezérlését.This Boolean property allows you to control the visibility of the section where the list of validators is managed. A tulajdonság egy lapon hivatkozik, de nincs nincs lap a FieldElementControl , de ahelyett, hogy lehet-e rejtett szakasz.Although the property refers to a tab, there is no tab on the FieldElementControl but rather a section that can be hidden. Ha beállítása:If set to:

  • Igaz, a szakasz nem látható el.True, the section is not visible

  • Hamis, a szakaszban látható (Ez az az alapértelmezett érték.)False, the section is visible (This is the default value.)

HideSummaryTabHideSummaryTab

Ez a logikai tulajdonság lehetővé teszi, hogy látható-e a szakasz az összefoglaló felirata konfigurálja vezérlését.This Boolean property allows you to control the visibility of the section in which you configure the field summary caption. A felirat és a megfelelő értéket a mezőből jelenik meg egy SummaryPage varázsló laptípus egy szakaszban folyamatból.The caption and corresponding value from the field are displayed on a SummaryPage wizard page type in a stage flow. A tulajdonság egy lapon hivatkozik, de nincs nincs lap a FieldElementControl , de ahelyett, hogy lehet-e rejtett szakasz.Although the property refers to a tab, there is no tab on the FieldElementControl but rather a section that can be hidden. Ha beállítása:If set to:

  • Igaz, a szakasz nem látható el.True, the section is not visible

  • Hamis, a szakaszban látható (Ez az az alapértelmezett érték.)False, the section is visible (This is the default value.)

HideTaskSequenceTabHideTaskSequenceTab

Ez a logikai tulajdonság lehetővé teszi, hogy látható-e a szakaszban konfigurálhatja a feladatütemezési változó, amely megfelel a mező vezérlését.This Boolean property allows you to control the visibility of the section in which you configure the task sequence variable that corresponds to the field. A tulajdonság egy lapon hivatkozik, de nincs nincs lap a FieldElementControl , de ahelyett, hogy lehet-e rejtett szakasz.Although the property refers to a tab, there is no tab on the FieldElementControl but rather a section that can be hidden. Ha beállítása:If set to:

  • Igaz, a szakasz nem látható el.True, the section is not visible

  • Hamis, a szakaszban látható (Ez az az alapértelmezett érték.)False, the section is visible (This is the default value.)

SetterControlSetterControl

Ez a vezérlő értékének módosításához használja a beállító a UDI varázsló konfigurációs fájlban.Use this control to modify the value of a Setter element in the UDI Wizard configuration file. Ez a vezérlő tartalmaz egy alárendelt vezérlő értékének módosításához használja a beállító elemet.This control contains a child control used to modify the value of the setter element.

PéldaExample

A következő cikkből .xaml fájlból történő használatát mutatja a SetterControl módosítani egy beállító nevű elem KeyLocationSetter használ egy alárendelt Szövegmező vezérlő.The following excerpt from an .xaml file illustrates the use of the SetterControl to modify a Setter element named KeyLocationSetter using a child TextBox control.

<Controls:SetterControl Margin="5"  
        Width="450"  
        HeaderText="Title text"  
        SetterData="{Binding KeyLocationSetter}"   
        InstructionText="What this means…"  
        HorizontalAlignment="Left">  

    <TextBox  
                   Margin="0,3"  
                   Text="{Binding SetterData.SetterValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"  
    />  

</Controls:SetterControl>  
TulajdonságokProperties
SetterDataSetterData

Ez a nézet vagy a nézet modell, amely kapcsolódik a beállító tulajdonság kötni kell.You need to bind this to a property of your view or view model that connects to the setter. Így hasonlít hogyan kellene egyik mezőjére kötni a leírtak a FieldElementControl.Doing so is similar to how you would bind to a field, as described for the FieldElementControl.

HeaderTextHeaderText

Ez a tulajdonság a vezérlő fejlécében megjelenő szöveg megadását teszi lehetővé.This property allows you to set the text that will appear in the header of the control. Gondolja át, hogy ez a tulajdonság egy címeként vezérlő; Alapértelmezés szerint jelenik meg a félkövérrel szedett, narancssárga szöveg.Think of this property as a title for the control; by default, it appears as bold, orange text.

InstructionTextInstructionText

Ez a tulajdonság beállítása a fejléc alatt megjelenő szöveg – általában szólítja fel a felhasználót, az egyéni szerkesztő időpontját és okát a tőle szeretné mező viselkedését befolyásoló útmutató szöveg.Set this property to the text you want to appear below the header—typically instruction text that tells the user of your custom editor when and why he or she would want to modify the behavior of the field.

FelületekInterfaces

Tábla 70 a felületek, amelyek segítségével hozzon létre egyéni varázsló lap szerkesztők sorolja fel.Table 70 lists the interfaces that you can use to create custom wizard page editors.

Tábla 70.Table 70. Egyéni varázsló lap szerkesztők létrehozására szolgáló felületekInterfaces That Can Be Used to Create Custom Wizard Page Editors

InterfaceInterface LeírásDescription
IDataServiceIDataService Ezen a felületen mezők csatlakozzon a adatok elemekbe az UDI varázsló konfigurációs fájlban.Use this interface to connect fields to the Data elements in the UDI Wizard configuration file.
IMessageBoxServiceIMessageBoxService Ez az interfész módszereket, amelyek megjelenítendő üzenet mezőbe hozzáférést biztosít.This interface provides access to methods that you can use to display message boxes.

IDataServiceIDataService

Ez az interfész több tulajdonságait és metódusait tartalmazza, de csak egy tulajdonságot, amelyet például szükség van.This interface contains several properties and methods, but there is only one property that you are like to need. Ez a tulajdonság az itt dokumentált lehetőségektől egyetlen.That property is the only one documented here.

Ez az osztály az ilyen kód használatával felületre mutató beszerzése használhatja függőségi beszúrást:You can use dependency injection to obtain a pointer to this interface using code like this in your class:

[Dependency]  
public IDataService DataService { get; set; }  
TulajdonságokProperties

Tábla 71 tulajdonságai a IDataService felületet.Table 71 lists the properties for the IDataService interface.

Tábla 71.Table 71. A IDataService csatoló tulajdonságaiProperties for the IDataService Interface

InterfaceInterface LeírásDescription
CurrentPageCurrentPage Ez a tulajdonság férhet hozzá az XML elemeket, attribútumokat és alatti környezetében szerkeszti az UDI varázsló konfigurációs fájl az aktuális oldalonThis property provides access to the XML elements, attributes, and values beneath the context of the current page being edited in the UDI Wizard configuration file
CurrentPageCurrentPage
XElement CurrentPage { get; set; }  

Ez a tulajdonság az XML-hozzáférést biztosít az aktuális lapon.This property provides access to the XML for the current page. Soha nem célszerű ezt a tulajdonságot azonban szabadon módosíthatja az XML lapon.You should never set this property, but you are free to modify the XML for your page. A minta-szerkesztőt az XML-fájl módosítható példákat mutat.The sample page editor shows examples of modifying the XML. Ez a tulajdonság elsősorban akkor, ha egyéni adatokat használja.You use this property primarily when you have custom data. Mezőit és tulajdonságait (Setter), az előre elkészített szabályozza, hogy az összes műveletek végrehajtására is használhatja.For fields and properties (setters), you can use prebuilt controls that take care of all the details.

IMessageBoxServiceIMessageBoxService

Ez az interfész módszereket, amelyek megjelenítendő üzenet mezőbe hozzáférést biztosít.This interface provides access to methods that you can use to display message boxes. Előfordulhat, hogy lehet szeretné megtudni, hogy miért van szükség egy felülete üzenetpanel megjelenítése.You may be wondering why you need an interface to display a message box. A valóságban, hogy nem: Microsoft miatt ez a Tervező-lapok automatikus tesztek írásakor támogatások használ, ez az interfész a kódban.The reality is that you do not: Microsoft uses this interface with in code, because it aids in writing automated tests for designer pages.

Azonban ezekkel a módszerekkel adjon meg egy hasznos előnye: A párbeszédpanelek mindig rendelkezik a "tulajdonos" állítsa be az UDI varázsló, amely biztosítja, hogy a párbeszédpanel van csoportosítva megfelelően a fő ablakot.However, using these methods does provide one useful benefit: The dialog boxes always have the “owner” set to the UDI Wizard, which ensures that the dialog box is grouped correctly with the main window.

Ez az osztály az ilyen kód használatával felületre mutató beszerzése használhatja függőségi beszúrást:You can use dependency injection to obtain a pointer to this interface using code like this in your class:

[Dependency]  
public IMessageBoxService MessageBoxes { get; set; }  
MódszerekMethods

Tábla 72 metódusait tartalmazza a IMessageBoxService felületet.Table 72 lists the methods for the IMessageBoxService interface.

Tábla 72.Table 72. A IMessageBoxService felület módszereiMethods for the IMessageBoxService Interface

MódszerMethod LeírásDescription
ShowMessageBoxShowMessageBox A túlterhelt metódusnak üzenetpanel megjelenítése a következő tagokat a következőkre használható:This overloaded method is used to display a message box with the following members:

- ShowMessageBox (üzenet karakterlánc, karakterlánc felirat, MessageBoxImage ikon)- ShowMessageBox(String message, String caption, MessageBoxImage icon)
- ShowMessageBox (üzenet karakterlánc, karakterlánc felirat, MessageBoxButton gomb, MessageBoxImage ikon)- ShowMessageBox(string message, string caption, MessageBoxButton button, MessageBoxImage icon)
- ShowMessageBox(Exception exception)- ShowMessageBox(Exception exception)
ShowDialogWindowShowDialogWindow Ez a metódus használatával hozzon létre egy új párbeszédpanel.Use this method to create a new dialog box.
ShowWizardWindowShowWizardWindow Ez a módszer használatával megjelenítheti a belül egy párbeszédpanelt, amely tartalmaz egy egyéni szerkesztő következő és vissza navigációs gombjai.Use this method to display a custom editor inside a dialog box that includes Next and Back buttons for navigation.
ShowMessageBoxShowMessageBox

Ez a módszer egy üzenetet jelenít meg, hogy az egyéni varázsló szerkesztő gyermeke.This method displays a message box that is a child of the custom wizard page editor. Ez a tag túl van terhelve: Tábla 73 listáját a tagok és egy rövid leírását tartalmazza.This member is overloaded: Table 73 contains a list of the members and a brief description of each. A minden tag (beleértve a szintaxist, a használat és a példákat) kapcsolatos részletes információkért felel meg minden egyes tagjára szakaszban talál.For complete information about each member (including syntax, usage, and examples), see the section that corresponds to each member.

Tábla 73.Table 73. A ShowMessagBox metódus túlterhelt tagokOverloaded Members for the ShowMessagBox Method

TagMember LeírásDescription
ShowMessageBox (üzenet karakterlánc, karakterlánc felirat, MessageBoxImage ikon)ShowMessageBox(String message, String caption, MessageBoxImage icon) Egy üzenetet jelenít meg egy ikon és egy OK gombDisplays a message box with an icon and an OK button
ShowMessageBox (üzenet karakterlánc, karakterlánc felirat, MessageBoxButton gomb, MessageBoxImage ikon)ShowMessageBox(string message, string caption, MessageBoxButton button, MessageBoxImage icon) Egy üzenetet jelenít meg egy ikont és különböző kombináció gombokDisplays a message box with an icon and different possible combinations of buttons
ShowMessageBox(Exception exception)ShowMessageBox(Exception exception) Egy üzenetet jelenít meg, amely tájékoztatást ad azokról a kivételt, és nem egy OK gombDisplays a message box that provides information about an exception and has an OK button
ShowMessageBox (üzenet karakterlánc, karakterlánc felirat, MessageBoxImage ikon)ShowMessageBox(String message, String caption, MessageBoxImage icon)
void ShowMessageBox(String message, String caption, MessageBoxImage icon);  

Ez a módszer egy üzenetet jelenít meg az egy OK gombra.This method displays a message box with an OK button. Tekintse meg a tábla 74.See Table 74.

Tábla 74.Table 74. A ShowMessageBox(String message, String caption, MessageBoxImage icon) metódus paramétereitParameters for the ShowMessageBox(String message, String caption, MessageBoxImage icon) Method

ParaméterParameter LeírásDescription
Üzenetmessage Milyen üzenet jelenjen meg az üzenet mezőbe tartalom területénThe message to display in the content area of the message box
captioncaption A párbeszédpanel címsorában megjelenítendő szövegThe text to show in the title bar of the dialog box
iconicon Az üzenet mezőbe megjeleníteni kívánt ikont típusaThe type of icon to show in the message box
ShowMessageBox (üzenet karakterlánc, karakterlánc felirat, MessageBoxButton gomb, MessageBoxImage ikon)ShowMessageBox(string message, string caption, MessageBoxButton button, MessageBoxImage icon)
MessageBoxResult ShowMessageBox(string message, string caption, MessageBoxButton button, MessageBoxImage icon);  

Ez a módszer egy üzenetet jelenít meg beállított gombok jelenjenek meg, és jelentéseket, mely gombra kattint.This method displays a message box with the set of buttons you want shown and reports which button you clicked. Tekintse meg a tábla 75.See Table 75.

Tábla 75.Table 75. A ShowMessageBox(string message, string caption, MessageBoxButton button, MessageBoxImage icon) metódus paramétereitParameters for the ShowMessageBox(string message, string caption, MessageBoxButton button, MessageBoxImage icon) Method

ParaméterParameter LeírásDescription
Üzenetmessage Milyen üzenet jelenjen meg az üzenet mezőbe tartalom területénThe message to display in the content area of the message box
captioncaption A párbeszédpanel címsorában megjelenítendő szövegThe text to show in the title bar of the dialog box
buttonbutton Gombok megjelenítéseWhich buttons to show
iconicon Az üzenet mezőbe megjeleníteni kívánt ikont típusaThe type of icon to show in the message box
ShowMessageBox (kivétel kivétel)ShowMessageBox(Exception exception)
void ShowMessageBox(Exception exception);  

Ez a módszer egy üzenetet jelenít meg, amely jelent kivételt adatokat.This method displays a message box that reports information about an exception. Az üzenet mezőbe rendelkezik egyetlen OK gombra.This message box has a single OK button. Tekintse meg a tábla 76.See Table 76.

Tábla 76.Table 76. A ShowMessageBox(Exception exception) metódus paramétereitParameters for the ShowMessageBox(Exception exception) Method

ParaméterParameter LeírásDescription
exceptionexception A jelentés kívánt kivétel (használja a párbeszédpanel kivétel. Üzenet szerint.)The exception that you want to report (The dialog box uses exception.Message as the contents.)
ShowDialogWindowShowDialogWindow
void ShowDialogWindow(Type viewType, DialogInteraction dialogPayload);  

Ezzel a módszerrel hoz létre egy új párbeszédpanel, a tartalma, amelynek az a szöveg meg fogja tartalmazni az viewType paraméter.This method creates a new dialog box, the contents of which is the text you supply in the viewType parameter. Az UDI Designer létrehoz egy új példányt az ilyen típusú, és becsomagolja azt egy párbeszédpanel, amelyen OK és Mégse gombokat.The UDI Designer creates a new instance of this type and wraps it in a dialog box that has OK and Cancel buttons.

Adatok átadása a vezérlő dialogPayload paraméter használatával.You pass data to your control using the dialogPayload parameter. A SampleEditor is rendelkezik az SDK-könyvtár megoldás Ez a funkció használata.The SampleEditor solution in the SDK directory has an example of how to use this functionality.

ShowWizardWindowShowWizardWindow
void ShowWizardWindow(Type viewType, DialogInteraction dialogPayload);  

Ez a módszer lehetővé teszi a belül egy párbeszédpanelt, amely tartalmaz egy egyéni szerkesztő megjelenítendő következő és vissza navigációs gombjai.This method allows you to display a custom editor inside a dialog box that includes Next and Back buttons for navigation. Ez a módszer egy példa a Microsoft nem biztosít.Microsoft has not provided a sample for how to use this method.

UDI varázsló konfigurációs fájl séma-hivatkozásUDI Wizard Configuration File Schema Reference

A fájl az UDI varázsló által felhasznált és az UDI varázsló Designer konfigurálva.This file is consumed by the UDI Wizard and configured by the UDI Wizard Designer. A fájl segítségével konfigurálja a:This file is used to configure the:

  • Az UDI-varázslóban megjelenő VarázslóoldalakWizard pages displayed in the UDI Wizard

  • A varázsló az UDI varázsló lapjain sorrendjeThe sequence of the wizard pages in the UDI Wizard

  • A varázsló minden lapján mezők beállításaiSettings for the fields on each wizard page

  • Az UDI varázsló Designer elérhető StageGroupsAvailable StageGroups in the UDI Wizard Designer

  • Rendelkezésre álló szakaszból belül minden az UDI varázsló Designer telepítése varázslóAvailable Stages within each deployment wizard in the UDI Wizard Designer

    77 az elemek az UDI varázsló konfigurációs fájlban és azok leírásait sorolja fel.77 lists the elements in the UDI Wizard Configuration File and their descriptions. A varázsló eleme a gyökércsomópontját. ezt a hivatkozást.The Wizard element is the root node for this reference.

Tábla 77.Table 77. Az UDI varázsló konfigurációs fájlban és azok leírásait elemeiElements in the UDI Wizard Configuration File and Their Descriptions

Elem neveElement name LeírásDescription
DataData Az egyes csoportok DataItem belül egy lap elem neve szerint és a neve attribútum.Groups the individual DataItem elements within a Page element and is named by the Name attribute.
DataItemDataItem Az egyes csoportok beállító belül egy lap elemet.Groups the individual Setter elements within a Page element. Egy vagy több-ot is létrehozhat a hierarchikus adatokhoz adatok belül egy DataItem elem.You can create hierarchical data by including one or more Data elements within a DataItem element. Minden egyes DataItem elem egyetlen elemet jelöl.Each DataItem element represents an individual item. Az elérhető meghajtók listáját Előfordulhat például, egy DataItem a megjelenített név és egy másik DataItem a megfelelő meghajtó betűjeléhez tartozó elemet.For example, a list of available drives might have a DataItem for the display name and another DataItem element for the corresponding drive letter.
AlapértelmezettDefault Alapértelmezett érték a megadott mezők szerepelnek a szülő megadása mező vagy RadioGroup elemet.Specifies a default value for the field specified in the parent Field or RadioGroup element. Alapértelmezés szerint ez az elem zárójeles értékre van beállítva.The default is set to the value bracketed by this element.
DLLDLL Adja meg a DLL betöltése és az UDI varázsló és az UDI varázsló Designer által hivatkozott.Specifies a DLL that is to be loaded and referenced by the UDI Wizard and the UDI Wizard Designer.
DLLsDLLs Az egyes csoportok DLL elemek.Groups the individual DLL elements.
Hiba történtError Meghatározza, hogy egy feladat is lehetséges hibakód adhat vissza.Specifies a possible error code that can a task can return. A feladat által visszaadott hibakód: értékének HRESULT és csapdába Ez az elem pontosabb hiba adatok megadása.The value of the error code is returned by the task’s HRESULT and is trapped by this element to provide more specific error information.
ExitCodeExitCode Adja meg a tevékenység a lehetséges kilépési kóddal.Specifies a possible exit code for a task. A kilépési kódot visszatérési kódokat, a feladat vár.The exit codes are return codes that the task expects. Hozzon létre egy ExitCode elem összes lehetséges kilépési kódot.Create an ExitCode element for each possible exit code. Ellenkező esetben megadható a csillag (*) az a érték attribútum másik nem szereplő visszatérési kódok kezelésére ExitCode elemek.Otherwise, you can specify an asterisk (*) in the Value attribute to handle return codes not listed in other ExitCode elements.
ExitCodesExitCodes Olyan csoportok ExitCode és hiba elemei egy feladat elem vagy egy hiba elemet.Groups a set of ExitCode and Error elements for a Task element or an Error element.
A mezőField Megadja a vezérlő példánya egy lap elemhez tartozó testreszabási XML biztosítható.Specifies an instance of a control in a Page element that is used to provide customization with XML. Nem minden vezérlők lehetővé teszik a testreszabási XML – csak az adott használatát szabályozza a mező elemet.Not all controls allow customization with XML—only controls that use the Field element.
MezőkFields Az egyes csoportok mező belül egy lap elemet.Groups the individual Field elements within a Page element.
FileFile A forrás- és a fájl másolása művelet használatához adja meg a Microsoft.Wizard.CopyFilesTask feladat típusát.Specifies the source and destination for a file copy operation using the Microsoft.Wizard.CopyFilesTask task type. Megadhat egy külön fájl elem egynél több fájl másolása az adott feladat.You can include a separate File element to copy more than one file in a single task.
PagePage Megadja a lap egy példányát, és a laphoz tartozó konfigurációs beállításokat tartalmaz.Specifies an instance of a page and includes all the configuration settings for the page.
PageRefPageRef Megadja egy példánya lapon egy hivatkozást egy szakasz belül egy StageGroup.Specifies a reference to an instance of a page within a Stage within a StageGroup.
PagesPages Az egyes csoportok lap elemek.Groups the individual Page elements.
RadioGroupRadioGroup Választógombok belül csoportjának egy mező elemet.Specifies a group of radio buttons within a Field element.
StageGroupStageGroup Megadja egy egy vagy több fázisból áll.Specifies a group of one or more stages.
StageGroupsStageGroups Groups szakaszában csoportokat UDI varázsló konfigurációs fájlban.Groups a set of stage groups within a UDI Wizard configuration file.
SetterSetter Adja meg a tulajdonság értéke a nevű tulajdonság értékét a tulajdonság tulajdonság.Specifies a property setting of a value for a property that is named in the Property property.
StageStage Megadja egy szakaszon belül egy StageGroup és egy vagy több tartalmaz PageRef elemek.Specifies a stage within a StageGroup and contains one or more PageRef elements.
StyleStyle Az egyes csoportok beállító konfiguráló varázsló UDI megjelenését és működését, beleértve a varázsló és az UDI varázsló látható Transzparens kép tetején megjelenő cím elemek.Groups the individual setter elements that configure the UDI Wizard look and feel, including the title shown at the top of the wizard and the banner image shown on the UDI Wizard.
A feladatTask Adja meg olyan feladatra, amely az oldalon szerepel a szülő futtatandó lap elemet.Specifies a task that is to be run on the page specified in the parent Page element.
feladatokTasks Csoportosítja a feladatait egy lap elemet.Groups a set of tasks for a Page element.
ÉrvényesítésiValidator Adja meg a szülő megadott mező vezérlő egy érvényesítő mező elemet.Specifies a validator for the field control that is specified in the parent Field element.
WizardWizard Adja meg az összes többi elem gyökerének.Specifies the root for all other elements.

AdatokData

Ez az elem az egyes csoportok DataItem belül egy lap elem neve szerint, és a neve attribútum.This element groups the individual DataItem elements within a Page element and is named by the Name attribute.

Elem adataiElement Information

Tábla 78 információt nyújt a adatok elemet.Table 78 provides information about the Data element.

Tábla 78.Table 78. Adatok elem adataiData Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül minden lap elem (Ez az elem nem kötelező.)Zero or more within each Page element (This element is optional.)
SzülőelemekParent elements Lap, DataItemPage, DataItem
TartalomContents A DataItem, beállítóDataItem, Setter
ElemattribútumokElement Attributes

Tábla 79 attribútumait ismerteti a adatok elem és a leírását.Table 79 lists the attributes of the Data element and provides a description of each.

Tábla 79.Table 79. Attribútumok és a megfelelő értékeket az adatelemhezAttributes and Corresponding Values for the Data Element

AttribútumAttribute LeírásDescription
NévName Neve a adatok elemSpecifies the name of the Data element
MegjegyzésekRemarks

A neve attribútum lehetővé teszi, hogy egy adott halmazát az adatok.The Name attribute allows code to retrieve a specific set of data.

PéldaExample

Nincs.None.

A DataItemDataItem

Ennek az elemnek az egyes csoportok beállító belül egy lap elemet.This element groups the individual Setter elements within a Page element. Egy vagy több-ot is létrehozhat a hierarchikus adatokhoz adatok belül egy DataItem elem.You can create hierarchical data by including one or more Data elements within a DataItem element. Minden egyes DataItem elem egyetlen elemet jelöl.Each DataItem element represents an individual item. Az elérhető meghajtók listáját Előfordulhat például, egy DataItem a megjelenített név és egy másik DataItem a megfelelő meghajtó betűjeléhez tartozó elemet.For example, a list of available drives might have a DataItem for the display name and another DataItem element for the corresponding drive letter.

Elem adataiElement Information

Tábla 80 információt nyújt a DataItem elemet.Table 80 provides information about the DataItem element.

Tábla 80.Table 80. A DataItem elem adataiDataItem Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül minden adatok elem (Ez az elem nem kötelező.)Zero or more within each Data element (This element is optional.)
SzülőelemekParent elements DataData
TartalomContents Adatok, beállítóData, Setter
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

AlapértelmezettDefault

Ez az elem a megadott mezők szerepelnek a szülő alapértelmezett értéket határoz meg mező vagy RadioGroup elemet.This element specifies a default value for the field specified in the parent Field or RadioGroup element. Az alapértelmezett értékre van állítva a, amelyhez a elem zárójelek közé.The default is set to the value that this element brackets.

Elem adataiElement Information

Tábla 81-es információt nyújt a alapértelmezett elemet.Table 81 provides information about the Default element.

Tábla 81-es.Table 81. Alapértelmezett elem adataiDefault Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül egy mező vagy RadioGroup elem (Ez az elem nem kötelező.)Zero or more within a Field or RadioGroup element (This element is optional.)
SzülőelemekParent elements A mező, RadioGroupField, RadioGroup
TartalomContents A tartalom lehet bármely szabályos XML-kódot, de általában szabványos szövegCan be any well-formed XML content but is typically standard text
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample

A következő példában az alapértelmezett beállítása a időzóna "Csendes-óceáni téli idő" mező értéke:In the following example, the default for the TimeZone field is set to "Pacific Standard Time":

<Field Name="TimeZone" Enabled="true" VarName="OSDTimeZone" Summary="Time Zone:">  
  <Default>Pacific Standard Time</Default>  

DLLDLL

Ez az elem a UDI varázsló és az UDI varázsló tervező betöltése, és hivatkozzon DLL határozza meg.This element specifies a DLL for the UDI Wizard and UDI Wizard Designer to load and reference.

Elem adataiElement Information

Tábla 82 információt nyújt a DLL elemet.Table 82 provides information about the DLL element.

Tábla 82.Table 82. DLL elem adataiDLL Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több belül a DLL-ek elemOne or more within the DLLs element
Szülő elemParent element DLLsDLLs
TartalomContents Nem engedélyezett ehhez az elemhez tartalmatNo content allowed for this element
ElemattribútumokElement Attributes

Tábla 83 attribútumait ismerteti a DLL elem és a leírását.Table 83 lists the attributes of the DLL element and provides a description of each.

Tábla 83.Table 83. Attribútumok és a dll-fájl az elemhez tartozó értékekAttributes and Corresponding Values for the DLL Element

AttribútumAttribute LeírásDescription
NévName Az UDI varázsló és az UDI varázsló Designer való hivatkozáshoz a dll-fájl neveSpecifies the name of the DLL for the UDI Wizard and UDI Wizard Designer to reference
MegjegyzésekRemarks

Nincs.None.

PéldaExample
<DLLs>  
  <DLL Name="OSDRefreshWizard.dll" />   
  <DLL Name="SharedPages.dll" />  
</DLLs>  

DLL-fájlokDLLs

Ez az elem az egyes csoportok DLL elemek.This element groups the individual DLL elements.

Elem adataiElement Information

Tábla 84 információt nyújt a DLL-ek elemet.Table 84 provides information about the DLLs element.

Tábla 84.Table 84. DLL-ek elem adataiDLLs Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences egyOne
SzülőelemekParent elements WizardWizard
TartalomContents DLLDLL
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample
<DLLs>  
   <DLL Name="OSDRefreshWizard.dll" />  
   <DLL Name="SharedPages.dll" />   
</DLLs>  

ErrorError

Ez az elem egy lehetséges hibakód egy feladatot visszaadó határozza meg.This element specifies a possible error code that a task can return. Az érték a hibakód adott vissza, és a feladat találkozott HRESULT pontosabb hiba adatok megadása.The value of the error code is returned and trapped by the task’s HRESULT to provide more specific error information.

Elem adataiElement Information

Tábla 85 információt nyújt a hiba elemet.Table 85 provides information about the Error element.

Tábla 85.Table 85. Hiba elem adataiError Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül minden ExitCode elem (Ez az elem nem kötelező.)Zero or more within each ExitCode element (This element is optional.)
SzülőelemekParent elements ExitCodesExitCodes
TartalomContents Bármely szabályos XML-tartalomAny well-formed XML content
ElemattribútumokElement Attributes

Tábla 86 attribútumait ismerteti a hiba elem és a leírását.Table 86 lists the attributes of the Error element and provides a description of each.

AttribútumAttribute LeírásDescription
ÁllapotState Hiba történt a tevékenység visszatérési állapota határozza meg.Specifies the return state of a task that encountered an error. Általában az attribútum értéke hibás.Typically, the value for this attribute is set to Error. Ez az érték jelenik meg a állapot oszlop az UDI varázsló, a varázsló lapján.This value is displayed in the State column on the wizard page in the UDI Wizard.
TextText Adja meg a hibát kiváltó feltétel, amely a feladat hibát a leíró szöveg.Specifies the descriptive text about the error condition that the task encountered.
TípusType Meghatározza, hogy ez az elem egy hiba, figyelmeztetés vagy sikeres jelöl.Specifies whether this element represents an error, warning, or success. A megadott értéktípus belül egyedieknek kell lenniük egy ExitCodes elemet.The value specified inType must be unique within an ExitCodes element. Ehhez az elemhez az érvényes értékek a következők:The following are valid values for this element:

- 0. elem sikeres képviseli.- 0. The element represent a success.
- 1.- 1. Az elem figyelmeztetés jelöli.The element represents a warning.
- -1.- -1. Az elem hiba jelöli.The element represents an error.
ValueValue Adja meg a kódot, amely a feladat visszaadott értékének numerikus értéket.Specifies the value of the code that the task returned as a numeric value. A csillag (*) értékének megadása azt jelzi, az alapértelmezett elem a visszatérési kódok, amelyek nem szerepelnek a listán az egyéb hiba elemek.Specifying the value of an asterisk (*) indicates the default element for return codes that are not listed in other Error elements.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

exitCodeExitCode

Ezt az elemet adja meg a tevékenység a lehetséges kilépési kóddal.This element specifies a possible exit code for a task. A kilépési kódot visszatérési kódokat, a feladat vár.The exit codes are return codes that the task expects. Hozzon létre egy ExitCode elem összes lehetséges kilépési kódot.Create an ExitCode element for each possible exit code. Ellenkező esetben megadható a csillag (*) az a érték attribútum másik nem szereplő visszatérési kódok kezelésére ExitCode elemek.Otherwise, you can specify an asterisk (*) in the Value attribute to handle return codes not listed in other ExitCode elements.

Elem adataiElement Information

Tábla 87 információt nyújt a ExitCode elemet.Table 87 provides information about the ExitCode element.

Tábla 87.Table 87. ExitCode elem adataiExitCode Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül minden ExitCodes elem (Ez az elem nem kötelező.)Zero or more within each ExitCodes element (This element is optional.)
SzülőelemekParent elements ExitCodesExitCodes
TartalomContents Legalább egy ExitCode elem és nulla vagy több hiba elemeiAt least one ExitCode element and zero or more Error elements
ElemattribútumokElement Attributes

Tábla 88 attribútumait ismerteti a ExitCode elem és a leírását.Table 88 lists the attributes of the ExitCode element and provides a description of each.

Tábla 88.Table 88. Attribútumok és ExitCode elemhez tartozó értékekAttributes and Corresponding Values for the ExitCode Element

AttribútumAttribute LeírásDescription
ÁllapotState Adja meg a tevékenység visszatérési állapota.Specifies the return state of a task. Ennek az attribútumnak az értéke megjelenik a állapot oszlop UDI varázslóban varázsló megfelelő lapján.The value of this attribute is displayed in the State column on the corresponding wizard page in the UDI Wizard. Az attribútum a feladat bíró bármely értékeket is használhat.You can use any values for this attribute that are meaningful for your task. Ehhez az attribútumhoz használt jellemző értékek a következők:The following are typical values used for this attribute:

-Sikeres- Success
-Figyelmeztetés- Warning
– Hiba- Error
TextText Adja meg a feladat létezik kódját a leíró szöveg.Specifies the descriptive text about the exist code of the task.
TípusType Meghatározza, hogy ez az elem egy hiba, figyelmeztetés vagy sikeres jelöl.Specifies whether this element represents an error, warning, or success. Megadott típus belül egyedinek kell lennie egy ExitCodes elemet.The value specified in type must be unique within an ExitCodes element. Ehhez az elemhez az érvényes értékek a következők:The following are valid values for this element:

- 0.- 0. Az elem sikeres jelöli.The element represents a success.
- 1.- 1. Az elem figyelmeztetés jelöli.The element represents a warning.
- -1.- -1. Az elem hiba jelöli.The element represents an error.
ValueValue Adja meg a kódot, amely a feladat visszaadott értékének numerikus értéket.Specifies the value of the code that the task returned as a numeric value. A csillag (*) értékének megadása azt jelzi, az alapértelmezett elem a visszatérési kódok, amelyek nem szerepelnek a listán az egyéb ExitCode elemek.Specifying the value of an asterisk (*) indicates the default element for return codes that are not listed in other ExitCode elements.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

ExitCodesExitCodes

Ez az elem csoportok olyan ExitCode és hiba elemei egy feladat vagy egy hiba elemet.This element groups a set of ExitCode and Error elements for a Task or an Error element.

Elem adataiElement Information

Tábla 89 információt nyújt a ExitCodes elemet.Table 89 provides information about the ExitCodes element.

Tábla 89.Table 89. ExitCodes elem adataiExitCodes Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy belül minden feladat elemOne within each Task element
SzülőelemekParent elements A feladatTask
TartalomContents Hiba, ExitCodeError, ExitCode
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

A mezőField

Ez az elem megadja a vezérlő példánya egy lap elem testreszabási XML biztosítható.This element specifies an instance of a control in a Page element used to provide customization with XML. Nem minden vezérlők lehetővé teszik a testreszabási XML – csak az adott használatát szabályozza a mező elemet.Not all controls allow customization with XML—only controls that use the Field element.

Elem adataiElement Information

Tábla 90 információt nyújt a mező elemet.Table 90 provides information about the Field element.

Tábla 90.Table 90. A mező elem adataiField Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül minden mező elem (Ez az elem nem kötelező.)Zero or more within each Field element (This element is optional.)
SzülőelemekParent elements MezőkFields
TartalomContents Alapértelmezett, érvényesítőDefault, Validator
ElemattribútumokElement Attributes

Tábla 91 attribútumait ismerteti a mező elem és a leírását.Table 91 lists the attributes of the Field element and provides a description of each.

Tábla 91.Table 91. Attribútumok és a mező az elemhez tartozó értékekAttributes and Corresponding Values for the Field Element

AttribútumAttribute LeírásDescription
engedélyezveEnabled Meghatározza, hogy engedélyezett-e a mező a felhasználói bevitel (az attribútum igaz vagy hamis állítható be.)Specifies whether the field is enabled for user input (The attribute can be set to True or False.)
NévName A mező neveSpecifies the name of the field
ÖsszefoglalásSummary Adja meg a leíró szöveg jelenik meg a összegzés az érték, amely beállítja ezt a mezőt. varázslólapSpecifies the descriptive text displayed on the Summary wizard page for the value that this field sets
VáltozónévVarName Adja meg a feladatütemezési változó nevét olvassa el, vagy a szülő mezője konfigurált mező elemSpecifies the task sequence variable name read or configured using the field in the parent Field element
MegjegyzésekRemarks

Ennek az elemnek nulla vagy több tartalmazhat alapértelmezett elemek és nulla vagy több érvényesítő elemek.This element can contain zero or more Default elements and zero or more Validator elements.

PéldaExample

Nincs.None.

MezőkFields

Ennek az elemnek az egyes csoportok mező belül egy lap elemet.This element groups the individual Field elements within a Page element.

Elem adataiElement Information

Tábla 92 információt nyújt a mezők elemet.Table 92 provides information about the Fields element.

Tábla 92.Table 92. Mezők elem adataiFields Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül minden lap elem (Ez az elem nem kötelező.)Zero or more within each Page element (This element is optional.)
SzülőelemekParent elements PagePage
TartalomContents A mező, RadioGroupField, RadioGroup
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

FileFile

Ez az elem a forrás- és a fájl másolása művelet használatára vonatkozó megadja a Microsoft.Wizard.CopyFilesTask feladat típusát.This element specifies the source and destination for a file copy operation using the Microsoft.Wizard.CopyFilesTask task type. Megadhat egy külön fájl elem egynél több fájl másolása az adott feladat.You can include a separate File element to copy more than one file in a single task.

Elem adataiElement Information

Tábla 93 információt nyújt a fájl elemet.Table 93 provides information about the File element.

Tábla 93.Table 93. Fájl elem adataiFile Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több feladat típusú tevékenységek Microsoft.Wizard.CopyFilesTaskOne or more for each task that has a task type of Microsoft.Wizard.CopyFilesTask
SzülőelemekParent elements A feladatTask
TartalomContents NincsenekNone
ElemattribútumokElement Attributes

Tábla 94 attribútumait ismerteti a fájl elem és a leírását.Table 94 lists the attributes of the File element and provides a description of each.

Tábla 94.Table 94. Attribútumok és a fájl az elemhez tartozó értékekAttributes and Corresponding Values for the File Element

AttribútumAttribute LeírásDescription
CélDest A megadott fájl a célmappába teljesen minősített vagy relatív elérési útját adja meg a forrás attribútum.Specifies the fully qualified or relative path to the destination folder for the file specified in the Source attribute. Környezeti változók engedélyezettek az elérési út egy része.Environment variables are allowed as a part of the path.
ForrásSource A teljesen minősített vagy relatív elérési út a forrás-fájl, amely meghatározza a Microsoft.Wizard.CopyFilesTask típus másolatok feladat.Specifies the fully qualified or relative path to the source file that the Microsoft.Wizard.CopyFilesTask task type copies. Ez az attribútum támogatja a helyettesítő karakterek, így több fájlok átmásolhatók egyetlen fájl elemet.This attribute supports wildcard characters so that multiple files can be copied using a single File element. Környezeti változók engedélyezettek az elérési út egy része.Environment variables are allowed as part of the path.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

LapPage

Ez az elem egy lap egy példánya határozza meg, és a laphoz tartozó konfigurációs beállításokat tartalmaz.This element specifies an instance of a page and includes all the configuration settings for the page.

Elem adataiElement Information

Tábla 95 információt nyújt a lap elemet.Table 95 provides information about the Page element.

Tábla 95.Table 95. Lap elem adataiPage Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több belül minden lapok elemOne or more within each Pages element
SzülőelemekParent elements PagesPages
TartalomContents Data, Fields, Setter, TasksData, Fields, Setter, Tasks
ElemattribútumokElement Attributes

Tábla 96 attribútumait ismerteti a lap elem és a leírását.Table 96 lists the attributes of the Page element and provides a description of each.

Tábla 96.Table 96. Attribútumok és a lap az elemhez tartozó értékekAttributes and Corresponding Values for the Page Element

AttribútumAttribute LeírásDescription
DisplayNameDisplayName Megadja az UDI varázsló tervezőben megjelenő oldalon felhasználóbarát nevét.Specifies the user-friendly name of the wizard page displayed in the UDI Wizard Designer. Ez a név általában több leíró, mint a neve attribútum.This name is usually more descriptive than the Name attribute.
NévName Megadja az UDI varázsló tervezőben megjelenő oldalon nevét.Specifies the name of the wizard page displayed in the UDI Wizard Designer.
TípusType Megadja, hogy közvetlenül vonatkozik, egy DLL belül egy adott varázslólap varázslólap típusát.Specifies the type of wizard page that directly relates to a specific wizard page within a DLL.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

PageRefPageRef

Ez az elem megadja egy példánya lapon egy hivatkozást egy szakasz belül egy StageGroup.This element specifies a reference to an instance of a page within a Stage within a StageGroup.

Elem adataiElement Information

Tábla 97 információt nyújt a PageRef elemet.Table 97 provides information about the PageRef element.

Tábla 97.Table 97. PageRef elem adataiPageRef Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több belül egy szakasz elemOne or more within a Stage element
SzülőelemekParent elements StageStage
TartalomContents NincsenekNone
ElemattribútumokElement Attributes

Tábla 98 sorolja fel az attribútum a PageRef elem és a leírását.Table 98 lists the attribute of the PageRef element and provides a description of it.

Tábla 98.Table 98. Attribútumok és PageRef elemhez tartozó értékekAttributes and Corresponding Values for the PageRef Element

AttribútumAttribute LeírásDescription
PagePage Adja meg az adott lapjára példányát egy szakasz belül egy StageGroup.Specifies the instance of a page within a Stage within a StageGroup. Az érték a Name attribútumának egy lap elemet.Set this value to the Name attribute of a Page element.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

LapPages

Ez az elem az egyes csoportok lap elemek.This element groups the individual Page elements.

Elem adataiElement Information

Tábla 99 információt nyújt a lapok elemet.Table 99 provides information about the Pages element.

Tábla 99.Table 99. Lapok elem adataiPages Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences egyOne
SzülőelemekParent elements WizardWizard
TartalomContents PagePage
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample
<Pages>  
   + <Page Name="WelcomePage" DisplayName="Welcome" Type="Microsoft.SharedPages.WelcomePage">  
   + <Page Name="ConfigScanPage" DisplayName="Deployment Readiness" Type="Microsoft.OSDRefresh.ConfigScanPage">  
   + <Page Name="ConfigScanBareMetal" DisplayName="Deployment Readiness" Type="Microsoft.OSDRefresh.ConfigScanPage">  
   + <Page Name="RebootPage" DisplayName="Reboot" Type="Microsoft.OSDRefresh.RebootPage">  
   + <Page Name="WelcomePageReplace" DisplayName="Welcome" Type="Microsoft.SharedPages.WelcomePage">  
   + <Page Name="VolumePage" DisplayName="Volume" Type="Microsoft.OSDRefresh.VolumePage">  
   + <Page Name="UserRestorePage" DisplayName="Select Target" Type="Microsoft.OSDRefresh.UserStatePage">  
   + <Page Name="ComputerPage" DisplayName="New Computer Details" Type="Microsoft.OSDRefresh.ComputerPage">  
   + <Page Name="AdminAccounts" DisplayName="Administrator Password" Type="Microsoft.SharedPages.AdminAccountsPage">  
   + <Page Name="UDAPage" DisplayName="User Device Affinity" Type="Microsoft.OSDRefresh.UDAPage">  
   + <Page Name="LanguagePage" DisplayName="Language" Type="Microsoft.OSDRefresh.LanguagePage">  
   + <Page Name="ApplicationPage" DisplayName="Install Programs" Type="Microsoft.OSDRefresh.ApplicationPage">  
     <Page Name="SummaryPage" DisplayName="Summary" Type="Microsoft.Shared.SummaryPage" />   
   + <Page Name="UserCapturePageOldPC" DisplayName="Select Target" Type="Microsoft.OSDRefresh.UserStatePage">  
   + <Page Name="ProgressPage" DisplayName="Capture Data" Type="Microsoft.OSDRefresh.ProgressPage">  
   + <Page Name="RebootAfterCapture" DisplayName="Reboot" Type="Microsoft.OSDRefresh.RebootPage">  
</Pages>  

RadioGroupRadioGroup

Ez az elem határozza meg a választógombok a csoportját egy mező elemet.This element specifies a group of radio buttons with in a Field element.

Elem adataiElement Information

Tábla 100 információt nyújt a RadioGroup elemet.Table 100 provides information about the RadioGroup element.

Tábla 100.Table 100. RadioGroup elem adataiRadioGroup Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több belül egy mezők elem (Ez az elem nem kötelező.)Zero or more within a Fields element (This element is optional.)
SzülőelemekParent elements MezőkFields
TartalomContents AlapértelmezettDefault
ElemattribútumokElement Attributes

Tábla 101 attribútumait ismerteti a RadioGroup elem és a leírását.Table 101 lists the attributes of the RadioGroup element and provides a description of each.

Tábla 101.Table 101. Attribútumok és RadioGroup elemhez tartozó értékekAttributes and Corresponding Values for the RadioGroup Element

AttribútumAttribute LeírásDescription
Zárolva vanLocked Meghatározza, hogy engedélyezve van-e a csoport választógombok a felhasználói bevitelhez.Specifies whether the group of radio buttons is enabled for user input. Az attribútum állítható be:The attribute can be set to:

- Igaz.- True. Meghatározza, hogy a megfelelő választógomb le vannak tiltva, és a felhasználók nem csoportjában válassza ki a megfelelő választógombra kattintva.Specifies that the radio buttons are disabled and users cannot select a radio button in the group.
- Hamis.- False. Meghatározza, hogy a megfelelő választógomb engedélyezve vannak, és a felhasználók egy választógombját bejelölve jelezheti a csoportban.Specifies that the radio buttons are enabled and users can select a radio button in the group.
NévName Megadja a választógomb-csoportban nevét.Specifies the name of the radio option group.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

StageGroupStageGroup

Ez az elem egy központi telepítési fázis csoportot határozza meg.This element specifies a deployment stage group.

Elem adataiElement Information

Tábla 102 információt nyújt a StageGroup elemet.Table 102 provides information about the StageGroup element.

Tábla 102.Table 102. StageGroup elem adataiStageGroup Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több belül egy StageGroups elemOne or more within a StageGroups element
SzülőelemekParent elements StageGroupsStageGroups
TartalomContents StageStage
ElemattribútumokElement Attributes

Tábla 103 attribútumait ismerteti a StageGroup elem és az attribútum a leírását.Table 103 lists the attributes of the StageGroup element and a description of the attribute.

Tábla 103.Table 103. Attribútumok és StageGroup elemhez tartozó értékekAttributes and Corresponding Values for the StageGroup Element

AttribútumAttribute LeírásDescription
DisplayNameDisplayName Megadja a szakasz csoport jelennek meg az UDI varázsló Designer felhasználóbarát nevét.Specifies the user-friendly name of the stage group displayed in the UDI Wizard Designer. Ez a név általában több leíró, mint a neve attribútum.This name is usually more descriptive than the Name attribute.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

StageGroupsStageGroups

Ez az elem groups szakaszában csoportokat UDI varázsló konfigurációs fájlban.This element groups a set of stage groups within a UDI Wizard configuration file.

Elem adataiElement Information

Tábla 104 információt nyújt a StageGroups elemet.Table 104 provides information about the StageGroups element.

104-es tábla.Table 104. StageGroups elem adataiStageGroups Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy egy belül egy varázsló elemZero or one within a Wizard element
SzülőelemekParent elements WizardWizard
TartalomContents StageGroupStageGroup
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

A SetterSetter

Ez az elem egy tulajdonság beállítását a nevű tulajdonság értékét adja meg a tulajdonság tulajdonság.This element specifies a property setting for the value for a property that is named in the Property property.

Elem adataiElement Information

Tábla 105 információt nyújt a beállító elemet.Table 105 provides information about the Setter element.

Tábla 105.Table 105. A Setter elem adataiSetter Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy több minden szülő elemben (Ez az elem nem kötelező.)Zero or more within each parent element (This element is optional.)
SzülőelemekParent elements Data, DataItem, Page, Style, Task, ValidatorData, DataItem, Page, Style, Task, Validator
TartalomContents A karakterlánc értéket tartalmaz a tulajdonság attribútumContains a string value in the Property attribute
ElemattribútumokElement Attributes

Tábla 106 sorolja fel az attribútum a beállító elem és a leírását.Table 106 lists the attribute of the Setter element and provides a description of it.

Tábla 106.Table 106. Attribútumok és a megfelelő értékeket a Setter elemAttributes and Corresponding Values for the Setter Element

AttribútumAttribute LeírásDescription
TulajdonságProperty Adja meg a tulajdonságnév beállítása.Specifies the property name being set. A tulajdonságnév értékre van állítva a, amelyhez a zárójelek attribútum.The property name is set to the value that this attribute brackets.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

FázisStage

Megadja az elem egy szakasz belül egy StageGroup és egy vagy több tartalmaz PageRef elemek.This element specifies a Stage within a StageGroup and contains one or more PageRef elements.

Elem adataiElement Information

Tábla 107 információt nyújt a szakasz elemet.Table 107 provides information about the Stage element.

Tábla 107.Table 107. Szakasz elem adataiStage Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több belül egy StageGroup elemOne or more within a StageGroup element
SzülőelemekParent elements StageGroupStageGroup
TartalomContents PageRefPageRef
ElemattribútumokElement Attributes

Tábla 108 attribútumait ismerteti a szakasz elem és a leírását.Table 108 lists the attributes of the Stage element and provides a description of each.

Tábla 108.Table 108. Attribútumok és a szakasz az elemhez tartozó értékekAttributes and Corresponding Values for the Stage Element

AttribútumAttribute LeírásDescription
DisplayNameDisplayName Megadja az UDI varázsló tervezőben megjelenő oldalon felhasználóbarát nevét.Specifies the user-friendly name of the wizard page displayed in the UDI Wizard Designer. Ez a név általában több leíró, mint a neve attribútum.This name is usually more descriptive than the Name attribute.
NévName Megadja a szakasz nevét.Specifies the name of the stage. Ez az elem értékét használja a az UDI varázsló indításakor a /tesztelése: name parancssori paraméter.The value of this element is used when starting the UDI Wizard with the /stage: name command line parameter.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

stílusStyle

Ez az elem az egyes csoportok beállító konfiguráló varázsló UDI megjelenését és működését, beleértve a varázsló és az UDI varázsló látható Transzparens kép tetején megjelenő cím elemek.This element groups the individual Setter elements that configure the UDI Wizard look and feel, including the title shown at the top of the wizard and the banner image shown on the UDI Wizard.

Elem adataiElement Information

109 táblázat tájékoztatást ad azokról a Style elem.Table 109 provides information about the Style element.

Tábla 109.Table 109. Style elem adataiStyle Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences egyOne
SzülőelemekParent elements WizardWizard
TartalomContents SetterSetter
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample
<Style>  
  <Setter Property="bannerFilename">UDI_Wizard_Banner.bmp</Setter>   
  <Setter Property="title">Operating System Deployment (OSD) Refresh Wizard</Setter>   
</Style>  

A feladatTask

Ez az elem határozza meg, amelyek tagjai a megadott oldalon futtatandó feladat lap elemet.This element specifies a task that is to be run on the page specified in the parent Page element.

Elem adataiElement Information

Tábla 110 információt nyújt a feladat elemet.Table 110 provides information about the Task element.

Tábla 110-re.Table 110. A feladat elem adataiTask Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Egy vagy több belül egy feladatok elemOne or more within a Tasks element
SzülőelemekParent elements FeladatokTasks
TartalomContents ExitCodes, File, SetterExitCodes, File, Setter
ElemattribútumokElement Attributes

Tábla 111 attribútumait ismerteti a feladat elem és a leírását.Table 111 lists the attributes of the Task element and provides a description of each.

Tábla 111.Table 111. Attribútumok és a feladat az elemhez tartozó értékekAttributes and Corresponding Values for the Task Element

AttribútumAttribute LeírásDescription
DependsOnDependsOn Megadja, hogy a feladat egy másik feladat függ.Specifies whether the task is dependent on another task. Ez az attribútum értéke a neve attribútum egy másik feladat elemet.The value of this attribute is set to the Name attribute of another Task element. Megjegyzés: Ez az attribútum nem állítható be, hogy a UDI varázsló Designer segítségével.Note: This attribute cannot be configured using the UDI Wizard Designer. Azonban kézzel is felveheti a attribútum egy feladat közvetlenül a .xml fájl módosításával elemhez.However, you can manually add this attribute to a Task element by directly modifying the .xml file.
DisplayNameDisplayName Megadja az UDI varázsló tervezőben megjelenő felhasználóbarát nevét.Specifies the user-friendly name of the task displayed in the UDI Wizard Designer. Ez a név általában több leíró, mint a neve attribútum.This name is usually more descriptive than the Name attribute.
NévName Adja meg a feladat nevét.Specifies the name of the task. Ez a név nem egyedi.This name must be unique.
TípusType Meghatározza a futtatandó feladat, amelyet a feladatot tartalmazó DLL feladat típusát.Specifies the task type for the task to be run, which is defined in the DLL that contains the task.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

feladatokTasks

Ez az elem csoportosítja a feladatait egy lap elemet.This element groups a set of tasks for a Page element.

Elem adataiElement Information

Tábla 112 információt nyújt a feladatok elemet.Table 112 provides information about the Tasks element.

Tábla 112.Table 112. Feladatok elem adataiTasks Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy egy belül minden lap elem (Ez az elem nem kötelező.)Zero or one within each Page element (This element is optional.)
SzülőelemekParent elements PagePage
TartalomContents A feladatTask
ElemattribútumokElement Attributes

Tábla 113 attribútumait ismerteti a feladatok elem és a leírását.Table 113 lists the attributes of the Tasks element and provides a description of each.

Tábla 113.Table 113. Attribútumok és a feladatok az elemhez tartozó értékekAttributes and Corresponding Values for the Tasks Element

AttribútumAttribute LeírásDescription
NameTitleNameTitle Adja meg a megfelelő varázslólapon feladatok nevét tartalmazó oszlop tetején megjelenő felirat.Specifies the caption that appears at the top of the column that contains the name of the tasks in the appropriate wizard page.
StatusTitleStatusTitle Adja meg a megfelelő oldalon a feladatok állapotát tartalmazó oszlop tetején megjelenő felirat.Specifies the caption that appears at the top of the column that contains the status of the tasks in the appropriate wizard page.
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

ÉrvényesítésiValidator

Ez az elem megadja egy érvényesítő tagjai a megadott mező vezérlő mező elemet.This element specifies a validator for the field control that is specified in the parent Field element.

Elem adataiElement Information

Tábla 114 információt nyújt a érvényesítő elemet.Table 114 provides information about the Validator element.

Tábla 114.Table 114. Érvényesítési elem adataiValidator Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences Nulla vagy egy belül egy mező elemZero or one within a Field element
SzülőelemekParent elements A mezőField
TartalomContents SetterSetter
ElemattribútumokElement Attributes

Tábla 115 sorolja fel az attribútum a érvényesítő elem és a leírását.Table 115 lists the attribute of the Validator element and provides a description of it.

Tábla 115.Table 115. Attribútumok és érvényesítő elemhez tartozó értékekAttributes and Corresponding Values for the Validator Element

AttribútumAttribute LeírásDescription
TípusType Az adja meg az érvényesítőhöz, amelyet a dll-fájl, amely tartalmazza az érvényesítőSpecifies the type for the validator, which is defined in the DLL that contains the validator
MegjegyzésekRemarks

Nincs.None.

PéldaExample

Nincs.None.

VarázslóWizard

Ez az elem összes többi elem gyökerének határozza meg.This element specifies the root for all other elements.

Elem adataiElement Information

Tábla 116 információt nyújt a varázsló elemet.Table 116 provides information about the Wizard element.

Tábla 116.Table 116. Varázsló elem adataiWizard Element Information

AttribútumAttribute ValueValue
Előfordulások számaNumber of occurrences egyOne
SzülőelemekParent elements NincsenekNone
TartalomContents DLL-ek, lapok, StageGroups, stílusDLLs, Pages, StageGroups, Style
ElemattribútumokElement Attributes

Ez az elem nem attribútumokkal rendelkezik.This element has no attributes.

MegjegyzésekRemarks

Nincs.None.

PéldaExample
<Wizard>  
   + <DLLs>  
   + <Style>  
   + <Pages>  
   + <StageGroups>  
</Wizard>