Question

Je suis à la décompilation de certaines de ces méthodes dans le Microsoft.SharePoint.dll pour essayer de voir si je peux ou non d'utiliser certaines de ces classes pour ce que je dois ou si je dois réinventer la roue...

De toute façon, je peux tracer les appels de fonction, jusqu'au point où je commence à frapper le code non managé appelé par le SPRequest wrapper.Beaucoup de fonctions de l' SPRequest classe d'appeler des fonctions de l' SPRequestInternalClass classe qui sont toutes marquées public virtual extern mis en œuvre par des objets COM quelque part.

Maintenant, je ne suis pas en train d'appeler ces méthodes directement ou quelque chose de stupide comme ça, mais j'ai besoin de voir comment ils sont mis en œuvre.

Ma question est de savoir où est le non géré, COM partie du code SP?

Était-ce utile?

La solution

J'ai pensé à elle.J'ai trouvé ce blog par Hristo Pavlov: La Compréhension De SharePoint:SPRequest

Dans l'article, il explique:

L'interne SPRequest de classe a non géré référence à un objet COM appelé SP.SPRequest et ayant un identificateur de classe de BDEADEE2-C265-11D0-BCED-00A0C90AB50F qui est mis en œuvre et exposés par le OWSSVR.DLL la bibliothèque de la classe.

La SP.SPRequest objet COM expose près de 400 opérations de base et presque tout ce que vous faites avec le Microsoft.NET géré modèle d'objet SharePoint qui lit ou écrit à la ContentDatabase (y compris les données, les champs, les types de contenu, les schémas de liste, etc) seront effectivement aller via cet objet COM non managé.Même plus le OWSSVR.DLL est en fait une extension ISAPI inscrit dans IIS et ses méthodes peuvent être appelées directement par le biais d'une requête HTTP /_vti_bin/owssvr.dll.De nombreuses applications Office (Word, Excel, InfoPath, SharePoint Designer, etc) sont à l'aide de HTTP appels à OWSSRV directement afin de s'intégrer à une distance de SharePoint server.Il ne sera pas trop exagéré de dire que OWSSRV.DLL c'est l'âme et le corps de WSS 3.0.Il s'agit historiquement de SharePoint ver 1.0 avant Microsoft.NET lorsque les applications web ont été développés à l'aide de technologies comme ISAPI et DCOM.

Edit:

Une autre remarque à ce sujet est que cette DLL n'est pas dans le GAC.

Vous pouvez trouver cette assemblée dans le ISAPI répertoire de la ruche.Dans la PS 2013, le chemin est:

C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\ISAPI\OWSSVR.DLL

Ou l'équivalent sur votre système.

Edit 2:

Bonne chance de faire quelque chose avec cette DLL.Vous ne pouvez pas décompiler ce que vous pouvez avec le .NET assemblées, afin de savoir où les DLL n'a pas réellement vous aider par les pairs en interne, sans-papiers, les implémentations.

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top