/**************************************************************************** * The vslangproj Interfaces * Copyright (c) Microsoft Corporation, All Rights Reserved ****************************************************************************/ /**************************************************************************** * vslangproj100.idl * * Sources the typelib that needs to be exposed to clients. * Exposes the CATID's of the extensibility Project & ProjectItem object. * Exposes the diff CATID's for the diff packages for the browse objects. * Exposes the browse object interfaces * Exposes the interfaces of the package specific extensibility project object. *****************************************************************************/ #ifndef INTEROPLIB import "oaidl.idl"; // Interface definitions cpp_quote("#define VSLANGPROJ110_VER_MAJ 11") cpp_quote("#define VSLANGPROJ110_VER_MIN 0") #define VSLANGPROJ_VER 11.0 [ uuid(B280D9C8-DB9D-4D84-A4CF-46D45D5F6F58), helpstring("Microsoft Visual Studio Project Model (11.0)"), version(VSLANGPROJ_VER) ] library VSLangProj110 { #endif // INTEROPLIB importlib("stdole32.tlb"); importlib("stdole2.tlb"); importlib("dte.tlb"); importlib("vslangproj.tlb"); importlib("vslangproj2.tlb"); importlib("vslangproj80.tlb"); importlib("vslangproj90.tlb"); importlib("vslangproj100.tlb"); #include "vsshelluuids.h" enum __PROJECTREFERENCETYPE2 { /* defined in vslangproj80.idl PROJREFTYPE_ASSEMBLY = 1, PROJREFTYPE_ACTIVEX = 2, PROJREFTYPE_NATIVE = 3, */ PROJREFTYPE_SDK = 4, }; [ dual, oleautomation, object, uuid(8BF64AF0-AD98-46D1-8E3E-A02AF56F80AE) ] [custom(uuid_VsPreserveSigAttribute, "preservesig")] interface References2 : References { // "wszSDKDisplayName" is optional, if it's null or empty, the name extracted from "wszSDKidentifier" is used as display name. [id(9), helpstring("AddSDK")] HRESULT AddSDK([in] BSTR wszSDKDisplayName, [in] BSTR wszSDKidentifier, [out, retval] Reference **ppProjectReference); }; enum VsProjPropId110 { VBPROJPROPID_OutputTypeEx = 17000, VBPROJPROPID_Prefer32Bit = 17001, }; // This lists reference properties enum VsProjReferencePropId110 { /*********************************************** defined in vslangproj80.idl DISPID_Reference_SpecificVersion = 120, DISPID_Reference_SubType = 121, DISPID_Reference_Isolated = 122, DISPID_Reference_Aliases = 123, DISPID_Reference_RefType = 124, DISPID_Reference_AutoReferenced = 125, DISPID_Reference_Resolved = 126, *********************************************** *********************************************** defined in vslangproj100.idl DISPID_Reference_EmbedInteropTypes = 127, ***********************************************/ DISPID_Reference_ExpandedSdkReferences = 128, DISPID_Reference_Group = 129, }; enum prjOutputTypeEx { // These three values must be in this order to match the equivalent values // from the old OutputType enum (prjOutputType) prjOutputTypeEx_WinExe, prjOutputTypeEx_Exe, prjOutputTypeEx_Library, prjOutputTypeEx_WinMDObj, prjOutputTypeEx_AppContainerExe, }; cpp_quote("#define prjOutputTypeEx_Min prjOutputTypeEx_WinExe") cpp_quote("#define prjOutputTypeEx_Max prjOutputTypeEx_AppContainerExe") [ uuid(ecb0a5b7-1c4e-4400-a6c4-4b83614d9cc0), helpstring("VB Project properties 7"), pointer_default(unique), dual ] interface VBProjectProperties7 : VBProjectProperties6 { [propget, id(VBPROJPROPID_OutputTypeEx), helpstring("Project Output Type")] HRESULT OutputTypeEx([out, retval] DWORD *pOutputType); [propput, id(VBPROJPROPID_OutputTypeEx), helpstring("Project Output Type")] HRESULT OutputTypeEx([in] DWORD outputType); } [ uuid(3519671B-B697-4721-BAD5-3BC4BFC76AB4), helpstring("VB Project configuration properties 6"), pointer_default(unique), dual ] interface VBProjectConfigurationProperties6 : VBProjectConfigurationProperties5 { [propget, id(VBPROJPROPID_Prefer32Bit), helpstring("32 bit preferred")] HRESULT Prefer32Bit([out, retval] VARIANT_BOOL *pValue); [propput, id(VBPROJPROPID_Prefer32Bit), helpstring("32 bit preferred")] HRESULT Prefer32Bit([in] VARIANT_BOOL value); } [ uuid(ad327414-a8f4-4e96-9a2a-3008592fd6a9), helpstring("CSharp Project properties 7"), pointer_default(unique), dual ] interface CSharpProjectProperties7 : CSharpProjectProperties6 { [propget, id(VBPROJPROPID_OutputTypeEx), helpstring("Project Output Type")] HRESULT OutputTypeEx([out, retval] DWORD *pOutputType); [propput, id(VBPROJPROPID_OutputTypeEx), helpstring("Project Output Type")] HRESULT OutputTypeEx([in] DWORD outputType); } [ uuid(97C0FC65-E652-44E1-8367-907FDFCF84FD), helpstring("CSharp Project configuration properties 6"), pointer_default(unique), dual ] interface CSharpProjectConfigurationProperties6 : CSharpProjectConfigurationProperties5 { [propget, id(VBPROJPROPID_Prefer32Bit), helpstring("32 bit preferred")] HRESULT Prefer32Bit([out, retval] VARIANT_BOOL *pValue); [propput, id(VBPROJPROPID_Prefer32Bit), helpstring("32 bit preferred")] HRESULT Prefer32Bit([in] VARIANT_BOOL value); } [ dual, oleautomation, object, uuid(676A4C6F-F436-40DE-88E9-DB12BB864598) ] interface Reference5 : Reference4 { [propget, id(DISPID_Reference_ExpandedSdkReferences), helpstring("Retrieve list of references associated with an SDK references")] HRESULT ExpandedSdkReferences([out, retval] SAFEARRAY(Reference5*) *pRetVal); [propget, id(DISPID_Reference_GROUP), helpstring("Retrieve the associated group object")] HRESULT Group([out, retval] Reference **ppRefGroup); }; #ifndef INTEROPLIB } #endif