Hello everyone,
As the title says, I’m trying to make a change to a SharePoint 2010 .wsp file, and I’m running into issues.
Basically, the solution is a farm solution my client uses for navigation. Whoever originally built the solution hard-coded all of the links in said navigation solution into a .dll file that lives inside the .wsp file. That person is no longer with the company, and did not leave original source code.
I was able to decompile the .dll file from the existing .wsp file using telerik decompiler, then make the changes I needed to make to the .dll file. After I did that, I opened the old .wsp file in visual studio, and added the new .dll file I made to the solution, overwriting the old one. I was able to build the solution and deploy it in my dev environment, but now I get a parser error, most likely because the original public key and whatnot have been overwritten.
What do I need to do to update the references to the old dll to point to the new one? Do I need to go through every file in the solution and look for references to that file, then change it to point to the new one? If so, where do I get the public key and whatnot? As you can tell by my question, I am not a developer, I just need to make a simple change to last them until they upgrade to SP2016 and build a new navigation solution. Thanks in advance!
Update: I was able to sign the .dll file with a new public key, and I found where I needed to change the reference, but I’m still getting a parser error.
The answer to my specific problem was that I was able to find the old visual studio files for the solution and rebuild it. I do still want to know how to reverse engineer the solution though.
Hey Samuel, Thank you for your input. You are correct. I was able to import the .wsp into that new project, but it doesn’t decompile the .dll file, so didn’t solve my problem. You can decompile the .dll file with a decompiler program, and rebuild it, but putting that into your project breaks references. Luckily I found the original project files and altered the code that way.
Hey Nick, not quite sure what you mean by reverse engineer? A WSP is actually .CAB file, (but I am guessing you know that). If you rename it to a CAB and then extract it to your local file system you will see the contents.
Any more info on your “Parser Error” say?
Hi, Create a visual studio project of type “Import solution package”. Then select your artefacts. This will recreate a SharePoint project that you can redeploy but there might be some error and it won’t decompile DLL. Regards