255 lines
10 KiB
C#
255 lines
10 KiB
C#
using System;
|
|
using System.Drawing;
|
|
using System.Collections;
|
|
using System.ComponentModel;
|
|
using System.Windows.Forms;
|
|
using GZTW.AyaNova.BLL;
|
|
using System.Text;
|
|
using System.Reflection;
|
|
using System.IO;
|
|
|
|
namespace AyaNova
|
|
{
|
|
/// <summary>
|
|
/// Summary description for About.
|
|
/// </summary>
|
|
public class About : System.Windows.Forms.Form
|
|
{
|
|
private System.Windows.Forms.TextBox edAbout;
|
|
private System.Windows.Forms.Label lblCopyRight;
|
|
private MenuStrip menuStrip1;
|
|
private ToolStripMenuItem copyExtendedSupportInfoToClipboardToolStripMenuItem;
|
|
/// <summary>
|
|
/// Required designer variable.
|
|
/// </summary>
|
|
private System.ComponentModel.Container components = null;
|
|
|
|
public About()
|
|
{
|
|
//
|
|
// Required for Windows Form Designer support
|
|
//
|
|
InitializeComponent();
|
|
|
|
//
|
|
// TODO: Add any constructor code after InitializeComponent call
|
|
//
|
|
}
|
|
|
|
/// <summary>
|
|
/// Clean up any resources being used.
|
|
/// </summary>
|
|
protected override void Dispose( bool disposing )
|
|
{
|
|
if( disposing )
|
|
{
|
|
if(components != null)
|
|
{
|
|
components.Dispose();
|
|
}
|
|
}
|
|
base.Dispose( disposing );
|
|
}
|
|
|
|
#region Windows Form Designer generated code
|
|
/// <summary>
|
|
/// Required method for Designer support - do not modify
|
|
/// the contents of this method with the code editor.
|
|
/// </summary>
|
|
private void InitializeComponent()
|
|
{
|
|
this.edAbout = new System.Windows.Forms.TextBox();
|
|
this.lblCopyRight = new System.Windows.Forms.Label();
|
|
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
|
this.copyExtendedSupportInfoToClipboardToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
|
this.menuStrip1.SuspendLayout();
|
|
this.SuspendLayout();
|
|
//
|
|
// edAbout
|
|
//
|
|
this.edAbout.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
|
| System.Windows.Forms.AnchorStyles.Left)
|
|
| System.Windows.Forms.AnchorStyles.Right)));
|
|
this.edAbout.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
|
this.edAbout.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
this.edAbout.Location = new System.Drawing.Point(0, 134);
|
|
this.edAbout.Multiline = true;
|
|
this.edAbout.Name = "edAbout";
|
|
this.edAbout.ReadOnly = true;
|
|
this.edAbout.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
|
this.edAbout.Size = new System.Drawing.Size(775, 307);
|
|
this.edAbout.TabIndex = 0;
|
|
this.edAbout.Text = "afdasfasdf";
|
|
//
|
|
// lblCopyRight
|
|
//
|
|
this.lblCopyRight.Dock = System.Windows.Forms.DockStyle.Top;
|
|
this.lblCopyRight.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
|
this.lblCopyRight.Font = new System.Drawing.Font("Verdana", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
this.lblCopyRight.Location = new System.Drawing.Point(0, 26);
|
|
this.lblCopyRight.Name = "lblCopyRight";
|
|
this.lblCopyRight.Size = new System.Drawing.Size(775, 103);
|
|
this.lblCopyRight.TabIndex = 1;
|
|
this.lblCopyRight.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
|
//
|
|
// menuStrip1
|
|
//
|
|
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
this.copyExtendedSupportInfoToClipboardToolStripMenuItem});
|
|
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
|
this.menuStrip1.Name = "menuStrip1";
|
|
this.menuStrip1.Size = new System.Drawing.Size(775, 26);
|
|
this.menuStrip1.TabIndex = 3;
|
|
this.menuStrip1.Text = "menuStrip1";
|
|
//
|
|
// copyExtendedSupportInfoToClipboardToolStripMenuItem
|
|
//
|
|
this.copyExtendedSupportInfoToClipboardToolStripMenuItem.Name = "copyExtendedSupportInfoToClipboardToolStripMenuItem";
|
|
this.copyExtendedSupportInfoToClipboardToolStripMenuItem.Size = new System.Drawing.Size(249, 22);
|
|
this.copyExtendedSupportInfoToClipboardToolStripMenuItem.Text = "&Copy config and log file to clipboard";
|
|
this.copyExtendedSupportInfoToClipboardToolStripMenuItem.Click += new System.EventHandler(this.copyExtendedSupportInfoToClipboardToolStripMenuItem_Click);
|
|
//
|
|
// About
|
|
//
|
|
this.AutoScaleBaseSize = new System.Drawing.Size(6, 15);
|
|
this.ClientSize = new System.Drawing.Size(775, 455);
|
|
this.Controls.Add(this.lblCopyRight);
|
|
this.Controls.Add(this.edAbout);
|
|
this.Controls.Add(this.menuStrip1);
|
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
|
this.MainMenuStrip = this.menuStrip1;
|
|
this.MinimizeBox = false;
|
|
this.Name = "About";
|
|
this.Text = "About AyaNova";
|
|
this.Load += new System.EventHandler(this.About_Load);
|
|
this.menuStrip1.ResumeLayout(false);
|
|
this.menuStrip1.PerformLayout();
|
|
this.ResumeLayout(false);
|
|
this.PerformLayout();
|
|
|
|
}
|
|
#endregion
|
|
|
|
private void About_Load(object sender, System.EventArgs e)
|
|
{
|
|
this.Icon = Resource1.AyaNova5;
|
|
StringBuilder sb=new StringBuilder();
|
|
Assembly a=Assembly.GetExecutingAssembly();
|
|
sb.Append("AyaNova® ");
|
|
sb.Append(AyaBizUtils.DisplayVersion(a.GetName().Version));//case 2003
|
|
// sb.Append(a.GetName().Version.ToString());
|
|
sb.Append("\r\n");
|
|
|
|
System.Diagnostics.FileVersionInfo fileVersion = System.Diagnostics.FileVersionInfo.GetVersionInfo(a.Location);
|
|
int nHotFix = fileVersion.FileBuildPart;//case 2003
|
|
if(nHotFix>0)
|
|
sb.AppendLine("(Patch " + nHotFix.ToString() + ")");
|
|
|
|
sb.Append("Copyright © 1999-2020 Ground Zero Tech-Works Inc.\r\n");
|
|
sb.Append("All rights reserved\r\n");
|
|
lblCopyRight.Text=sb.ToString();
|
|
sb.Length=0;
|
|
|
|
sb.Append("License information:\r\n");
|
|
sb.Append(AyaBizUtils.View());
|
|
sb.Append("\r\nTechnical information:\r\n");
|
|
sb.Append(Util.FullSupportInfo());
|
|
sb.Append("\r\nSession information:\r\n");
|
|
sb.Append(Util.FullSettingsInfo(User.GetItem(User.CurrentThreadUserID)));
|
|
edAbout.Text=sb.ToString();
|
|
edAbout.SelectionStart=0;
|
|
edAbout.SelectionLength=0;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void copyExtendedSupportInfoToClipboardToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
//case 3663
|
|
Util.LogFullSupportInfoToFile();
|
|
|
|
StringBuilder sbInfo = new StringBuilder();
|
|
string currentAssemblyDirectoryName = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
|
|
//sbInfo.Append("Tech support info\r\n=-=-=-=-=-=-=-=-=-\r\n");
|
|
//sbInfo.Append(edAbout.Text);
|
|
//sbInfo.Append("\r\n\r\n\r\n");
|
|
|
|
sbInfo.Append("CONFIG.TXT FILE CONTENTS\r\n=-=-=-=-=-=-=-=-=-\r\n");
|
|
if (File.Exists(currentAssemblyDirectoryName + "\\config.txt"))
|
|
{
|
|
try
|
|
{
|
|
sbInfo.Append(System.IO.File.ReadAllText(currentAssemblyDirectoryName + "\\config.txt"));
|
|
}
|
|
catch (Exception ex) { sbInfo.Append(ex.Message); }
|
|
}
|
|
else
|
|
{
|
|
sbInfo.Append("Config.txt file was not found as expected at: ");
|
|
sbInfo.Append(currentAssemblyDirectoryName);
|
|
|
|
}
|
|
|
|
sbInfo.Append("\r\n\r\n\r\n");
|
|
|
|
|
|
//The following block allows to read the AyaLog.txt file even though it's locked by the logger
|
|
sbInfo.Append("AYALOG.TXT FILE CONTENTS\r\n=-=-=-=-=-=-=-=-=-\r\n");
|
|
if (File.Exists(currentAssemblyDirectoryName + "\\AyaLog.txt"))
|
|
{
|
|
try
|
|
{
|
|
System.Text.StringBuilder sb = new StringBuilder();
|
|
FileStream logFileStream = new FileStream(currentAssemblyDirectoryName + "\\AyaLog.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
|
|
StreamReader logFileReader = new StreamReader(logFileStream);
|
|
while (!logFileReader.EndOfStream)
|
|
{
|
|
sb.Append(logFileReader.ReadLine());
|
|
sb.Append("\r\n");
|
|
}
|
|
|
|
// Clean up
|
|
logFileReader.Close();
|
|
logFileStream.Close();
|
|
sbInfo.Append(sb.ToString());
|
|
sb.Length = 0;
|
|
sb = null;
|
|
}
|
|
catch (Exception ex)
|
|
{ sbInfo.Append(ex.Message); }
|
|
}
|
|
else
|
|
{
|
|
sbInfo.Append("AyaLog.txt file was not found as expected at: ");
|
|
sbInfo.Append(currentAssemblyDirectoryName);
|
|
|
|
}
|
|
|
|
//case 3664 get integration log
|
|
sbInfo.Append("\r\n\r\n\r\n");
|
|
|
|
|
|
//The following block allows to read the AyaLog.txt file even though it's locked by the logger
|
|
sbInfo.Append("INTEGRATION LOG\r\n=-=-=-=-=-=-=-=-=-\r\n");
|
|
IntegrationLogList ill = IntegrationLogList.GetList();
|
|
foreach (IntegrationLogList.IntegrationLogListInfo i in ill)
|
|
{
|
|
sbInfo.AppendLine(i.LogEntry);
|
|
}
|
|
|
|
|
|
sbInfo.Append("\r\n\r\n\r\n");
|
|
|
|
|
|
//case 3589
|
|
System.Windows.Forms.Clipboard.SetText(Util.RedactPasswords(sbInfo.ToString()));
|
|
sbInfo.Length = 0;
|
|
sbInfo = null;
|
|
}
|
|
}
|
|
}
|