using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Reflection; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Eugen.ESystem.Windows.Forms; namespace MyMessageBoxEx { public partial class Form1 : Form { #region Version und Copyright // Version und Copyright string programName = Path.GetFileNameWithoutExtension(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase); //Den Programmnamen auslesen string programVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); static object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); string copyright = GenerateCopyright(); string icon = Application.StartupPath + "\\Info.bmp"; //Assembly Datum und Zeit static DateTime value = AssemblyDateTime(); string date = value.ToShortDateString(); string time = value.ToLongTimeString(); private static DateTime AssemblyDateTime() { var version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; var buildDateTime = new DateTime(2000, 1, 1).Add(new TimeSpan(TimeSpan.TicksPerDay * version.Build + TimeSpan.TicksPerSecond * 2 * version.Revision)); //Tage seit dem 1. Januar 2000 und Sekunden seit Mitternacht, (multiplizier mit 2 ergibt das Original) return buildDateTime; } private static string CurrentYear() { DateTime dtn = DateTime.Now; return dtn.Year.ToString(); } private static string StartYear() { string startYear = ((AssemblyCopyrightAttribute)attributes[0]).Copyright; return startYear.Remove(0, startYear.LastIndexOf(" ") + 1); } private static string GenerateCopyright() { string startYear = StartYear(); string currentYear = CurrentYear(); if (startYear == currentYear) { return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; } else { return String.Concat(((AssemblyCopyrightAttribute)attributes[0]).Copyright, "-", currentYear); } } #endregion #region Programm-Info /// /// Contains the name of the program file /// public static string ProgramName { set; get; } /// /// Contains the version of the program file /// public static string ProgramVersion { set; get; } /// /// Contains the copyright notice /// public static string Copyright { set; get; } private void SetProgramInfo() { //Name, Version und Copyright setzen ProgramName = programName; ProgramVersion = programVersion; Copyright = copyright; } #endregion public Form1() { InitializeComponent(); } private void buttonShowMessageBox_Click(object sender, EventArgs e) { string result = OwnMessageBox(); MessageBox.Show("Der Rückgabewert ist: " + result + "\r\nProgramname: " + MessageBoxEx.ProgramName + "\r\nVersion: " + MessageBoxEx.ProgramVersion + "\r\n" + MessageBoxEx.Copyright, "Auswertung"); //Rückgabewert anzeigen } private string OwnMessageBox() { MessageBoxEx msgBox = MessageBoxExManager.CreateMessageBox("OwnMessageBox"); //ATTENTION: Name must be unique msgBox.Caption = "Test"; msgBox.Text = "Das ist ein Test"; msgBox.AllowSaveResponse = false; msgBox.SaveResponseText = ""; msgBox.UseSavedResponse = false; msgBox.Timeout = 0; msgBox.TimeoutResult = default; msgBox.PlayAlsertSound = false; msgBox.Font = new Font("Tahoma", 8); //Use a standard icon msgBox.Icon = MessageBoxExIcon.Asterisk; MessageBoxExButton btnOK = new MessageBoxExButton(); btnOK.Text = "OK"; btnOK.Value = "OK"; btnOK.HelpText = ""; btnOK.IsCancelButton = false; msgBox.AddButton(btnOK); MessageBoxExButton btnCancel = new MessageBoxExButton(); btnCancel.Text = "Cancel"; btnCancel.Value = "Cancel"; btnCancel.HelpText = ""; btnCancel.IsCancelButton = false; msgBox.AddButton(btnCancel); return msgBox.Show(); //Returns the result } } }