工具-附加工具
標題:ILDASM
命令:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\ildasm.exe
這樣就在工具中出現Ildasm工具
打開一個dll或者exe可以查看屬性。
參考:
http://msdn.microsoft.com/zh-cn/library/system.web.ui.scriptreference.assembly(v=VS.90).aspx


這樣就在工具中出現Ildasm工具
打開一個dll或者exe可以查看屬性。

url:
http://greatverve.cnblogs.com/archive/2012/02/17/Ildasm.html
AssemblyInfo.cs文件中的程序集屬性
AssemblyInfo.cs文件中的程序集屬性
下面是默認的AssemblyInfo.cs文件的內容
using System.Reflection;
using System.Runtime.CompilerServices;
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]
其意義如下:
1. [assembly: AssemblyTitle("")]
[assembly: AssemblyTitle("")]代碼中”:”好前面的assembly表示此屬性在程序集范圍內發生作用。
類型名:System.Reflection.AssemblyTitleAttribute
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyTitleAttribute : Attribute
此屬性描述程序集的名稱,如:某某公司某某項目某某模塊等,此名稱可以是任何合法的字符串,可以有空格。
2. [assembly: AssemblyDescription("")]
類型名:
System.Reflection.AssemblyDescriptionAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDescriptionAttribute : Attribute
功能:
程序集的簡單描述,如功能、語言等
3. [assembly: AssemblyDescription("")]
類型名:
System.Reflection.AssemblyDescriptionAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDescriptionAttribute : Attribute
功能:
程序集的簡單說明,描述程序集的功能、特性、約束等
4. [assembly: AssemblyConfiguration("")]
類型名:
System.Reflection.AssemblyConfigurationAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyConfigurationAttribute : Attribute
功能:
程序集的配置信息,如:零售、發布、調試等,.NET運行時沒有使用此屬性
5. [assembly: AssemblyCompany("")]
類型名:
System.Reflection.AssemblyCompanyAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCompanyAttribute : Attribute
功能:
程序集所屬的公司名稱
6. [assembly: AssemblyProduct("")]
類型名:
System.Reflection.AssemblyProductAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyProductAttribute : Attribute
功能:
程序集所述的產品名
7. [assembly: AssemblyCopyright("")]
類型名:
System.Reflection.AssemblyCopyrightAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCopyrightAttribute : Attribute
功能:
程序集的版權信息
8. [assembly: AssemblyTrademark("")]
類型名:
System.Reflection.AssemblyTrademarkAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyTrademarkAttribute : Attribute
功能:
程序集的商標信息
9. [assembly: AssemblyCulture("")]
類型名:
System.Reflection.AssemblyCultureAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCultureAttribute : Attribute
功能:
枚舉的字段表明程序集支持的區域性。程序集也可以指定區域獨立性,表明它包含用於默認區域性的資源。運行庫將任何區域性屬性未設為空的程序集按附屬程序集處理。此類程序集受附屬程序集綁定規則約束。詳細信息,請參見運行庫如何定位程序集。
10. [assembly: AssemblyVersion("")]
類型名:
System.Reflection.AssemblyVersionAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyVersionAttribute : Attribute
功能:
程序集版本信息,按照4段式保存版本信息,即:主.次要.內部版本.修改版本。在強名稱程序集中CLR使用此值來綁定操作。可以使用通配符*來替代內部版本和修改版本,VS將自動為其生成版本號。如定義為“1.0.*”,則VS會自動生成后面的部分。如果設定為*,則每次修改程序后版本號都會自動發生變更。
11. [assembly: AssemblyDelaySign(false)]
類型名:
System.Reflection.AssemblyDelaySignAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDelaySignAttribute : Attribute
功能:
是否使用延遲簽名
12. [assembly: AssemblyKeyFile("")]
類型名:
System.Reflection.AssemblyKeyFileAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyKeyFileAttribute : Attribute
功能:
包含了公鑰(如果使用延遲簽名)或者既包含公鑰也包含私鑰的文件名。此公鑰和私鑰將作為參數傳遞至此屬性的構造函數。文件名稱與輸出文件路徑(.exe 或 .dll)相關,與源文件路徑無關。
13. [assembly: AssemblyKeyName("")]
類型名:
System.Reflection.AssemblyKeyNameAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyKeyNameAttribute : Attribute
功能:
表明包含密鑰對(作為參數傳遞至此屬性的構造函數)的密鑰容器。
--------------------------------------------------------------------------
using System.Reflection;
using System.Runtime.CompilerServices;
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]
其意義如下:
1. [assembly: AssemblyTitle("")]
[assembly: AssemblyTitle("")]代碼中”:”好前面的assembly表示此屬性在程序集范圍內發生作用。
類型名:System.Reflection.AssemblyTitleAttribute
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyTitleAttribute : Attribute
此屬性描述程序集的名稱,如:某某公司某某項目某某模塊等,此名稱可以是任何合法的字符串,可以有空格。
2. [assembly: AssemblyDescription("")]
類型名:
System.Reflection.AssemblyDescriptionAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDescriptionAttribute : Attribute
功能:
程序集的簡單描述,如功能、語言等
3. [assembly: AssemblyDescription("")]
類型名:
System.Reflection.AssemblyDescriptionAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDescriptionAttribute : Attribute
功能:
程序集的簡單說明,描述程序集的功能、特性、約束等
4. [assembly: AssemblyConfiguration("")]
類型名:
System.Reflection.AssemblyConfigurationAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyConfigurationAttribute : Attribute
功能:
程序集的配置信息,如:零售、發布、調試等,.NET運行時沒有使用此屬性
5. [assembly: AssemblyCompany("")]
類型名:
System.Reflection.AssemblyCompanyAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCompanyAttribute : Attribute
功能:
程序集所屬的公司名稱
6. [assembly: AssemblyProduct("")]
類型名:
System.Reflection.AssemblyProductAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyProductAttribute : Attribute
功能:
程序集所述的產品名
7. [assembly: AssemblyCopyright("")]
類型名:
System.Reflection.AssemblyCopyrightAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCopyrightAttribute : Attribute
功能:
程序集的版權信息
8. [assembly: AssemblyTrademark("")]
類型名:
System.Reflection.AssemblyTrademarkAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyTrademarkAttribute : Attribute
功能:
程序集的商標信息
9. [assembly: AssemblyCulture("")]
類型名:
System.Reflection.AssemblyCultureAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyCultureAttribute : Attribute
功能:
枚舉的字段表明程序集支持的區域性。程序集也可以指定區域獨立性,表明它包含用於默認區域性的資源。運行庫將任何區域性屬性未設為空的程序集按附屬程序集處理。此類程序集受附屬程序集綁定規則約束。詳細信息,請參見運行庫如何定位程序集。
10. [assembly: AssemblyVersion("")]
類型名:
System.Reflection.AssemblyVersionAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyVersionAttribute : Attribute
功能:
程序集版本信息,按照4段式保存版本信息,即:主.次要.內部版本.修改版本。在強名稱程序集中CLR使用此值來綁定操作。可以使用通配符*來替代內部版本和修改版本,VS將自動為其生成版本號。如定義為“1.0.*”,則VS會自動生成后面的部分。如果設定為*,則每次修改程序后版本號都會自動發生變更。
11. [assembly: AssemblyDelaySign(false)]
類型名:
System.Reflection.AssemblyDelaySignAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyDelaySignAttribute : Attribute
功能:
是否使用延遲簽名
12. [assembly: AssemblyKeyFile("")]
類型名:
System.Reflection.AssemblyKeyFileAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyKeyFileAttribute : Attribute
功能:
包含了公鑰(如果使用延遲簽名)或者既包含公鑰也包含私鑰的文件名。此公鑰和私鑰將作為參數傳遞至此屬性的構造函數。文件名稱與輸出文件路徑(.exe 或 .dll)相關,與源文件路徑無關。
13. [assembly: AssemblyKeyName("")]
類型名:
System.Reflection.AssemblyKeyNameAttribute
Attribute聲明:
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class AssemblyKeyNameAttribute : Attribute
功能:
表明包含密鑰對(作為參數傳遞至此屬性的構造函數)的密鑰容器。
--------------------------------------------------------------------------
C#取得AssemblyInfo.cs的項目屬性
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Text;
- using System.Windows.Forms;
- using System.Reflection;
- namespace Assmest
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- this.Text=string.Format(String.Format("關於 {0}", AssemblyTitle));
- }
- public string AssemblyTitle
- {
- get
- {
- // 獲取此程序集上的所有 Title 屬性
- object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false);
- // 如果至少有一個 Title 屬性
- if (attributes.Length > 0)
- {
- // 請選擇第一個屬性
- AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0];
- // 如果該屬性為非空字符串,則將其返回
- if (titleAttribute.Title != "")
- return titleAttribute.Title;
- }
- // 如果沒有 Title 屬性,或者 Title 屬性為一個空字符串,則返回 .exe 的名稱
- return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase);
- }
- }
- }
- }
其他的屬性有:
- Assembly.GetExecutingAssembly().GetName().Version.ToString();
- AssemblyDescriptionAttribute
- AssemblyProductAttribute
- AssemblyCopyrightAttribute
- AssemblyCompanyAttribute