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

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

下载后的ILSPY 。

打开EXE

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

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

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

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

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

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

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

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

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

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

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

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

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

6

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

您好!易语言可以通过使用.NET框架提供的反射机制来调用其他程序集中的变量。具体步骤如下:

1. 引用程序集:在易语言中,通过使用.NET框架提供的Assembly类来引用其他程序集。可以使用Assembly类的LoadFile方法来加载程序集文件,然后使用Assembly类的GetType方法获取程序集中的类型。

2. 获取变量:获取程序集中的变量可以使用Type类的GetField或GetProperty方法。这些方法可以根据变量名称获取变量信息。

3. 调用变量:获取变量信息后,可以使用GetValue方法获取变量的值。如果变量是静态的,则可以直接使用Type类的InvokeMember方法调用变量。

需要注意的是,调用其他程序集中的变量需要确保程序集已经被正确加载,并且变量的访问权限符合要求。

希望这个回答能够帮助您!

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/7710068.html

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

发表评论

登录后才能评论

评论列表(0条)

保存