diff options
| author | lempamo <[email protected]> | 2017-09-18 16:49:14 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-09-18 16:49:14 -0500 |
| commit | 2d83155d9833a7ea1396ee62265f900be258a5eb (patch) | |
| tree | 28c7cfc42927d9c340a5f17048a024227358fc5f /Histacom2/OS/Win95/Win95Apps | |
| parent | 92495924b688faf93d37929a8dab27554ac78e4f (diff) | |
| parent | 3188a4eac09bbcfb1dffaa2e001f1f76137ed1ac (diff) | |
| download | histacom2-2d83155d9833a7ea1396ee62265f900be258a5eb.tar.gz histacom2-2d83155d9833a7ea1396ee62265f900be258a5eb.tar.bz2 histacom2-2d83155d9833a7ea1396ee62265f900be258a5eb.zip | |
Merge pull request #161 from IBMPCDOS5/master
Added Error Blaster 95, see Description for details
Diffstat (limited to 'Histacom2/OS/Win95/Win95Apps')
9 files changed, 667 insertions, 0 deletions
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 + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component 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() + { + 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 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <data name="label1.Text" xml:space="preserve"> + <value>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. +</value> + </data> +</root>
\ 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 + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component 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() + { + 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 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <data name="label2.Text" xml:space="preserve"> + <value>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. +</value> + </data> +</root>
\ No newline at end of file diff --git a/Histacom2/OS/Win95/Win95Apps/IE3Sites/12padams1998.Designer.cs b/Histacom2/OS/Win95/Win95Apps/IE3Sites/12padams1998.Designer.cs index c23dc6d..dc00477 100644 --- a/Histacom2/OS/Win95/Win95Apps/IE3Sites/12padams1998.Designer.cs +++ b/Histacom2/OS/Win95/Win95Apps/IE3Sites/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/IE3Sites/12padams1998.cs b/Histacom2/OS/Win95/Win95Apps/IE3Sites/12padams1998.cs index 6adfbb8..a6c67df 100644 --- a/Histacom2/OS/Win95/Win95Apps/IE3Sites/12padams1998.cs +++ b/Histacom2/OS/Win95/Win95Apps/IE3Sites/12padams1998.cs @@ -145,5 +145,23 @@ namespace Histacom2.OS.Win95.Win95Apps.IE3Sites 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 { @@ -351,6 +352,26 @@ namespace Histacom2.OS.Win95.Win95Apps 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); break; |
