Assembly.GetEntryAssembly().GetName()
を使用してアプリケーション/アセンブリ名とそのバージョンを取得していますが、会社名と著作権の変数が表示されません。どうやって手に入れますか?
次のように FileVersionInfo を使用できます。
var versionInfo = FileVersionInfo.GetVersionInfo(Assembly.GetEntryAssembly().Location);
var companyName = versionInfo.CompanyName;
会社名の この回答 から:
Assembly currentAssem = typeof(CurrentClass).Assembly;
object[] attribs = currentAssem.GetCustomAttributes(typeof(AssemblyCompanyAttribute), true);
if(attribs.Length > 0)
{
string company = ((AssemblyCompanyAttribute)attribs[0]).Company
}
著作権についても同様です。 (AssemblyCopyrightAttribute
を使用します)。
これらは、リフレクションを使用してAssemblyオブジェクトで列挙する必要がある属性です。
var attributes = Assembly.GetEntryAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false);
var attribute = null;
if (attributes.Length > 0)
{
attribute = attributes[0] as AssemblyCompanyAttribute;
}