Using Direct3D Version 10 Handles
Direct3D version 10 handles are strongly typed to prevent misusage and to enable the compiler to detect mismatched handle types. Direct3D version 10 handles have life spans that start with a call to a create-type function (for example, CreateGeometryShader) and end with a call to a destroy-type function (for example, DestroyShader). Three categories of handles exist for Direct3D version 10. The first two categories of handles are driver handles, which the Direct3D runtime uses to communicate with the driver, and runtime handles, which the driver uses to communicate with the runtime. The third category of handles are kernel handles. The following sections describe the Direct3D version 10 handles: