有没有办法从Silverlight发布中获取代码?
我的笔记本电脑已完全崩溃,我从我的应用程序中留下的唯一东西就是已发布的网站。
是否有工具或其他东西可以从我的应用程序中获取代码?
您可以将xap重命名为zip,将其解压缩,然后使用Reflector提取代码。它不会完全恢复它或恢复XAML。据我所知,没有办法对XAML进行逆向工程。
编辑:Shawn为+1,指出XAML存储为纯文本资源,因此您也可以恢复它。不太确定为什么会这样,但嘿,这是个好消息:-)
使用.NET Reflector,您可以使用所有XAML。它以纯文本形式存储为资源。
试试Silverlight Spy。它是调试Silverlight的一个很好的工具。如果将它与.NET Reflector结合使用,您可以查看任何正在运行的Silverlight应用程序的反编译代码。
顺便说一下,here是Silverlight Spy的所有功能。
JetBrains已经制作了DotPeek。它目前是免费的(我希望它保持这种方式,与.NET Reflector不同)。
它还将Silverlight DLL文件一直转换回可读源代码!我已经尝试过几个Silverlight项目,它就像一个魅力。
**注意:截至撰写本文时,它仍然有一些问题:字符串连接和事件处理程序生成错误的代码。*