Partager via


LanguageService.QueryService, méthode

Retourne l'interface de demande du service spécifié.

Espace de noms :  Microsoft.VisualStudio.Package
Assemblys :   Microsoft.VisualStudio.Package.LanguageService.9.0 (dans Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.10.0 (dans Microsoft.VisualStudio.Package.LanguageService.10.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.11.0 (dans Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
  Microsoft.VisualStudio.Package.LanguageService (dans Microsoft.VisualStudio.Package.LanguageService.dll)

Syntaxe

'Déclaration
Public Overridable Function QueryService ( _
    ByRef guidService As Guid, _
    ByRef iid As Guid, _
    <OutAttribute> ByRef obj As IntPtr _
) As Integer
public virtual int QueryService(
    ref Guid guidService,
    ref Guid iid,
    out IntPtr obj
)

Paramètres

  • guidService
    Type : System.Guid%
    [in] GUID du service à l'interroger.
  • iid
    Type : System.Guid%
    [in] GUID de l'interface souhaitée.
  • obj
    Type : System.IntPtr%
    [] un pointeur démarshalé à l'interface.

Valeur de retour

Type : System.Int32
Si réussi, retours S_OK ; sinon, retours code d'erreur.

Implémentations

IServiceProvider.QueryService(Guid%, Guid%, IntPtr%)

Remarques

Les appels LanguageService.GetService de méthode de base pour obtenir l'interface et exécutent des opérations d'IOleServiceProvider l'appel à son QueryService.Cette méthode est une implémentation de QueryService.

Exemples

Cet exemple montre comment utiliser cette méthode pour s'interroger pour une interface et pour marshaler le pointeur résultant dans un objet interface réel.

IVsUIShell GetUIShell(Microsoft.VisualStudio.OLE.Interop.IServiceProvider pProvider)
{
    IVsUIShell pUIShell = null;
    IntPtr ptr = IntPtr.Zero;
    pProvider.QueryService.(typeof(SVsUIShell).GUID,ptr);
    if (ptr != IntPtr.Zero)
    {
        pUIShell = (IVsUIShell)Marshal.GetObjectForIUnknown(ptr);
    }
    return pUIShell;

}

Sécurité .NET Framework

Voir aussi

Référence

LanguageService Classe

Microsoft.VisualStudio.Package, espace de noms