2018-05-11 10:45:43 -07:00

53 lines
1.9 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: ICSPValidate
description: ICSPValidate
ms.assetid: b0993f2d-6269-412f-a329-af25fff34ca2
ms.author: maricia
ms.topic: article
ms.prod: w10
ms.technology: windows
author: MariciaAlforque
ms.date: 06/26/2017
---
# ICSPValidate
This interface is optional. It is called by ConfigManager2 as it batches commands before transactioning begins. This allows the configuration service provider to validate the node before performing specific actions. It is generally only used for configuration service providers that need to expose UI.
``` syntax
interface ICSPValidate : IUnknown
{
HRESULT ValidateAdd([in] IConfigNodeState* pNodeState,
[in] IConfigManager2URI* puriChild,
[in] CFG_DATATYPE DataType,
[in] VARIANT varValue);
HRESULT ValidateCopy([in] IConfigNodeState* pNodeState,
[in] IConfigManager2URI* puriDestination);
HRESULT ValidateDeleteChild([in] IConfigNodeState* pNodeState,
[in] IConfigManager2URI* puriChild);
HRESULT ValidateClear([in] IConfigNodeState* pNodeState);
HRESULT ValidateExecute([in] IConfigNodeState* pNodeState,
[in] VARIANT varUserData);
HRESULT ValidateMove([in] IConfigNodeState* pNodeState,
[in] IConfigManager2URI* puriDestination);
HRESULT ValidateSetValue([in] IConfigNodeState* pNodeState,
[in] VARIANT varValue);
HRESULT ValidateSetProperty([in] IConfigNodeState* pNodeState,
[in] REFGUID guidProperty,
[in] VARIANT varValue);
HRESULT ValidateDeleteProperty([in] IConfigNodeState* pNodeState,
[in] REFGUID guidProperty);
```
## Related topics
[Create a custom configuration service provider](create-a-custom-configuration-service-provider.md)