Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
[Detección de funciones está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. Puede modificarse o no estar disponible en versiones posteriores.
Crea o modifica una instancia de función.
Sintaxis
HRESULT AddInstance(
[in] SystemVisibilityFlags enumSystemVisibility,
[in] const WCHAR *pszCategory,
[in] const WCHAR *pszSubCategory,
[in] const WCHAR *pszCategoryIdentity,
[out] IFunctionInstance **ppIFunctionInstance
);
Parámetros
[in] enumSystemVisibility
Valor SystemVisibilityFlags que especifica si la instancia de función creada es visible en todo el sistema o solo para el usuario actual.
[in] pszCategory
Categoría de la instancia de función creada. Vea Definiciones de categoría.
[in] pszSubCategory
Subcategoría de la instancia de función creada. Consulte Subcategory Definitions(Definiciones de subcategoría). La longitud máxima de esta cadena es MAX_PATH.
[in] pszCategoryIdentity
Cadena de identificador de instancia del proveedor. Esta cadena se devuelve desde GetProviderInstanceID.
[out] ppIFunctionInstance
Puntero a un puntero de interfaz IFunctionInstance que recibe la instancia de la función.
Valor devuelto
Entre los valores devueltos posibles se incluyen, entre otros, los siguientes.
| Código o valor devuelto | Descripción |
|---|---|
|
El método se completó correctamente. |
|
El valor de enumSystemVisibility, pszCategory o pszCategoryIdentity no es válido. |
|
El método no puede asignar la memoria necesaria para realizar esta operación. |
|
El usuario no tiene permiso de acceso suficiente para realizar la acción solicitada. |
|
El proveedor no admite la adición de instancias de función directamente mediante el método AddInstance . |
|
El valor de pszCategory o pszSubCategory es desconocido. |
|
Se especificó un parámetro no válido. Este error se devuelve cuando la longitud de la cadena pszSubCategory supera MAX_PATH. |
Comentarios
Este método crea temporalmente una nueva instancia de función para la categoría y subcategoría especificadas. El proveedor que implementa la categoría es responsable de conservar los metadatos asociados a la instancia de función recién creada mediante el método IFunctionDiscoveryProviderFactory::CreateInstance .
La instancia de función no se escribe en el Registro si su almacén de propiedades asociado no tiene ningún valor. Use el método IFunctionInstance::OpenPropertyStore para comprobar los valores del almacén de propiedades.
Si ya existe una instancia de función para la categoría y subcategoría especificadas, se sobrescribe la entrada del Registro existente. El método AddInstance devuelve S_OK. El proceso de notificación de cambio de detección de funciones invoca el método IFunctionDiscoveryNotification::OnUpdate de la aplicación que realiza la llamada con enumQueryUpdateAction establecido en QUA_CHANGE.
Se requiere permiso de acceso para cambiar HKEY_LOCAL_MACHINE\SYSTEM claves del Registro para agregar o quitar instancias de función mediante el proveedor del Registro (acceso de administrador o usuario avanzado).
Requisitos
| Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
| Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
| Plataforma de destino | Windows |
| Encabezado | functiondiscoveryapi.h |
| Archivo DLL | FunDisc.dll |