Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//------------------------------------------------------------------------------ // File: RegBag.idl // // Desc: IDL source for RegBag.dll. // // Copyright (c) 1999 - 2000, Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------
cpp_quote("//+-------------------------------------------------------------------------") cpp_quote("//") cpp_quote("// Microsoft Windows") cpp_quote("// Copyright (C) Microsoft Corporation, 1999-2000.") cpp_quote("//") cpp_quote("//--------------------------------------------------------------------------") cpp_quote("#pragma once")
#ifndef DO_NO_IMPORTS import "objidl.idl"; import "oaidl.idl"; import "ocidl.idl"; #endif
//***************************************************************************** /////////////////////////////////////////////////////////////////////////////// // // Custom Factory interface // since com doesn't support ctors or initialization parameters on std factory interface // we have a custom creation interface // /////////////////////////////////////////////////////////////////////////////// //***************************************************************************** /////////////////////////////////////////////////////////////////////////////////////// [object, hidden, restricted, uuid(8A674B48-1F63-11d3-B64C-00C04F79498E), helpstring("Create property bag backed by registry"), pointer_default(unique), local ] interface ICreatePropBagOnRegKey : IUnknown { // NOTE: it is up to the caller to set the correct registry access based on the interface // and methods the caller intends to use // IPropertyBag2::GetPropertyInfo and CountProperties require both KEY_QUERY_VALUE and KEY_ENUMERATE_SUBKEYS // IPropertyBagXXX::Read requires KEY_READ // IPropertyBagXXX::Write requires KEY_WRITE // also, you must CoTaskMemFree the name string from GetPropertyInfo // if you write a value of VT_EMPTY or VT_NULL the property will be removed from the bag and the corresponding // registry info will be deleted. HRESULT Create([in] HKEY hkey, [in] LPCOLESTR subkey, [in] DWORD ulOptions, [in] DWORD samDesired, REFIID iid, [out] LPVOID *ppBag); };
|