如何获取程序集版本信息实例C#net源代码编写

如何获取程序集版本信息实例C#net源代码编写,第1张

下载后的ILSPY 。

打开EXE

然后会在最下面出现打开的exe。

结构如下图:类---方法

点击方法后,会在右面出现,方法的雀掘具体代码。

ILspy很强大,甚至方法的参数都和源代码相同,只是方法里面的参数名字会自动生成。

那么,如何保存反编译的源代码?

整体保存源代码,可以点击你的反编译的程序。如图

选择程序集或是里面的类或是方法后。点击File->savecode。

如果是导出exe全部,会生成一个类库。保存类库即可。

那么如何运行编译反编译的源码?

重新建立一个对应的项目(反编译源码是winform就建立一个winform程序。)

在解决方案上 添加------->现有项。然后删除新建立的空的winform代码。保留刚才添加进来的源码。如图所模神示:

然后直接点击运行...直接可以运行软件了。

反编译后的软件,直顷码核接生产了类,大家可以根据需要修改。

6

毕竟.NET 和JAVA 属于中间语言,很好反编译。那么如何保护自己的代码安全?防止别人反编译或是查看自己的源码呢,下面的经验中将进行介绍:如何给代码加壳...

public partial class About : System.Web.UI.Page

{

public string AssemblyTitle

{

get

{

object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false)

if (attributes.Length >0)

{

AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0]

if (titleAttribute.Title != "")

{

return titleAttribute.Title

}

}

return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase)

}

}

public string AssemblyVersion

{

get

{

return Assembly.GetExecutingAssembly().GetName().Version.ToString()

}

}

public string AssemblyDescription

{

get

{

object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false)

if (attributes.Length == 0)

{

return ""

}

return ((AssemblyDescriptionAttribute)attributes[0]).Description

}

}

public string AssemblyProduct

{

get

{

object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false)

if (attributes.Length == 0)

{

return ""

}

return ((AssemblyProductAttribute)attributes[0]).Product

}

}

public string AssemblyCopyright

{

get

{

object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false)

if (attributes.Length == 0)

{

return ""

}

return ((AssemblyCopyrightAttribute)attributes[0]).Copyright

}

}

public string AssemblyCompany

{

get

{

object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false)

if (attributes.Length == 0)

{

return ""

}

return ((AssemblyCompanyAttribute)attributes[0]).Company

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12287485.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存