mirror of
https://github.com/GTAmodding/re3.git
synced 2024-12-27 12:25:40 +00:00
53 lines
2.2 KiB
Text
53 lines
2.2 KiB
Text
|
//------------------------------------------------------------------------------
|
||
|
// 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);
|
||
|
};
|
||
|
|