// JonN 8/23/00 120488
// filemgmt.idl : IDL source for clients of Shared Folders and Services snap-ins
//
// No type library is needed for MMC snap-ins
//
// Need to use standard UI in Cluster Admin for managing the cluster service

import "oaidl.idl";
	[
		object,
		uuid(F62DEC25-E3CB-4D45-9E98-933DB95BCAEA),
		helpstring("ISvcMgmtStartStopHelper Interface"),
		pointer_default(unique)
	]
	interface ISvcMgmtStartStopHelper : IUnknown
	{
		[helpstring("Starts an individual service and services on which it depends")]
		HRESULT StartServiceHelper(
			HWND hwndParent,
			BSTR pszMachineName,
			BSTR pszServiceName,
			DWORD dwNumServiceArgs,
			BSTR * lpServiceArgVectors );

		[helpstring("Stops/pauses/etc. an individual service and services on which it depends")]
		HRESULT ControlServiceHelper(
			HWND hwndParent,
			BSTR pszMachineName,
			BSTR pszServiceName,
			DWORD dwControlCode );
	};

	[
		uuid(863FA3AC-9D97-4560-9587-7FA58727608B),
		helpstring("SvcMgmt Class")
	]
	coclass SvcMgmt
	{
		[default] interface ISvcMgmtStartStopHelper;
	};


// Nodetypes for the Shared Folders and
//   Services snap-ins
// created by UUIDGEN 4/2/97 JonN

cpp_quote("#define struuidNodetypeRoot      \"{4e410f0e-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define struuidNodetypeShares    \"{4e410f0f-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define struuidNodetypeSessions  \"{4e410f10-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define struuidNodetypeResources \"{4e410f11-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define struuidNodetypeServices  \"{4e410f12-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define struuidNodetypeShare     \"{4e410f13-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define struuidNodetypeSession   \"{4e410f14-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define struuidNodetypeResource  \"{4e410f15-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define struuidNodetypeService   \"{4e410f16-abc1-11d0-b944-00c04fd8d5b0}\"")

cpp_quote("#define lstruuidNodetypeRoot      L\"{4e410f0e-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define lstruuidNodetypeShares    L\"{4e410f0f-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define lstruuidNodetypeSessions  L\"{4e410f10-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define lstruuidNodetypeResources L\"{4e410f11-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define lstruuidNodetypeServices  L\"{4e410f12-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define lstruuidNodetypeShare     L\"{4e410f13-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define lstruuidNodetypeSession   L\"{4e410f14-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define lstruuidNodetypeResource  L\"{4e410f15-abc1-11d0-b944-00c04fd8d5b0}\"")
cpp_quote("#define lstruuidNodetypeService   L\"{4e410f16-abc1-11d0-b944-00c04fd8d5b0}\"")

cpp_quote("#define structuuidNodetypeRoot        \
	{ 0x4e410f0e, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")
cpp_quote("#define structuuidNodetypeShares      \
	{ 0x4e410f0f, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")
cpp_quote("#define structuuidNodetypeSessions    \
	{ 0x4e410f10, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")
cpp_quote("#define structuuidNodetypeResources   \
	{ 0x4e410f11, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")
cpp_quote("#define structuuidNodetypeServices    \
	{ 0x4e410f12, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")
cpp_quote("#define structuuidNodetypeShare    \
	{ 0x4e410f13, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")
cpp_quote("#define structuuidNodetypeSession     \
	{ 0x4e410f14, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")
cpp_quote("#define structuuidNodetypeResource    \
	{ 0x4e410f15, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")
cpp_quote("#define structuuidNodetypeService     \
	{ 0x4e410f16, 0xabc1, 0x11d0, { 0xb9, 0x44, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0 } }")

/*
clipboard formats common to Shared Folders, Services, Computer Management
	MMC_SNAPIN_MACHINE_NAME

clipboard formats defined by Shared Folders:
	FILEMGMT_TRANSPORT
	FILEMGMT_SNAPIN_SHARE_NAME
	FILEMGMT_SNAPIN_SESSION_CLIENT_NAME
	FILEMGMT_SNAPIN_SESSION_USER_NAME
	FILEMGMT_SNAPIN_SESSION_ID
	FILEMGMT_SNAPIN_FILE_ID

clipboard formats defined by Services:
	FILEMGMT_SNAPIN_SERVICE_NAME
	FILEMGMT_SNAPIN_SERVICE_DISPLAYNAME
*/