From 7f5d0c3915d178e4d412a0b1a9b48baf058b2afc Mon Sep 17 00:00:00 2001 From: FloppyDiskDrive Date: Sun, 17 Sep 2017 21:24:14 -0500 Subject: Added Error Blaster 95, see Description for details Error Blaster is updated with a new type: "Memory Leak." After the messageGen timer interval hits 300, the PC BSODs. Start Runner is also in there, however it is not functional due to unknown reasons. --- .../12padamsViruses/ErrorBlaster95.Designer.cs | 112 +++++++++++++++++ .../Win95Apps/12padamsViruses/ErrorBlaster95.cs | 75 ++++++++++++ .../Win95Apps/12padamsViruses/ErrorBlaster95.resx | 136 +++++++++++++++++++++ .../12padamsViruses/StartRunner95.Designer.cs | 106 ++++++++++++++++ .../Win95Apps/12padamsViruses/StartRunner95.cs | 65 ++++++++++ .../Win95Apps/12padamsViruses/StartRunner95.resx | 132 ++++++++++++++++++++ .../Win95Apps/IE4Sites/12padams1998.Designer.cs | 2 + .../OS/Win95/Win95Apps/IE4Sites/12padams1998.cs | 18 +++ .../OS/Win95/Win95Apps/Win95WindowsExplorer.cs | 21 ++++ 9 files changed, 667 insertions(+) create mode 100644 Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.Designer.cs create mode 100644 Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.cs create mode 100644 Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.resx create mode 100644 Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.Designer.cs create mode 100644 Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.cs create mode 100644 Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.resx (limited to 'Histacom2/OS/Win95/Win95Apps') diff --git a/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.Designer.cs b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.Designer.cs new file mode 100644 index 0000000..6035a1a --- /dev/null +++ b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.Designer.cs @@ -0,0 +1,112 @@ +namespace Histacom2.OS.Win95.Win95Apps._12padamViruses +{ + partial class ErrorBlaster95 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ErrorBlaster95)); + this.classicButton1 = new Histacom2.Engine.UI.ClassicButton(); + this.classicButton3 = new Histacom2.Engine.UI.ClassicButton(); + this.label1 = new System.Windows.Forms.Label(); + this.classicButton2 = new Histacom2.Engine.UI.ClassicButton(); + this.SuspendLayout(); + // + // classicButton1 + // + this.classicButton1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.classicButton1.BackColor = System.Drawing.Color.Silver; + this.classicButton1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); + this.classicButton1.ForeColor = System.Drawing.Color.Black; + this.classicButton1.Location = new System.Drawing.Point(16, 219); + this.classicButton1.Name = "classicButton1"; + this.classicButton1.Size = new System.Drawing.Size(73, 38); + this.classicButton1.TabIndex = 18; + this.classicButton1.Text = "Infect"; + this.classicButton1.Click += new System.EventHandler(this.classicButton1_Click); + // + // classicButton3 + // + this.classicButton3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.classicButton3.BackColor = System.Drawing.Color.Silver; + this.classicButton3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); + this.classicButton3.ForeColor = System.Drawing.Color.Black; + this.classicButton3.Location = new System.Drawing.Point(353, 219); + this.classicButton3.Name = "classicButton3"; + this.classicButton3.Size = new System.Drawing.Size(75, 38); + this.classicButton3.TabIndex = 20; + this.classicButton3.Text = "Exit"; + this.classicButton3.Click += new System.EventHandler(this.classicButton3_Click); + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(11, 2); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(423, 169); + this.label1.TabIndex = 21; + this.label1.Text = resources.GetString("label1.Text"); + // + // classicButton2 + // + this.classicButton2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.classicButton2.BackColor = System.Drawing.Color.Silver; + this.classicButton2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); + this.classicButton2.ForeColor = System.Drawing.Color.Black; + this.classicButton2.Location = new System.Drawing.Point(95, 219); + this.classicButton2.Name = "classicButton2"; + this.classicButton2.Size = new System.Drawing.Size(75, 38); + this.classicButton2.TabIndex = 19; + this.classicButton2.Text = "Remove"; + this.classicButton2.Click += new System.EventHandler(this.classicButton2_Click); + // + // ErrorBlaster95 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.Color.Silver; + this.Controls.Add(this.label1); + this.Controls.Add(this.classicButton3); + this.Controls.Add(this.classicButton2); + this.Controls.Add(this.classicButton1); + this.Name = "ErrorBlaster95"; + this.Size = new System.Drawing.Size(447, 265); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private Engine.UI.ClassicButton classicButton1; + private Engine.UI.ClassicButton classicButton3; + private System.Windows.Forms.Label label1; + private Engine.UI.ClassicButton classicButton2; + } +} diff --git a/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.cs b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.cs new file mode 100644 index 0000000..3d6f064 --- /dev/null +++ b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.cs @@ -0,0 +1,75 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using Histacom2.Engine; +using System.Drawing.Text; +using static Histacom2.Engine.SaveSystem; + +namespace Histacom2.OS.Win95.Win95Apps._12padamViruses +{ + public partial class ErrorBlaster95 : UserControl + { + Timer messageGen = new Timer(); + Random messageChooser = new Random(); + WindowManager wm = new WindowManager(); + private static PrivateFontCollection pfc = new PrivateFontCollection(); + public ErrorBlaster95() + { + InitializeComponent(); + messageGen.Interval = 3000; + messageGen.Tick += MessageGen_Tick; + pfc.AddFontFile(DataDirectory + "\\LeviWindows.ttf"); + label1.Font=new Font(pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); + } + + private void MessageGen_Tick(object sender, EventArgs e) + { + int messageRandomizer = messageChooser.Next(1, 3); + switch (messageRandomizer) + { + case 1: + wm.StartInfobox95("Alert!", "A virus has been detected on your computer! Press OK to disinfect!", Engine.Template.InfoboxType.Error, Engine.Template.InfoboxButtons.OK); + messageGen.Interval -= 300; + break; + + case 2: + wm.StartInfobox95("Microsoft Security Alert", "Microsoft says to install UltraSurpremeAntiVirus1998 to get rid of any viruses!", Engine.Template.InfoboxType.Info, Engine.Template.InfoboxButtons.OK); + messageGen.Interval -= 300; + break; + case 3: + wm.StartInfobox95("Error", "A BSOD.exe virus has been found on your computer!", Engine.Template.InfoboxType.Warning, Engine.Template.InfoboxButtons.OK); + messageGen.Interval -= 300; + break; + } + if (messageGen.Interval == 300) + { + messageGen.Stop(); + + BSODCreator bs = new BSODCreator(); + + bs.throw9XBSOD(true, BSODCreator.BSODCauses.Generic); + } + } + + private void classicButton3_Click(object sender, EventArgs e) + { + ParentForm.Close(); + } + + private void classicButton1_Click(object sender, EventArgs e) + { + messageGen.Start(); + } + + private void classicButton2_Click(object sender, EventArgs e) + { + messageGen.Stop(); + } + } +} diff --git a/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.resx b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.resx new file mode 100644 index 0000000..71d9882 --- /dev/null +++ b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/ErrorBlaster95.resx @@ -0,0 +1,136 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Virus Name: Virus.Win9x.ErrorBlaster +Virus Type: Scareware/Memory Leak +Purpose: To force the user into doing a specific type of action to remove the virus. +Effect: Various infoboxes at random times will show up, alerting you about false +infections until the user is forced to buy a rogue antivirus to "remove" the virus. + +Hey there, thanks for downloading this ErrorBlaster sample from my website! +This virus can be very annoying and is very common. +The infoboxes will show up at random, first showing anywhere from one to three seconds +and will decrease every 300 milliseconds. + +Note: Clicking "Remove" will disinfect but will not remove the infoboxes opened. +Warning: A BSOD will occur over elongated periods of use. + + + \ No newline at end of file diff --git a/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.Designer.cs b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.Designer.cs new file mode 100644 index 0000000..01ac2e2 --- /dev/null +++ b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.Designer.cs @@ -0,0 +1,106 @@ +namespace Histacom2.OS.Win95.Win95Apps._12padamsViruses +{ + partial class StartRunner95 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(StartRunner95)); + this.classicButton1 = new Histacom2.Engine.UI.ClassicButton(); + this.classicButton2 = new Histacom2.Engine.UI.ClassicButton(); + this.classicButton3 = new Histacom2.Engine.UI.ClassicButton(); + this.label2 = new System.Windows.Forms.Label(); + this.SuspendLayout(); + // + // classicButton1 + // + this.classicButton1.BackColor = System.Drawing.Color.Silver; + this.classicButton1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); + this.classicButton1.ForeColor = System.Drawing.Color.Black; + this.classicButton1.Location = new System.Drawing.Point(16, 168); + this.classicButton1.Name = "classicButton1"; + this.classicButton1.Size = new System.Drawing.Size(75, 23); + this.classicButton1.TabIndex = 11; + this.classicButton1.Text = "Infect"; + this.classicButton1.Click += new System.EventHandler(this.classicButton1_Click); + // + // classicButton2 + // + this.classicButton2.BackColor = System.Drawing.Color.Silver; + this.classicButton2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); + this.classicButton2.ForeColor = System.Drawing.Color.Black; + this.classicButton2.Location = new System.Drawing.Point(97, 168); + this.classicButton2.Name = "classicButton2"; + this.classicButton2.Size = new System.Drawing.Size(75, 23); + this.classicButton2.TabIndex = 12; + this.classicButton2.Text = "Remove"; + this.classicButton2.Click += new System.EventHandler(this.classicButton2_Click); + // + // classicButton3 + // + this.classicButton3.BackColor = System.Drawing.Color.Silver; + this.classicButton3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); + this.classicButton3.ForeColor = System.Drawing.Color.Black; + this.classicButton3.Location = new System.Drawing.Point(293, 168); + this.classicButton3.Name = "classicButton3"; + this.classicButton3.Size = new System.Drawing.Size(75, 23); + this.classicButton3.TabIndex = 13; + this.classicButton3.Text = "Exit"; + this.classicButton3.Click += new System.EventHandler(this.classicButton3_Click); + // + // label2 + // + this.label2.Anchor = System.Windows.Forms.AnchorStyles.Top; + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(13, 23); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(355, 117); + this.label2.TabIndex = 10; + this.label2.Text = resources.GetString("label2.Text"); + // + // StartRunner95 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.classicButton3); + this.Controls.Add(this.classicButton2); + this.Controls.Add(this.classicButton1); + this.Controls.Add(this.label2); + this.Name = "StartRunner95"; + this.Size = new System.Drawing.Size(383, 208); + this.Load += new System.EventHandler(this.StartRunner95_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + private Engine.UI.ClassicButton classicButton1; + private Engine.UI.ClassicButton classicButton2; + private Engine.UI.ClassicButton classicButton3; + internal System.Windows.Forms.Label label2; + } +} diff --git a/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.cs b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.cs new file mode 100644 index 0000000..579f001 --- /dev/null +++ b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.cs @@ -0,0 +1,65 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using Histacom2.Engine; +using System.Drawing.Text; +using static Histacom2.Engine.SaveSystem; +using Histacom2.OS.Win95; + +namespace Histacom2.OS.Win95.Win95Apps._12padamsViruses +{ + public partial class StartRunner95 : UserControl + { + Point beginLocation; + int taskbarLength; + int xLocation; + Timer moveStart = new Timer(); + private static PrivateFontCollection pfc = new PrivateFontCollection(); + Windows95 w = new Windows95(); + public StartRunner95() + { + InitializeComponent(); + pfc.AddFontFile(DataDirectory + "\\LeviWindows.ttf"); + label2.Font = new Font(pfc.Families[0], 16F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0))); + beginLocation = w.startbutton.Location; + moveStart.Interval = 300; + moveStart.Tick += MoveStart_Tick; + + } + + private void MoveStart_Tick(object sender, EventArgs e) + { + int taskbarWidth = w.taskbar.Size.Width; + Random random = new Random(); + xLocation = random.Next(1, taskbarWidth); + w.startbutton.Location = new Point(xLocation, w.startbutton.Location.Y); + } + + private void classicButton1_Click(object sender, EventArgs e) + { + moveStart.Start(); + } + + private void StartRunner95_Load(object sender, EventArgs e) + { + + } + + private void classicButton2_Click(object sender, EventArgs e) + { + moveStart.Stop(); + w.startbutton.Location = beginLocation; + } + + private void classicButton3_Click(object sender, EventArgs e) + { + ParentForm.Close(); + } + } +} diff --git a/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.resx b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.resx new file mode 100644 index 0000000..f8ee0b3 --- /dev/null +++ b/Histacom2/OS/Win95/Win95Apps/12padamsViruses/StartRunner95.resx @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Virus Name: Start Runner +Virus Type: Joke Program +Purpose: A fun prank to pull on April Fools' Day! +Effect: The start button will move side to side along the taskbar. + +Hey there! Thanks for installing this joke program from my website! +This is a fairly common joke program often found in email chains. +How this works is simple; it simply moves your startbutton from side-to-side. +To remove, simply press the remove button on this window. + + + \ No newline at end of file diff --git a/Histacom2/OS/Win95/Win95Apps/IE4Sites/12padams1998.Designer.cs b/Histacom2/OS/Win95/Win95Apps/IE4Sites/12padams1998.Designer.cs index 29a63e4..e1bc705 100644 --- a/Histacom2/OS/Win95/Win95Apps/IE4Sites/12padams1998.Designer.cs +++ b/Histacom2/OS/Win95/Win95Apps/IE4Sites/12padams1998.Designer.cs @@ -275,6 +275,7 @@ this.button7.TabIndex = 12; this.button7.Text = "Download"; this.button7.UseVisualStyleBackColor = false; + this.button7.Click += new System.EventHandler(this.button7_Click); // // label13 // @@ -297,6 +298,7 @@ this.button6.TabIndex = 10; this.button6.Text = "Download"; this.button6.UseVisualStyleBackColor = false; + this.button6.Click += new System.EventHandler(this.button6_Click); // // label12 // diff --git a/Histacom2/OS/Win95/Win95Apps/IE4Sites/12padams1998.cs b/Histacom2/OS/Win95/Win95Apps/IE4Sites/12padams1998.cs index bedfe56..13c22c6 100644 --- a/Histacom2/OS/Win95/Win95Apps/IE4Sites/12padams1998.cs +++ b/Histacom2/OS/Win95/Win95Apps/IE4Sites/12padams1998.cs @@ -145,5 +145,23 @@ namespace Histacom2.OS.Win95.Win95Apps.IE4Sites opendownload.appName.Text = "Downloading: Guess The Number V1"; opendownload.amountToDL = 16; } + + private void button7_Click(object sender, EventArgs e) + { + WinClassicDownloader opendownload = new WinClassicDownloader(); + WindowManager wm = new WindowManager(); + wm.Init(opendownload, "Downloader", null, false, true); + opendownload.appName.Text = "Downloading: Error Blaster 95"; + opendownload.amountToDL = 32; + } + + private void button6_Click(object sender, EventArgs e) + { + WinClassicDownloader opendownload = new WinClassicDownloader(); + WindowManager wm = new WindowManager(); + wm.Init(opendownload, "Downloader", null, false, true); + opendownload.appName.Text = "Downloading: Start Runner 95"; + opendownload.amountToDL = 32; + } } } diff --git a/Histacom2/OS/Win95/Win95Apps/Win95WindowsExplorer.cs b/Histacom2/OS/Win95/Win95Apps/Win95WindowsExplorer.cs index 9c7e2a3..519e14d 100644 --- a/Histacom2/OS/Win95/Win95Apps/Win95WindowsExplorer.cs +++ b/Histacom2/OS/Win95/Win95Apps/Win95WindowsExplorer.cs @@ -13,6 +13,7 @@ using Histacom2.Engine; using Newtonsoft.Json; using Histacom2.Engine.Template; using System.Diagnostics; +using Histacom2.OS.Win95.Win95Apps._12padamViruses; namespace Histacom2.OS.Win95.Win95Apps { @@ -350,6 +351,26 @@ namespace Histacom2.OS.Win95.Win95Apps Program.nonimportantapps[Program.nonimportantapps.Count - 1].BringToFront(); Program.nonimportantapps[Program.nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(Program.NonImportantApp_Closing); + break; + case "eb95 setup": + Win95Installer ebInstall = new Win95Installer("Error Blaster 95"); + ebInstall.InstallCompleted += (sender, args) => TitleScreen.frm95.ErrorBlasterToolStripMenuItem.Visible = true; + WinClassic installer = wm.Init(ebInstall, "Error Blaster 95 Setup", null, true, true); + Program.AddTaskbarItem(installer, installer.Tag.ToString(), "Error Blaster 95 Setup", null); + installer.BringToFront(); + break; + case "error blaster": + WinClassic eb = wm.Init(new ErrorBlaster95(), "Welcome to Error Blaster 95!", null, true, true); + Program.AddTaskbarItem(eb, eb.Tag.ToString(), "Welcome to Error Blaster 95!", null); + Program.nonimportantapps[Program.nonimportantapps.Count - 1].BringToFront(); + Program.nonimportantapps[Program.nonimportantapps.Count - 1].FormClosing += new FormClosingEventHandler(Program.NonImportantApp_Closing); + break; + case "sr95 setup": + Win95Installer srInstall = new Win95Installer("Start Runner 95"); + srInstall.InstallCompleted += (sender, args) => TitleScreen.frm95.ErrorBlasterToolStripMenuItem.Visible = true; + WinClassic install = wm.Init(srInstall, "Start Runner 95 Setup", null, true, true); + Program.AddTaskbarItem(install, install.Tag.ToString(), "Error Blaster 95 Setup", null); + install.BringToFront(); break; default: wm.StartInfobox95(path.Replace(ProfileMyComputerDirectory, "C:"), $"{path.Replace(ProfileMyComputerDirectory, "C:")} is not a valid Win32 application.", InfoboxType.Error, InfoboxButtons.OK); -- cgit v1.2.3