Problem decompiling a class from Microsoft.SharePoint.Portal.dll

4 posts, 0 answers
  1. Matthias
    Matthias avatar
    2 posts
    Member since:
    Jun 2011

    Posted 15 Jun 2011 Link to this post

    Hi,
    when I load Microsoft.SharePoint.Portal.dll (File version is 12.0.6520.5000) and then attempt to expand the class Microsoft.SharePoint.Portal.UserProfiles.AdminUI.EditProperty, JustDecompile shows me an error:

    Current member / type: Microsoft.SharePoint.Portal.UserProfiles.AdminUI.EditPropertyFile path: C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI\microsoft.sharepoint.portal.dllValue cannot be null.Parameter name: second at System.Linq.Enumerable.SequenceEqual[TSource](IEnumerable`1 first, IEnumerable`1 second, IEqualityComparer`1 comparer) at Mono.Cecil.AssemblyResolver.AssemblyPathResolver.ArePublicKeyEquals(Byte[] publicKeyToken1, Byte[] publicKeyToken2) in c:\B\Behemoth\JustDecompile Production Build\Sources\Decompiler\Mono.Cecil\Mono.Cecil.AssemblyResolver\AssemblyPathResolver.cs:line 232 at Mono.Cecil.AssemblyResolver.AssemblyPathResolver.CheckFileExistence(AssemblyName assemblyName, String searchPattern) in c:\B\Behemoth\JustDecompile Production Build\Sources\Decompiler\Mono.Cecil\Mono.Cecil.AssemblyResolver\AssemblyPathResolver.cs:line 215 at Mono.Cecil.AssemblyResolver.AssemblyPathResolver.ResolveCompact(AssemblyName assemblyName) in c:\B\Behemoth\JustDecompile Production Build\Sources\Decompiler\Mono.Cecil\Mono.Cecil.AssemblyResolver\AssemblyPathResolver.cs:line 161 at Mono.Cecil.AssemblyResolver.AssemblyPathResolver.GetAssemblyLocation(AssemblyName assemblyName, TargetPlatform runtime) in c:\B\Behemoth\JustDecompile Production Build\Sources\Decompiler\Mono.Cecil\Mono.Cecil.AssemblyResolver\AssemblyPathResolver.cs:line 98 at Mono.Cecil.AssemblyResolver.AssemblyPathResolver.<>c__DisplayClassc.<FindAssemblyPath>b__7() in c:\B\Behemoth\JustDecompile Production Build\Sources\Decompiler\Mono.Cecil\Mono.Cecil.AssemblyResolver\AssemblyPathResolver.cs:line 83 at Mono.Cecil.AssemblyResolver.AssemblyPathResolver.<FindAssemblyPath>b__8(Func`1 f) in c:\B\Behemoth\JustDecompile Production Build\Sources\Decompiler\Mono.Cecil\Mono.Cecil.AssemblyResolver\AssemblyPathResolver.cs:line 86 at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext() at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate) at Mono.Cecil.AssemblyResolver.AssemblyPathResolver.FindAssemblyPath(AssemblyName sourceAssemblyName) in c:\B\Behemoth\JustDecompile Production Build\Sources\Decompiler\Mono.Cecil\Mono.Cecil.AssemblyResolver\AssemblyPathResolver.cs:line 86 at Mono.Cecil.AssemblyResolver.AssemblyPathResolver.FindAssemblyPath(AssemblyNameReference assemblyNameReference) in c:\B\Behemoth\JustDecompile Production Build\Sources\Decompiler\Mono.Cecil\Mono.Cecil.AssemblyResolver\AssemblyPathResolver.cs:line 65 at Infrastructure.Structure.NavigationPath.CreateInstance(TypeReference typeReference, String memberName, String returnType, String paramValue) in c:\B\Behemoth\JustDecompile Production Build\Sources\UI\Infrastructure\Structure\NavigationPath.cs:line 49 at Infrastructure.Structure.NavigationPath.CreateInstance(Object typeReference) in c:\B\Behemoth\JustDecompile Production Build\Sources\UI\Infrastructure\Structure\NavigationPath.cs:line 163 at JustDecompile.CodeViewer.FlowDocumentFormatter.WriteReference(String value, Object reference) in c:\B\Behemoth\JustDecompile Production Build\Sources\UI\JustDecompile.CodeViewer\Formatters\FlowDocumentFormatter.cs:line 83 at Telerik.JustDecompiler.Languages.BaseLanguageWriter.WriteReference(String name, Object reference) at Telerik.JustDecompiler.Languages.AttributeWriter.WriteSecurityAttributes(IMemberDefinition member) at Telerik.JustDecompiler.Languages.AttributeWriter.WriteMemberAttributesAndNewLine(IMemberDefinition member) at Telerik.JustDecompiler.Languages.BaseImperativeLanguageWriter.Write(IMemberDefinition member, Boolean showCompilerGeneratedMembers) at JustDecompile.CodeViewer.CodeWriter.Write() in c:\B\Behemoth\JustDecompile Production Build\Sources\UI\JustDecompile.CodeViewer\Writers\CodeWriter.cs:line 32 at JustDecompile.CodeViewer.ViewModels.CodeViewerViewModel.(AssemblyMemberNode member, CancellationToken cancellationToken) in c:\B\Behemoth\JustDecompile Production Build\Sources\UI\JustDecompile.CodeViewer\ViewModels\CodeViewerViewModel.cs:line 107

     

    Maybe you want to check and see what's going wrong there.
    Apart from that I am really pleased by JustDecompile. It's a nice tool!
    Kind regards, Matthias

  2. Kaloyan
    Admin
    Kaloyan avatar
    920 posts

    Posted 16 Jun 2011 Link to this post

    Hi Matthias,

    Thanks for the nice words. Is there a chance we get the problematic Microsoft.SharePoint.Portal assembly from you so can investigate the real cause of the exception. Thanks once again for your participation in the product development.

    Best wishes,
    Kaloyan
    the Telerik team

    Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get now >>

  3. DevCraft banner
  4. Matthias
    Matthias avatar
    2 posts
    Member since:
    Jun 2011

    Posted 16 Jun 2011 Link to this post

    Hi Kaloyan from the Telerik team,
    you can take the Microsoft.SharePoint.Portal.dll from a Microsoft Office SharePoint Server 2007 installation. I'm afraid I am not authorized to redistribute this assembly to you.
    Installing a demo version of MOSS on one of your testing or development machines would be a good idea anyway.
    Kind regards, Matthias
  5. Kaloyan
    Admin
    Kaloyan avatar
    920 posts

    Posted 16 Jun 2011 Link to this post

    Hello Matthias,

    I have managed to find SharePoint assemblies but with a different version. Fix will be in your hands after the next internal build. Let us know if the exception still appears after the upgraded version.

    Kind regards,
    Kaloyan
    the Telerik team

    Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get now >>

Back to Top