LanguageService.GetSite(Guid, IntPtr) Method

Definition

Returns an unmarshaled pointer to a requested interface.

public void GetSite (ref Guid iid, out IntPtr ptr);
Parameters
iid
Guid

[in] The GUID of the desired interface.

ptr
IntPtr

[out] Returns an unmarshaled interface pointer or a null value if the interface is not available.

Examples

This example shows how to get a pointer to an interface and marshal the pointer into an actual interface object.

IVsLanguageService GetLanguageService()  
{  
    IVsLanguageService pLanguageService = null;  
    IntPtr ptr = IntPtr.Zero;  
    GetSite(typeof(IVsLanguageService),ptr);  
    if (ptr != IntPtr.Zero)  
    {  
        pLanguageService = (IVsLanguageService)Marshal.GetObjectForIUnknown(ptr);  
    }  
    return pLanguageService;  

}

Remarks

This method queries the site (also known as a service provider) for the specified interface and returns a pointer to that interface. This method is an implementation of <xref:Microsoft.VisualStudio.Shell.ServiceProvider.Microsoft.VisualStudio.OLE.Interop.IObjectWithSite.GetSite%2A?displayProperty=fullName>.

Applies to