Fixed Issue 66.
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/GUI/CrashForm.Designer.cs Sun Jul 04 12:12:37 2010 +0000
1.3 @@ -0,0 +1,279 @@
1.4 +/*
1.5 +
1.6 + Version: MPL 1.1/GPL 2.0/LGPL 2.1
1.7 +
1.8 + The contents of this file are subject to the Mozilla Public License Version
1.9 + 1.1 (the "License"); you may not use this file except in compliance with
1.10 + the License. You may obtain a copy of the License at
1.11 +
1.12 + http://www.mozilla.org/MPL/
1.13 +
1.14 + Software distributed under the License is distributed on an "AS IS" basis,
1.15 + WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
1.16 + for the specific language governing rights and limitations under the License.
1.17 +
1.18 + The Original Code is the Open Hardware Monitor code.
1.19 +
1.20 + The Initial Developer of the Original Code is
1.21 + Michael Möller <m.moeller@gmx.ch>.
1.22 + Portions created by the Initial Developer are Copyright (C) 2009-2010
1.23 + the Initial Developer. All Rights Reserved.
1.24 +
1.25 + Contributor(s):
1.26 +
1.27 + Alternatively, the contents of this file may be used under the terms of
1.28 + either the GNU General Public License Version 2 or later (the "GPL"), or
1.29 + the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
1.30 + in which case the provisions of the GPL or the LGPL are applicable instead
1.31 + of those above. If you wish to allow use of your version of this file only
1.32 + under the terms of either the GPL or the LGPL, and not to allow others to
1.33 + use your version of this file under the terms of the MPL, indicate your
1.34 + decision by deleting the provisions above and replace them with the notice
1.35 + and other provisions required by the GPL or the LGPL. If you do not delete
1.36 + the provisions above, a recipient may use your version of this file under
1.37 + the terms of any one of the MPL, the GPL or the LGPL.
1.38 +
1.39 +*/
1.40 +
1.41 +namespace OpenHardwareMonitor.GUI {
1.42 + partial class CrashForm {
1.43 + /// <summary>
1.44 + /// Required designer variable.
1.45 + /// </summary>
1.46 + private System.ComponentModel.IContainer components = null;
1.47 +
1.48 + /// <summary>
1.49 + /// Clean up any resources being used.
1.50 + /// </summary>
1.51 + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
1.52 + protected override void Dispose(bool disposing) {
1.53 + if (disposing && (components != null)) {
1.54 + components.Dispose();
1.55 + }
1.56 + base.Dispose(disposing);
1.57 + }
1.58 +
1.59 + #region Windows Form Designer generated code
1.60 +
1.61 + /// <summary>
1.62 + /// Required method for Designer support - do not modify
1.63 + /// the contents of this method with the code editor.
1.64 + /// </summary>
1.65 + private void InitializeComponent() {
1.66 + this.sendButton = new System.Windows.Forms.Button();
1.67 + this.exitButton = new System.Windows.Forms.Button();
1.68 + this.commentTextBox = new System.Windows.Forms.TextBox();
1.69 + this.titleLabel = new System.Windows.Forms.Label();
1.70 + this.label3 = new System.Windows.Forms.Label();
1.71 + this.label1 = new System.Windows.Forms.Label();
1.72 + this.commentPanel = new System.Windows.Forms.Panel();
1.73 + this.reportPanel = new System.Windows.Forms.Panel();
1.74 + this.reportTextBox = new System.Windows.Forms.TextBox();
1.75 + this.textBox1 = new System.Windows.Forms.TextBox();
1.76 + this.label2 = new System.Windows.Forms.Label();
1.77 + this.emailTextBox = new System.Windows.Forms.TextBox();
1.78 + this.commentPanel.SuspendLayout();
1.79 + this.reportPanel.SuspendLayout();
1.80 + this.SuspendLayout();
1.81 + //
1.82 + // sendButton
1.83 + //
1.84 + this.sendButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
1.85 + this.sendButton.Location = new System.Drawing.Point(449, 469);
1.86 + this.sendButton.Name = "sendButton";
1.87 + this.sendButton.Size = new System.Drawing.Size(75, 23);
1.88 + this.sendButton.TabIndex = 2;
1.89 + this.sendButton.Text = "Send";
1.90 + this.sendButton.UseVisualStyleBackColor = true;
1.91 + this.sendButton.Click += new System.EventHandler(this.sendButton_Click);
1.92 + //
1.93 + // exitButton
1.94 + //
1.95 + this.exitButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
1.96 + this.exitButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
1.97 + this.exitButton.Location = new System.Drawing.Point(530, 469);
1.98 + this.exitButton.Name = "exitButton";
1.99 + this.exitButton.Size = new System.Drawing.Size(75, 23);
1.100 + this.exitButton.TabIndex = 3;
1.101 + this.exitButton.Text = "Exit";
1.102 + this.exitButton.UseVisualStyleBackColor = true;
1.103 + //
1.104 + // commentTextBox
1.105 + //
1.106 + this.commentTextBox.AcceptsReturn = true;
1.107 + this.commentTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
1.108 + this.commentTextBox.Dock = System.Windows.Forms.DockStyle.Fill;
1.109 + this.commentTextBox.Location = new System.Drawing.Point(4, 4);
1.110 + this.commentTextBox.Multiline = true;
1.111 + this.commentTextBox.Name = "commentTextBox";
1.112 + this.commentTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
1.113 + this.commentTextBox.Size = new System.Drawing.Size(586, 77);
1.114 + this.commentTextBox.TabIndex = 1;
1.115 + //
1.116 + // titleLabel
1.117 + //
1.118 + this.titleLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
1.119 + | System.Windows.Forms.AnchorStyles.Right)));
1.120 + this.titleLabel.BackColor = System.Drawing.SystemColors.Window;
1.121 + this.titleLabel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
1.122 + this.titleLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
1.123 + this.titleLabel.Location = new System.Drawing.Point(-1, -1);
1.124 + this.titleLabel.Name = "titleLabel";
1.125 + this.titleLabel.Padding = new System.Windows.Forms.Padding(10);
1.126 + this.titleLabel.Size = new System.Drawing.Size(619, 52);
1.127 + this.titleLabel.TabIndex = 4;
1.128 + this.titleLabel.Text = "Open Hardware Monitor has encountered a problem and needs to close. We are sorry " +
1.129 + "for the inconvenience.";
1.130 + //
1.131 + // label3
1.132 + //
1.133 + this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
1.134 + | System.Windows.Forms.AnchorStyles.Right)));
1.135 + this.label3.AutoEllipsis = true;
1.136 + this.label3.AutoSize = true;
1.137 + this.label3.Location = new System.Drawing.Point(9, 63);
1.138 + this.label3.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
1.139 + this.label3.Name = "label3";
1.140 + this.label3.Size = new System.Drawing.Size(571, 13);
1.141 + this.label3.TabIndex = 5;
1.142 + this.label3.Text = "To help diagnose and fix the problem, you can send a crash report. The following " +
1.143 + "report has been created automatically:";
1.144 + //
1.145 + // label1
1.146 + //
1.147 + this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
1.148 + | System.Windows.Forms.AnchorStyles.Right)));
1.149 + this.label1.AutoEllipsis = true;
1.150 + this.label1.AutoSize = true;
1.151 + this.label1.Location = new System.Drawing.Point(9, 347);
1.152 + this.label1.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
1.153 + this.label1.Name = "label1";
1.154 + this.label1.Size = new System.Drawing.Size(279, 13);
1.155 + this.label1.TabIndex = 6;
1.156 + this.label1.Text = "You can add additional information to the report (optional):";
1.157 + //
1.158 + // commentPanel
1.159 + //
1.160 + this.commentPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
1.161 + | System.Windows.Forms.AnchorStyles.Right)));
1.162 + this.commentPanel.BackColor = System.Drawing.SystemColors.Window;
1.163 + this.commentPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
1.164 + this.commentPanel.Controls.Add(this.commentTextBox);
1.165 + this.commentPanel.Location = new System.Drawing.Point(12, 371);
1.166 + this.commentPanel.Margin = new System.Windows.Forms.Padding(3, 3, 3, 8);
1.167 + this.commentPanel.Name = "commentPanel";
1.168 + this.commentPanel.Padding = new System.Windows.Forms.Padding(4, 4, 1, 4);
1.169 + this.commentPanel.Size = new System.Drawing.Size(593, 87);
1.170 + this.commentPanel.TabIndex = 1;
1.171 + this.commentPanel.TabStop = true;
1.172 + //
1.173 + // reportPanel
1.174 + //
1.175 + this.reportPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
1.176 + | System.Windows.Forms.AnchorStyles.Left)
1.177 + | System.Windows.Forms.AnchorStyles.Right)));
1.178 + this.reportPanel.BackColor = System.Drawing.SystemColors.Window;
1.179 + this.reportPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
1.180 + this.reportPanel.Controls.Add(this.reportTextBox);
1.181 + this.reportPanel.Controls.Add(this.textBox1);
1.182 + this.reportPanel.Location = new System.Drawing.Point(12, 87);
1.183 + this.reportPanel.Name = "reportPanel";
1.184 + this.reportPanel.Padding = new System.Windows.Forms.Padding(4, 4, 1, 4);
1.185 + this.reportPanel.Size = new System.Drawing.Size(593, 212);
1.186 + this.reportPanel.TabIndex = 8;
1.187 + //
1.188 + // reportTextBox
1.189 + //
1.190 + this.reportTextBox.BackColor = System.Drawing.SystemColors.Window;
1.191 + this.reportTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
1.192 + this.reportTextBox.Dock = System.Windows.Forms.DockStyle.Fill;
1.193 + this.reportTextBox.Location = new System.Drawing.Point(4, 4);
1.194 + this.reportTextBox.Multiline = true;
1.195 + this.reportTextBox.Name = "reportTextBox";
1.196 + this.reportTextBox.ReadOnly = true;
1.197 + this.reportTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
1.198 + this.reportTextBox.Size = new System.Drawing.Size(586, 202);
1.199 + this.reportTextBox.TabIndex = 9;
1.200 + this.reportTextBox.TabStop = false;
1.201 + //
1.202 + // textBox1
1.203 + //
1.204 + this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
1.205 + this.textBox1.Dock = System.Windows.Forms.DockStyle.Fill;
1.206 + this.textBox1.Location = new System.Drawing.Point(4, 4);
1.207 + this.textBox1.Multiline = true;
1.208 + this.textBox1.Name = "textBox1";
1.209 + this.textBox1.Size = new System.Drawing.Size(586, 202);
1.210 + this.textBox1.TabIndex = 2;
1.211 + //
1.212 + // label2
1.213 + //
1.214 + this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
1.215 + | System.Windows.Forms.AnchorStyles.Right)));
1.216 + this.label2.AutoEllipsis = true;
1.217 + this.label2.AutoSize = true;
1.218 + this.label2.Location = new System.Drawing.Point(9, 318);
1.219 + this.label2.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
1.220 + this.label2.Name = "label2";
1.221 + this.label2.Size = new System.Drawing.Size(171, 13);
1.222 + this.label2.TabIndex = 9;
1.223 + this.label2.Text = "Enter your email address (optional):";
1.224 + //
1.225 + // emailTextBox
1.226 + //
1.227 + this.emailTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
1.228 + | System.Windows.Forms.AnchorStyles.Right)));
1.229 + this.emailTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
1.230 + this.emailTextBox.Location = new System.Drawing.Point(188, 315);
1.231 + this.emailTextBox.Name = "emailTextBox";
1.232 + this.emailTextBox.Size = new System.Drawing.Size(417, 20);
1.233 + this.emailTextBox.TabIndex = 0;
1.234 + //
1.235 + // CrashReportForm
1.236 + //
1.237 + this.AcceptButton = this.sendButton;
1.238 + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
1.239 + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
1.240 + this.CancelButton = this.exitButton;
1.241 + this.ClientSize = new System.Drawing.Size(617, 504);
1.242 + this.ControlBox = false;
1.243 + this.Controls.Add(this.emailTextBox);
1.244 + this.Controls.Add(this.label2);
1.245 + this.Controls.Add(this.reportPanel);
1.246 + this.Controls.Add(this.commentPanel);
1.247 + this.Controls.Add(this.label1);
1.248 + this.Controls.Add(this.label3);
1.249 + this.Controls.Add(this.titleLabel);
1.250 + this.Controls.Add(this.exitButton);
1.251 + this.Controls.Add(this.sendButton);
1.252 + this.MaximizeBox = false;
1.253 + this.MinimizeBox = false;
1.254 + this.Name = "CrashReportForm";
1.255 + this.ShowIcon = false;
1.256 + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
1.257 + this.Text = "Open Hardware Monitor";
1.258 + this.commentPanel.ResumeLayout(false);
1.259 + this.commentPanel.PerformLayout();
1.260 + this.reportPanel.ResumeLayout(false);
1.261 + this.reportPanel.PerformLayout();
1.262 + this.ResumeLayout(false);
1.263 + this.PerformLayout();
1.264 +
1.265 + }
1.266 +
1.267 + #endregion
1.268 +
1.269 + private System.Windows.Forms.Button sendButton;
1.270 + private System.Windows.Forms.Button exitButton;
1.271 + private System.Windows.Forms.TextBox commentTextBox;
1.272 + private System.Windows.Forms.Label titleLabel;
1.273 + private System.Windows.Forms.Label label3;
1.274 + private System.Windows.Forms.Label label1;
1.275 + private System.Windows.Forms.Panel commentPanel;
1.276 + private System.Windows.Forms.Panel reportPanel;
1.277 + private System.Windows.Forms.TextBox reportTextBox;
1.278 + private System.Windows.Forms.TextBox textBox1;
1.279 + private System.Windows.Forms.Label label2;
1.280 + private System.Windows.Forms.TextBox emailTextBox;
1.281 + }
1.282 +}
1.283 \ No newline at end of file
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/GUI/CrashForm.cs Sun Jul 04 12:12:37 2010 +0000
2.3 @@ -0,0 +1,121 @@
2.4 +/*
2.5 +
2.6 + Version: MPL 1.1/GPL 2.0/LGPL 2.1
2.7 +
2.8 + The contents of this file are subject to the Mozilla Public License Version
2.9 + 1.1 (the "License"); you may not use this file except in compliance with
2.10 + the License. You may obtain a copy of the License at
2.11 +
2.12 + http://www.mozilla.org/MPL/
2.13 +
2.14 + Software distributed under the License is distributed on an "AS IS" basis,
2.15 + WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
2.16 + for the specific language governing rights and limitations under the License.
2.17 +
2.18 + The Original Code is the Open Hardware Monitor code.
2.19 +
2.20 + The Initial Developer of the Original Code is
2.21 + Michael Möller <m.moeller@gmx.ch>.
2.22 + Portions created by the Initial Developer are Copyright (C) 2009-2010
2.23 + the Initial Developer. All Rights Reserved.
2.24 +
2.25 + Contributor(s):
2.26 +
2.27 + Alternatively, the contents of this file may be used under the terms of
2.28 + either the GNU General Public License Version 2 or later (the "GPL"), or
2.29 + the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
2.30 + in which case the provisions of the GPL or the LGPL are applicable instead
2.31 + of those above. If you wish to allow use of your version of this file only
2.32 + under the terms of either the GPL or the LGPL, and not to allow others to
2.33 + use your version of this file under the terms of the MPL, indicate your
2.34 + decision by deleting the provisions above and replace them with the notice
2.35 + and other provisions required by the GPL or the LGPL. If you do not delete
2.36 + the provisions above, a recipient may use your version of this file under
2.37 + the terms of any one of the MPL, the GPL or the LGPL.
2.38 +
2.39 +*/
2.40 +
2.41 +using System;
2.42 +using System.Collections.Generic;
2.43 +using System.ComponentModel;
2.44 +using System.Drawing;
2.45 +using System.IO;
2.46 +using System.Net;
2.47 +using System.Text;
2.48 +using System.Web;
2.49 +using System.Windows.Forms;
2.50 +
2.51 +namespace OpenHardwareMonitor.GUI {
2.52 + public partial class CrashForm : Form {
2.53 +
2.54 + private Exception exception;
2.55 +
2.56 + public CrashForm() {
2.57 + InitializeComponent();
2.58 + }
2.59 +
2.60 + public Exception Exception {
2.61 + get { return exception; }
2.62 + set {
2.63 + exception = value;
2.64 + StringBuilder s = new StringBuilder();
2.65 + Version version = typeof(CrashForm).Assembly.GetName().Version;
2.66 + s.Append("Version: "); s.AppendLine(version.ToString());
2.67 + s.AppendLine();
2.68 + s.AppendLine(exception.ToString());
2.69 + s.AppendLine();
2.70 + if (exception.InnerException != null) {
2.71 + s.AppendLine(exception.InnerException.ToString());
2.72 + s.AppendLine();
2.73 + }
2.74 + s.Append("Common Language Runtime: ");
2.75 + s.AppendLine(Environment.Version.ToString());
2.76 + s.Append("Operating System: ");
2.77 + s.AppendLine(Environment.OSVersion.ToString());
2.78 + s.Append("Process Type: ");
2.79 + s.AppendLine(IntPtr.Size == 4 ? "32-Bit" : "64-Bit");
2.80 + reportTextBox.Text = s.ToString();
2.81 + }
2.82 + }
2.83 +
2.84 + private void sendButton_Click(object sender, EventArgs e) {
2.85 + try {
2.86 + Version version = typeof(CrashForm).Assembly.GetName().Version;
2.87 + WebRequest request = WebRequest.Create(
2.88 + "http://openhardwaremonitor.org/report.php");
2.89 + request.Method = "POST";
2.90 + request.Timeout = 5000;
2.91 + request.ContentType = "application/x-www-form-urlencoded";
2.92 +
2.93 + string report =
2.94 + "type=crash&" +
2.95 + "version=" + HttpUtility.UrlEncode(version.ToString()) + "&" +
2.96 + "report=" + HttpUtility.UrlEncode(reportTextBox.Text) + "&" +
2.97 + "comment=" + HttpUtility.UrlEncode(commentTextBox.Text) + "&" +
2.98 + "email=" + HttpUtility.UrlEncode(emailTextBox.Text);
2.99 + byte[] byteArray = Encoding.UTF8.GetBytes(report);
2.100 + request.ContentLength = byteArray.Length;
2.101 +
2.102 + try {
2.103 + Stream dataStream = request.GetRequestStream();
2.104 + dataStream.Write(byteArray, 0, byteArray.Length);
2.105 + dataStream.Close();
2.106 +
2.107 + WebResponse response = request.GetResponse();
2.108 + dataStream = response.GetResponseStream();
2.109 + StreamReader reader = new StreamReader(dataStream);
2.110 + string responseFromServer = reader.ReadToEnd();
2.111 + reader.Close();
2.112 + dataStream.Close();
2.113 + response.Close();
2.114 +
2.115 + Close();
2.116 + } catch (WebException) {
2.117 + MessageBox.Show("Sending the crash report failed.", "Error",
2.118 + MessageBoxButtons.OK, MessageBoxIcon.Error);
2.119 + }
2.120 + } catch {
2.121 + }
2.122 + }
2.123 + }
2.124 +}
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/GUI/CrashForm.resx Sun Jul 04 12:12:37 2010 +0000
3.3 @@ -0,0 +1,120 @@
3.4 +<?xml version="1.0" encoding="utf-8"?>
3.5 +<root>
3.6 + <!--
3.7 + Microsoft ResX Schema
3.8 +
3.9 + Version 2.0
3.10 +
3.11 + The primary goals of this format is to allow a simple XML format
3.12 + that is mostly human readable. The generation and parsing of the
3.13 + various data types are done through the TypeConverter classes
3.14 + associated with the data types.
3.15 +
3.16 + Example:
3.17 +
3.18 + ... ado.net/XML headers & schema ...
3.19 + <resheader name="resmimetype">text/microsoft-resx</resheader>
3.20 + <resheader name="version">2.0</resheader>
3.21 + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
3.22 + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
3.23 + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
3.24 + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
3.25 + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
3.26 + <value>[base64 mime encoded serialized .NET Framework object]</value>
3.27 + </data>
3.28 + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
3.29 + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
3.30 + <comment>This is a comment</comment>
3.31 + </data>
3.32 +
3.33 + There are any number of "resheader" rows that contain simple
3.34 + name/value pairs.
3.35 +
3.36 + Each data row contains a name, and value. The row also contains a
3.37 + type or mimetype. Type corresponds to a .NET class that support
3.38 + text/value conversion through the TypeConverter architecture.
3.39 + Classes that don't support this are serialized and stored with the
3.40 + mimetype set.
3.41 +
3.42 + The mimetype is used for serialized objects, and tells the
3.43 + ResXResourceReader how to depersist the object. This is currently not
3.44 + extensible. For a given mimetype the value must be set accordingly:
3.45 +
3.46 + Note - application/x-microsoft.net.object.binary.base64 is the format
3.47 + that the ResXResourceWriter will generate, however the reader can
3.48 + read any of the formats listed below.
3.49 +
3.50 + mimetype: application/x-microsoft.net.object.binary.base64
3.51 + value : The object must be serialized with
3.52 + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
3.53 + : and then encoded with base64 encoding.
3.54 +
3.55 + mimetype: application/x-microsoft.net.object.soap.base64
3.56 + value : The object must be serialized with
3.57 + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
3.58 + : and then encoded with base64 encoding.
3.59 +
3.60 + mimetype: application/x-microsoft.net.object.bytearray.base64
3.61 + value : The object must be serialized into a byte array
3.62 + : using a System.ComponentModel.TypeConverter
3.63 + : and then encoded with base64 encoding.
3.64 + -->
3.65 + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
3.66 + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
3.67 + <xsd:element name="root" msdata:IsDataSet="true">
3.68 + <xsd:complexType>
3.69 + <xsd:choice maxOccurs="unbounded">
3.70 + <xsd:element name="metadata">
3.71 + <xsd:complexType>
3.72 + <xsd:sequence>
3.73 + <xsd:element name="value" type="xsd:string" minOccurs="0" />
3.74 + </xsd:sequence>
3.75 + <xsd:attribute name="name" use="required" type="xsd:string" />
3.76 + <xsd:attribute name="type" type="xsd:string" />
3.77 + <xsd:attribute name="mimetype" type="xsd:string" />
3.78 + <xsd:attribute ref="xml:space" />
3.79 + </xsd:complexType>
3.80 + </xsd:element>
3.81 + <xsd:element name="assembly">
3.82 + <xsd:complexType>
3.83 + <xsd:attribute name="alias" type="xsd:string" />
3.84 + <xsd:attribute name="name" type="xsd:string" />
3.85 + </xsd:complexType>
3.86 + </xsd:element>
3.87 + <xsd:element name="data">
3.88 + <xsd:complexType>
3.89 + <xsd:sequence>
3.90 + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
3.91 + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
3.92 + </xsd:sequence>
3.93 + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
3.94 + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
3.95 + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
3.96 + <xsd:attribute ref="xml:space" />
3.97 + </xsd:complexType>
3.98 + </xsd:element>
3.99 + <xsd:element name="resheader">
3.100 + <xsd:complexType>
3.101 + <xsd:sequence>
3.102 + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
3.103 + </xsd:sequence>
3.104 + <xsd:attribute name="name" type="xsd:string" use="required" />
3.105 + </xsd:complexType>
3.106 + </xsd:element>
3.107 + </xsd:choice>
3.108 + </xsd:complexType>
3.109 + </xsd:element>
3.110 + </xsd:schema>
3.111 + <resheader name="resmimetype">
3.112 + <value>text/microsoft-resx</value>
3.113 + </resheader>
3.114 + <resheader name="version">
3.115 + <value>2.0</value>
3.116 + </resheader>
3.117 + <resheader name="reader">
3.118 + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
3.119 + </resheader>
3.120 + <resheader name="writer">
3.121 + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
3.122 + </resheader>
3.123 +</root>
3.124 \ No newline at end of file
4.1 --- a/GUI/CrashReportForm.Designer.cs Sat Jul 03 12:08:51 2010 +0000
4.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
4.3 @@ -1,279 +0,0 @@
4.4 -/*
4.5 -
4.6 - Version: MPL 1.1/GPL 2.0/LGPL 2.1
4.7 -
4.8 - The contents of this file are subject to the Mozilla Public License Version
4.9 - 1.1 (the "License"); you may not use this file except in compliance with
4.10 - the License. You may obtain a copy of the License at
4.11 -
4.12 - http://www.mozilla.org/MPL/
4.13 -
4.14 - Software distributed under the License is distributed on an "AS IS" basis,
4.15 - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
4.16 - for the specific language governing rights and limitations under the License.
4.17 -
4.18 - The Original Code is the Open Hardware Monitor code.
4.19 -
4.20 - The Initial Developer of the Original Code is
4.21 - Michael Möller <m.moeller@gmx.ch>.
4.22 - Portions created by the Initial Developer are Copyright (C) 2009-2010
4.23 - the Initial Developer. All Rights Reserved.
4.24 -
4.25 - Contributor(s):
4.26 -
4.27 - Alternatively, the contents of this file may be used under the terms of
4.28 - either the GNU General Public License Version 2 or later (the "GPL"), or
4.29 - the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
4.30 - in which case the provisions of the GPL or the LGPL are applicable instead
4.31 - of those above. If you wish to allow use of your version of this file only
4.32 - under the terms of either the GPL or the LGPL, and not to allow others to
4.33 - use your version of this file under the terms of the MPL, indicate your
4.34 - decision by deleting the provisions above and replace them with the notice
4.35 - and other provisions required by the GPL or the LGPL. If you do not delete
4.36 - the provisions above, a recipient may use your version of this file under
4.37 - the terms of any one of the MPL, the GPL or the LGPL.
4.38 -
4.39 -*/
4.40 -
4.41 -namespace OpenHardwareMonitor.GUI {
4.42 - partial class CrashReportForm {
4.43 - /// <summary>
4.44 - /// Required designer variable.
4.45 - /// </summary>
4.46 - private System.ComponentModel.IContainer components = null;
4.47 -
4.48 - /// <summary>
4.49 - /// Clean up any resources being used.
4.50 - /// </summary>
4.51 - /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
4.52 - protected override void Dispose(bool disposing) {
4.53 - if (disposing && (components != null)) {
4.54 - components.Dispose();
4.55 - }
4.56 - base.Dispose(disposing);
4.57 - }
4.58 -
4.59 - #region Windows Form Designer generated code
4.60 -
4.61 - /// <summary>
4.62 - /// Required method for Designer support - do not modify
4.63 - /// the contents of this method with the code editor.
4.64 - /// </summary>
4.65 - private void InitializeComponent() {
4.66 - this.sendButton = new System.Windows.Forms.Button();
4.67 - this.exitButton = new System.Windows.Forms.Button();
4.68 - this.commentTextBox = new System.Windows.Forms.TextBox();
4.69 - this.titleLabel = new System.Windows.Forms.Label();
4.70 - this.label3 = new System.Windows.Forms.Label();
4.71 - this.label1 = new System.Windows.Forms.Label();
4.72 - this.commentPanel = new System.Windows.Forms.Panel();
4.73 - this.reportPanel = new System.Windows.Forms.Panel();
4.74 - this.reportTextBox = new System.Windows.Forms.TextBox();
4.75 - this.textBox1 = new System.Windows.Forms.TextBox();
4.76 - this.label2 = new System.Windows.Forms.Label();
4.77 - this.emailTextBox = new System.Windows.Forms.TextBox();
4.78 - this.commentPanel.SuspendLayout();
4.79 - this.reportPanel.SuspendLayout();
4.80 - this.SuspendLayout();
4.81 - //
4.82 - // sendButton
4.83 - //
4.84 - this.sendButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
4.85 - this.sendButton.Location = new System.Drawing.Point(449, 469);
4.86 - this.sendButton.Name = "sendButton";
4.87 - this.sendButton.Size = new System.Drawing.Size(75, 23);
4.88 - this.sendButton.TabIndex = 2;
4.89 - this.sendButton.Text = "Send";
4.90 - this.sendButton.UseVisualStyleBackColor = true;
4.91 - this.sendButton.Click += new System.EventHandler(this.sendButton_Click);
4.92 - //
4.93 - // exitButton
4.94 - //
4.95 - this.exitButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
4.96 - this.exitButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
4.97 - this.exitButton.Location = new System.Drawing.Point(530, 469);
4.98 - this.exitButton.Name = "exitButton";
4.99 - this.exitButton.Size = new System.Drawing.Size(75, 23);
4.100 - this.exitButton.TabIndex = 3;
4.101 - this.exitButton.Text = "Exit";
4.102 - this.exitButton.UseVisualStyleBackColor = true;
4.103 - //
4.104 - // commentTextBox
4.105 - //
4.106 - this.commentTextBox.AcceptsReturn = true;
4.107 - this.commentTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
4.108 - this.commentTextBox.Dock = System.Windows.Forms.DockStyle.Fill;
4.109 - this.commentTextBox.Location = new System.Drawing.Point(4, 4);
4.110 - this.commentTextBox.Multiline = true;
4.111 - this.commentTextBox.Name = "commentTextBox";
4.112 - this.commentTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
4.113 - this.commentTextBox.Size = new System.Drawing.Size(586, 77);
4.114 - this.commentTextBox.TabIndex = 1;
4.115 - //
4.116 - // titleLabel
4.117 - //
4.118 - this.titleLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
4.119 - | System.Windows.Forms.AnchorStyles.Right)));
4.120 - this.titleLabel.BackColor = System.Drawing.SystemColors.Window;
4.121 - this.titleLabel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
4.122 - this.titleLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
4.123 - this.titleLabel.Location = new System.Drawing.Point(-1, -1);
4.124 - this.titleLabel.Name = "titleLabel";
4.125 - this.titleLabel.Padding = new System.Windows.Forms.Padding(10);
4.126 - this.titleLabel.Size = new System.Drawing.Size(619, 52);
4.127 - this.titleLabel.TabIndex = 4;
4.128 - this.titleLabel.Text = "Open Hardware Monitor has encountered a problem and needs to close. We are sorry " +
4.129 - "for the inconvenience.";
4.130 - //
4.131 - // label3
4.132 - //
4.133 - this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
4.134 - | System.Windows.Forms.AnchorStyles.Right)));
4.135 - this.label3.AutoEllipsis = true;
4.136 - this.label3.AutoSize = true;
4.137 - this.label3.Location = new System.Drawing.Point(9, 63);
4.138 - this.label3.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
4.139 - this.label3.Name = "label3";
4.140 - this.label3.Size = new System.Drawing.Size(571, 13);
4.141 - this.label3.TabIndex = 5;
4.142 - this.label3.Text = "To help diagnose and fix the problem, you can send a crash report. The following " +
4.143 - "report has been created automatically:";
4.144 - //
4.145 - // label1
4.146 - //
4.147 - this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
4.148 - | System.Windows.Forms.AnchorStyles.Right)));
4.149 - this.label1.AutoEllipsis = true;
4.150 - this.label1.AutoSize = true;
4.151 - this.label1.Location = new System.Drawing.Point(9, 347);
4.152 - this.label1.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
4.153 - this.label1.Name = "label1";
4.154 - this.label1.Size = new System.Drawing.Size(279, 13);
4.155 - this.label1.TabIndex = 6;
4.156 - this.label1.Text = "You can add additional information to the report (optional):";
4.157 - //
4.158 - // commentPanel
4.159 - //
4.160 - this.commentPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
4.161 - | System.Windows.Forms.AnchorStyles.Right)));
4.162 - this.commentPanel.BackColor = System.Drawing.SystemColors.Window;
4.163 - this.commentPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
4.164 - this.commentPanel.Controls.Add(this.commentTextBox);
4.165 - this.commentPanel.Location = new System.Drawing.Point(12, 371);
4.166 - this.commentPanel.Margin = new System.Windows.Forms.Padding(3, 3, 3, 8);
4.167 - this.commentPanel.Name = "commentPanel";
4.168 - this.commentPanel.Padding = new System.Windows.Forms.Padding(4, 4, 1, 4);
4.169 - this.commentPanel.Size = new System.Drawing.Size(593, 87);
4.170 - this.commentPanel.TabIndex = 1;
4.171 - this.commentPanel.TabStop = true;
4.172 - //
4.173 - // reportPanel
4.174 - //
4.175 - this.reportPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
4.176 - | System.Windows.Forms.AnchorStyles.Left)
4.177 - | System.Windows.Forms.AnchorStyles.Right)));
4.178 - this.reportPanel.BackColor = System.Drawing.SystemColors.Window;
4.179 - this.reportPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
4.180 - this.reportPanel.Controls.Add(this.reportTextBox);
4.181 - this.reportPanel.Controls.Add(this.textBox1);
4.182 - this.reportPanel.Location = new System.Drawing.Point(12, 87);
4.183 - this.reportPanel.Name = "reportPanel";
4.184 - this.reportPanel.Padding = new System.Windows.Forms.Padding(4, 4, 1, 4);
4.185 - this.reportPanel.Size = new System.Drawing.Size(593, 212);
4.186 - this.reportPanel.TabIndex = 8;
4.187 - //
4.188 - // reportTextBox
4.189 - //
4.190 - this.reportTextBox.BackColor = System.Drawing.SystemColors.Window;
4.191 - this.reportTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
4.192 - this.reportTextBox.Dock = System.Windows.Forms.DockStyle.Fill;
4.193 - this.reportTextBox.Location = new System.Drawing.Point(4, 4);
4.194 - this.reportTextBox.Multiline = true;
4.195 - this.reportTextBox.Name = "reportTextBox";
4.196 - this.reportTextBox.ReadOnly = true;
4.197 - this.reportTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
4.198 - this.reportTextBox.Size = new System.Drawing.Size(586, 202);
4.199 - this.reportTextBox.TabIndex = 9;
4.200 - this.reportTextBox.TabStop = false;
4.201 - //
4.202 - // textBox1
4.203 - //
4.204 - this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
4.205 - this.textBox1.Dock = System.Windows.Forms.DockStyle.Fill;
4.206 - this.textBox1.Location = new System.Drawing.Point(4, 4);
4.207 - this.textBox1.Multiline = true;
4.208 - this.textBox1.Name = "textBox1";
4.209 - this.textBox1.Size = new System.Drawing.Size(586, 202);
4.210 - this.textBox1.TabIndex = 2;
4.211 - //
4.212 - // label2
4.213 - //
4.214 - this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
4.215 - | System.Windows.Forms.AnchorStyles.Right)));
4.216 - this.label2.AutoEllipsis = true;
4.217 - this.label2.AutoSize = true;
4.218 - this.label2.Location = new System.Drawing.Point(9, 318);
4.219 - this.label2.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
4.220 - this.label2.Name = "label2";
4.221 - this.label2.Size = new System.Drawing.Size(171, 13);
4.222 - this.label2.TabIndex = 9;
4.223 - this.label2.Text = "Enter your email address (optional):";
4.224 - //
4.225 - // emailTextBox
4.226 - //
4.227 - this.emailTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
4.228 - | System.Windows.Forms.AnchorStyles.Right)));
4.229 - this.emailTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
4.230 - this.emailTextBox.Location = new System.Drawing.Point(188, 315);
4.231 - this.emailTextBox.Name = "emailTextBox";
4.232 - this.emailTextBox.Size = new System.Drawing.Size(417, 20);
4.233 - this.emailTextBox.TabIndex = 0;
4.234 - //
4.235 - // CrashReportForm
4.236 - //
4.237 - this.AcceptButton = this.sendButton;
4.238 - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
4.239 - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
4.240 - this.CancelButton = this.exitButton;
4.241 - this.ClientSize = new System.Drawing.Size(617, 504);
4.242 - this.ControlBox = false;
4.243 - this.Controls.Add(this.emailTextBox);
4.244 - this.Controls.Add(this.label2);
4.245 - this.Controls.Add(this.reportPanel);
4.246 - this.Controls.Add(this.commentPanel);
4.247 - this.Controls.Add(this.label1);
4.248 - this.Controls.Add(this.label3);
4.249 - this.Controls.Add(this.titleLabel);
4.250 - this.Controls.Add(this.exitButton);
4.251 - this.Controls.Add(this.sendButton);
4.252 - this.MaximizeBox = false;
4.253 - this.MinimizeBox = false;
4.254 - this.Name = "CrashReportForm";
4.255 - this.ShowIcon = false;
4.256 - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
4.257 - this.Text = "Open Hardware Monitor";
4.258 - this.commentPanel.ResumeLayout(false);
4.259 - this.commentPanel.PerformLayout();
4.260 - this.reportPanel.ResumeLayout(false);
4.261 - this.reportPanel.PerformLayout();
4.262 - this.ResumeLayout(false);
4.263 - this.PerformLayout();
4.264 -
4.265 - }
4.266 -
4.267 - #endregion
4.268 -
4.269 - private System.Windows.Forms.Button sendButton;
4.270 - private System.Windows.Forms.Button exitButton;
4.271 - private System.Windows.Forms.TextBox commentTextBox;
4.272 - private System.Windows.Forms.Label titleLabel;
4.273 - private System.Windows.Forms.Label label3;
4.274 - private System.Windows.Forms.Label label1;
4.275 - private System.Windows.Forms.Panel commentPanel;
4.276 - private System.Windows.Forms.Panel reportPanel;
4.277 - private System.Windows.Forms.TextBox reportTextBox;
4.278 - private System.Windows.Forms.TextBox textBox1;
4.279 - private System.Windows.Forms.Label label2;
4.280 - private System.Windows.Forms.TextBox emailTextBox;
4.281 - }
4.282 -}
4.283 \ No newline at end of file
5.1 --- a/GUI/CrashReportForm.cs Sat Jul 03 12:08:51 2010 +0000
5.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
5.3 @@ -1,120 +0,0 @@
5.4 -/*
5.5 -
5.6 - Version: MPL 1.1/GPL 2.0/LGPL 2.1
5.7 -
5.8 - The contents of this file are subject to the Mozilla Public License Version
5.9 - 1.1 (the "License"); you may not use this file except in compliance with
5.10 - the License. You may obtain a copy of the License at
5.11 -
5.12 - http://www.mozilla.org/MPL/
5.13 -
5.14 - Software distributed under the License is distributed on an "AS IS" basis,
5.15 - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
5.16 - for the specific language governing rights and limitations under the License.
5.17 -
5.18 - The Original Code is the Open Hardware Monitor code.
5.19 -
5.20 - The Initial Developer of the Original Code is
5.21 - Michael Möller <m.moeller@gmx.ch>.
5.22 - Portions created by the Initial Developer are Copyright (C) 2009-2010
5.23 - the Initial Developer. All Rights Reserved.
5.24 -
5.25 - Contributor(s):
5.26 -
5.27 - Alternatively, the contents of this file may be used under the terms of
5.28 - either the GNU General Public License Version 2 or later (the "GPL"), or
5.29 - the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
5.30 - in which case the provisions of the GPL or the LGPL are applicable instead
5.31 - of those above. If you wish to allow use of your version of this file only
5.32 - under the terms of either the GPL or the LGPL, and not to allow others to
5.33 - use your version of this file under the terms of the MPL, indicate your
5.34 - decision by deleting the provisions above and replace them with the notice
5.35 - and other provisions required by the GPL or the LGPL. If you do not delete
5.36 - the provisions above, a recipient may use your version of this file under
5.37 - the terms of any one of the MPL, the GPL or the LGPL.
5.38 -
5.39 -*/
5.40 -
5.41 -using System;
5.42 -using System.Collections.Generic;
5.43 -using System.ComponentModel;
5.44 -using System.Drawing;
5.45 -using System.IO;
5.46 -using System.Net;
5.47 -using System.Text;
5.48 -using System.Web;
5.49 -using System.Windows.Forms;
5.50 -
5.51 -namespace OpenHardwareMonitor.GUI {
5.52 - public partial class CrashReportForm : Form {
5.53 -
5.54 - private Exception exception;
5.55 -
5.56 - public CrashReportForm() {
5.57 - InitializeComponent();
5.58 - }
5.59 -
5.60 - public Exception Exception {
5.61 - get { return exception; }
5.62 - set {
5.63 - exception = value;
5.64 - StringBuilder s = new StringBuilder();
5.65 - Version version = typeof(CrashReportForm).Assembly.GetName().Version;
5.66 - s.Append("Version: "); s.AppendLine(version.ToString());
5.67 - s.AppendLine();
5.68 - s.AppendLine(exception.ToString());
5.69 - s.AppendLine();
5.70 - if (exception.InnerException != null) {
5.71 - s.AppendLine(exception.InnerException.ToString());
5.72 - s.AppendLine();
5.73 - }
5.74 - s.Append("Common Language Runtime: ");
5.75 - s.AppendLine(Environment.Version.ToString());
5.76 - s.Append("Operating System: ");
5.77 - s.AppendLine(Environment.OSVersion.ToString());
5.78 - s.Append("Process Type: ");
5.79 - s.AppendLine(IntPtr.Size == 4 ? "32-Bit" : "64-Bit");
5.80 - reportTextBox.Text = s.ToString();
5.81 - }
5.82 - }
5.83 -
5.84 - private void sendButton_Click(object sender, EventArgs e) {
5.85 - try {
5.86 - Version version = typeof(CrashReportForm).Assembly.GetName().Version;
5.87 - WebRequest request = WebRequest.Create(
5.88 - "http://openhardwaremonitor.org/report.php");
5.89 - request.Method = "POST";
5.90 - request.Timeout = 5000;
5.91 - request.ContentType = "application/x-www-form-urlencoded";
5.92 -
5.93 - string report =
5.94 - "version=" + HttpUtility.UrlEncode(version.ToString()) + "&" +
5.95 - "report=" + HttpUtility.UrlEncode(reportTextBox.Text) + "&" +
5.96 - "comment=" + HttpUtility.UrlEncode(commentTextBox.Text) + "&" +
5.97 - "email=" + HttpUtility.UrlEncode(emailTextBox.Text);
5.98 - byte[] byteArray = Encoding.UTF8.GetBytes(report);
5.99 - request.ContentLength = byteArray.Length;
5.100 -
5.101 - try {
5.102 - Stream dataStream = request.GetRequestStream();
5.103 - dataStream.Write(byteArray, 0, byteArray.Length);
5.104 - dataStream.Close();
5.105 -
5.106 - WebResponse response = request.GetResponse();
5.107 - dataStream = response.GetResponseStream();
5.108 - StreamReader reader = new StreamReader(dataStream);
5.109 - string responseFromServer = reader.ReadToEnd();
5.110 - reader.Close();
5.111 - dataStream.Close();
5.112 - response.Close();
5.113 -
5.114 - Close();
5.115 - } catch (WebException) {
5.116 - MessageBox.Show("Sending the crash report failed.", "Error",
5.117 - MessageBoxButtons.OK, MessageBoxIcon.Error);
5.118 - }
5.119 - } catch {
5.120 - }
5.121 - }
5.122 - }
5.123 -}
6.1 --- a/GUI/CrashReportForm.resx Sat Jul 03 12:08:51 2010 +0000
6.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
6.3 @@ -1,120 +0,0 @@
6.4 -<?xml version="1.0" encoding="utf-8"?>
6.5 -<root>
6.6 - <!--
6.7 - Microsoft ResX Schema
6.8 -
6.9 - Version 2.0
6.10 -
6.11 - The primary goals of this format is to allow a simple XML format
6.12 - that is mostly human readable. The generation and parsing of the
6.13 - various data types are done through the TypeConverter classes
6.14 - associated with the data types.
6.15 -
6.16 - Example:
6.17 -
6.18 - ... ado.net/XML headers & schema ...
6.19 - <resheader name="resmimetype">text/microsoft-resx</resheader>
6.20 - <resheader name="version">2.0</resheader>
6.21 - <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
6.22 - <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
6.23 - <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
6.24 - <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
6.25 - <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
6.26 - <value>[base64 mime encoded serialized .NET Framework object]</value>
6.27 - </data>
6.28 - <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
6.29 - <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
6.30 - <comment>This is a comment</comment>
6.31 - </data>
6.32 -
6.33 - There are any number of "resheader" rows that contain simple
6.34 - name/value pairs.
6.35 -
6.36 - Each data row contains a name, and value. The row also contains a
6.37 - type or mimetype. Type corresponds to a .NET class that support
6.38 - text/value conversion through the TypeConverter architecture.
6.39 - Classes that don't support this are serialized and stored with the
6.40 - mimetype set.
6.41 -
6.42 - The mimetype is used for serialized objects, and tells the
6.43 - ResXResourceReader how to depersist the object. This is currently not
6.44 - extensible. For a given mimetype the value must be set accordingly:
6.45 -
6.46 - Note - application/x-microsoft.net.object.binary.base64 is the format
6.47 - that the ResXResourceWriter will generate, however the reader can
6.48 - read any of the formats listed below.
6.49 -
6.50 - mimetype: application/x-microsoft.net.object.binary.base64
6.51 - value : The object must be serialized with
6.52 - : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
6.53 - : and then encoded with base64 encoding.
6.54 -
6.55 - mimetype: application/x-microsoft.net.object.soap.base64
6.56 - value : The object must be serialized with
6.57 - : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
6.58 - : and then encoded with base64 encoding.
6.59 -
6.60 - mimetype: application/x-microsoft.net.object.bytearray.base64
6.61 - value : The object must be serialized into a byte array
6.62 - : using a System.ComponentModel.TypeConverter
6.63 - : and then encoded with base64 encoding.
6.64 - -->
6.65 - <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
6.66 - <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
6.67 - <xsd:element name="root" msdata:IsDataSet="true">
6.68 - <xsd:complexType>
6.69 - <xsd:choice maxOccurs="unbounded">
6.70 - <xsd:element name="metadata">
6.71 - <xsd:complexType>
6.72 - <xsd:sequence>
6.73 - <xsd:element name="value" type="xsd:string" minOccurs="0" />
6.74 - </xsd:sequence>
6.75 - <xsd:attribute name="name" use="required" type="xsd:string" />
6.76 - <xsd:attribute name="type" type="xsd:string" />
6.77 - <xsd:attribute name="mimetype" type="xsd:string" />
6.78 - <xsd:attribute ref="xml:space" />
6.79 - </xsd:complexType>
6.80 - </xsd:element>
6.81 - <xsd:element name="assembly">
6.82 - <xsd:complexType>
6.83 - <xsd:attribute name="alias" type="xsd:string" />
6.84 - <xsd:attribute name="name" type="xsd:string" />
6.85 - </xsd:complexType>
6.86 - </xsd:element>
6.87 - <xsd:element name="data">
6.88 - <xsd:complexType>
6.89 - <xsd:sequence>
6.90 - <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
6.91 - <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
6.92 - </xsd:sequence>
6.93 - <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
6.94 - <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
6.95 - <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
6.96 - <xsd:attribute ref="xml:space" />
6.97 - </xsd:complexType>
6.98 - </xsd:element>
6.99 - <xsd:element name="resheader">
6.100 - <xsd:complexType>
6.101 - <xsd:sequence>
6.102 - <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
6.103 - </xsd:sequence>
6.104 - <xsd:attribute name="name" type="xsd:string" use="required" />
6.105 - </xsd:complexType>
6.106 - </xsd:element>
6.107 - </xsd:choice>
6.108 - </xsd:complexType>
6.109 - </xsd:element>
6.110 - </xsd:schema>
6.111 - <resheader name="resmimetype">
6.112 - <value>text/microsoft-resx</value>
6.113 - </resheader>
6.114 - <resheader name="version">
6.115 - <value>2.0</value>
6.116 - </resheader>
6.117 - <resheader name="reader">
6.118 - <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
6.119 - </resheader>
6.120 - <resheader name="writer">
6.121 - <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
6.122 - </resheader>
6.123 -</root>
6.124 \ No newline at end of file
7.1 --- a/GUI/MainForm.Designer.cs Sat Jul 03 12:08:51 2010 +0000
7.2 +++ b/GUI/MainForm.Designer.cs Sun Jul 04 12:12:37 2010 +0000
7.3 @@ -102,6 +102,8 @@
7.4 this.sensorContextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
7.5 this.saveFileDialog = new System.Windows.Forms.SaveFileDialog();
7.6 this.timer = new System.Windows.Forms.Timer(this.components);
7.7 + this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator();
7.8 + this.sumbitReportToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
7.9 this.menuStrip.SuspendLayout();
7.10 this.splitContainer.Panel1.SuspendLayout();
7.11 this.splitContainer.Panel2.SuspendLayout();
7.12 @@ -227,6 +229,8 @@
7.13 //
7.14 this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
7.15 this.saveReportToolStripMenuItem,
7.16 + this.sumbitReportToolStripMenuItem,
7.17 + this.toolStripMenuItem2,
7.18 this.exitToolStripMenuItem});
7.19 this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
7.20 this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
7.21 @@ -235,14 +239,14 @@
7.22 // saveReportToolStripMenuItem
7.23 //
7.24 this.saveReportToolStripMenuItem.Name = "saveReportToolStripMenuItem";
7.25 - this.saveReportToolStripMenuItem.Size = new System.Drawing.Size(145, 22);
7.26 + this.saveReportToolStripMenuItem.Size = new System.Drawing.Size(159, 22);
7.27 this.saveReportToolStripMenuItem.Text = "Save Report...";
7.28 this.saveReportToolStripMenuItem.Click += new System.EventHandler(this.saveReportToolStripMenuItem_Click);
7.29 //
7.30 // exitToolStripMenuItem
7.31 //
7.32 this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
7.33 - this.exitToolStripMenuItem.Size = new System.Drawing.Size(145, 22);
7.34 + this.exitToolStripMenuItem.Size = new System.Drawing.Size(159, 22);
7.35 this.exitToolStripMenuItem.Text = "Exit";
7.36 this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitClick);
7.37 //
7.38 @@ -296,7 +300,7 @@
7.39 this.valueMenuItem.CheckOnClick = true;
7.40 this.valueMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
7.41 this.valueMenuItem.Name = "valueMenuItem";
7.42 - this.valueMenuItem.Size = new System.Drawing.Size(152, 22);
7.43 + this.valueMenuItem.Size = new System.Drawing.Size(103, 22);
7.44 this.valueMenuItem.Text = "Value";
7.45 this.valueMenuItem.CheckedChanged += new System.EventHandler(this.valueMenuItem_CheckedChanged);
7.46 //
7.47 @@ -306,7 +310,7 @@
7.48 this.minMenuItem.CheckOnClick = true;
7.49 this.minMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
7.50 this.minMenuItem.Name = "minMenuItem";
7.51 - this.minMenuItem.Size = new System.Drawing.Size(152, 22);
7.52 + this.minMenuItem.Size = new System.Drawing.Size(103, 22);
7.53 this.minMenuItem.Text = "Min";
7.54 this.minMenuItem.CheckedChanged += new System.EventHandler(this.minMenuItem_CheckedChanged);
7.55 //
7.56 @@ -316,7 +320,7 @@
7.57 this.maxMenuItem.CheckOnClick = true;
7.58 this.maxMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
7.59 this.maxMenuItem.Name = "maxMenuItem";
7.60 - this.maxMenuItem.Size = new System.Drawing.Size(152, 22);
7.61 + this.maxMenuItem.Size = new System.Drawing.Size(103, 22);
7.62 this.maxMenuItem.Text = "Max";
7.63 this.maxMenuItem.CheckedChanged += new System.EventHandler(this.maxMenuItem_CheckedChanged);
7.64 //
7.65 @@ -460,6 +464,18 @@
7.66 this.timer.Interval = 1000;
7.67 this.timer.Tick += new System.EventHandler(this.timer_Tick);
7.68 //
7.69 + // toolStripMenuItem2
7.70 + //
7.71 + this.toolStripMenuItem2.Name = "toolStripMenuItem2";
7.72 + this.toolStripMenuItem2.Size = new System.Drawing.Size(156, 6);
7.73 + //
7.74 + // sumbitReportToolStripMenuItem
7.75 + //
7.76 + this.sumbitReportToolStripMenuItem.Name = "sumbitReportToolStripMenuItem";
7.77 + this.sumbitReportToolStripMenuItem.Size = new System.Drawing.Size(159, 22);
7.78 + this.sumbitReportToolStripMenuItem.Text = "Submit Report...";
7.79 + this.sumbitReportToolStripMenuItem.Click += new System.EventHandler(this.sumbitReportToolStripMenuItem_Click);
7.80 + //
7.81 // MainForm
7.82 //
7.83 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
7.84 @@ -525,6 +541,8 @@
7.85 private System.Windows.Forms.ToolStripSeparator toolStripMenuItem4;
7.86 private System.Windows.Forms.ToolStripMenuItem celciusToolStripMenuItem;
7.87 private System.Windows.Forms.ToolStripMenuItem fahrenheitToolStripMenuItem;
7.88 + private System.Windows.Forms.ToolStripMenuItem sumbitReportToolStripMenuItem;
7.89 + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2;
7.90 }
7.91 }
7.92
8.1 --- a/GUI/MainForm.cs Sat Jul 03 12:08:51 2010 +0000
8.2 +++ b/GUI/MainForm.cs Sun Jul 04 12:12:37 2010 +0000
8.3 @@ -455,5 +455,12 @@
8.4 fahrenheitToolStripMenuItem.Checked = true;
8.5 UnitManager.TemperatureUnit = TemperatureUnit.Fahrenheit;
8.6 }
8.7 +
8.8 + private void sumbitReportToolStripMenuItem_Click(object sender, EventArgs e)
8.9 + {
8.10 + ReportForm form = new ReportForm();
8.11 + form.Report = computer.GetReport();
8.12 + form.ShowDialog();
8.13 + }
8.14 }
8.15 }
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/GUI/ReportForm.Designer.cs Sun Jul 04 12:12:37 2010 +0000
9.3 @@ -0,0 +1,273 @@
9.4 +/*
9.5 +
9.6 + Version: MPL 1.1/GPL 2.0/LGPL 2.1
9.7 +
9.8 + The contents of this file are subject to the Mozilla Public License Version
9.9 + 1.1 (the "License"); you may not use this file except in compliance with
9.10 + the License. You may obtain a copy of the License at
9.11 +
9.12 + http://www.mozilla.org/MPL/
9.13 +
9.14 + Software distributed under the License is distributed on an "AS IS" basis,
9.15 + WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
9.16 + for the specific language governing rights and limitations under the License.
9.17 +
9.18 + The Original Code is the Open Hardware Monitor code.
9.19 +
9.20 + The Initial Developer of the Original Code is
9.21 + Michael Möller <m.moeller@gmx.ch>.
9.22 + Portions created by the Initial Developer are Copyright (C) 2009-2010
9.23 + the Initial Developer. All Rights Reserved.
9.24 +
9.25 + Contributor(s):
9.26 +
9.27 + Alternatively, the contents of this file may be used under the terms of
9.28 + either the GNU General Public License Version 2 or later (the "GPL"), or
9.29 + the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
9.30 + in which case the provisions of the GPL or the LGPL are applicable instead
9.31 + of those above. If you wish to allow use of your version of this file only
9.32 + under the terms of either the GPL or the LGPL, and not to allow others to
9.33 + use your version of this file under the terms of the MPL, indicate your
9.34 + decision by deleting the provisions above and replace them with the notice
9.35 + and other provisions required by the GPL or the LGPL. If you do not delete
9.36 + the provisions above, a recipient may use your version of this file under
9.37 + the terms of any one of the MPL, the GPL or the LGPL.
9.38 +
9.39 +*/
9.40 +
9.41 +namespace OpenHardwareMonitor.GUI {
9.42 + partial class ReportForm {
9.43 + /// <summary>
9.44 + /// Required designer variable.
9.45 + /// </summary>
9.46 + private System.ComponentModel.IContainer components = null;
9.47 +
9.48 + /// <summary>
9.49 + /// Clean up any resources being used.
9.50 + /// </summary>
9.51 + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
9.52 + protected override void Dispose(bool disposing) {
9.53 + if (disposing && (components != null)) {
9.54 + components.Dispose();
9.55 + }
9.56 + base.Dispose(disposing);
9.57 + }
9.58 +
9.59 + #region Windows Form Designer generated code
9.60 +
9.61 + /// <summary>
9.62 + /// Required method for Designer support - do not modify
9.63 + /// the contents of this method with the code editor.
9.64 + /// </summary>
9.65 + private void InitializeComponent() {
9.66 + this.sendButton = new System.Windows.Forms.Button();
9.67 + this.exitButton = new System.Windows.Forms.Button();
9.68 + this.commentTextBox = new System.Windows.Forms.TextBox();
9.69 + this.label3 = new System.Windows.Forms.Label();
9.70 + this.label1 = new System.Windows.Forms.Label();
9.71 + this.commentPanel = new System.Windows.Forms.Panel();
9.72 + this.reportPanel = new System.Windows.Forms.Panel();
9.73 + this.reportTextBox = new System.Windows.Forms.TextBox();
9.74 + this.textBox1 = new System.Windows.Forms.TextBox();
9.75 + this.label2 = new System.Windows.Forms.Label();
9.76 + this.emailTextBox = new System.Windows.Forms.TextBox();
9.77 + this.titleLabel = new System.Windows.Forms.Label();
9.78 + this.commentPanel.SuspendLayout();
9.79 + this.reportPanel.SuspendLayout();
9.80 + this.SuspendLayout();
9.81 + //
9.82 + // sendButton
9.83 + //
9.84 + this.sendButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
9.85 + this.sendButton.Location = new System.Drawing.Point(472, 627);
9.86 + this.sendButton.Name = "sendButton";
9.87 + this.sendButton.Size = new System.Drawing.Size(75, 23);
9.88 + this.sendButton.TabIndex = 2;
9.89 + this.sendButton.Text = "Send";
9.90 + this.sendButton.UseVisualStyleBackColor = true;
9.91 + this.sendButton.Click += new System.EventHandler(this.sendButton_Click);
9.92 + //
9.93 + // exitButton
9.94 + //
9.95 + this.exitButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
9.96 + this.exitButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
9.97 + this.exitButton.Location = new System.Drawing.Point(553, 627);
9.98 + this.exitButton.Name = "exitButton";
9.99 + this.exitButton.Size = new System.Drawing.Size(75, 23);
9.100 + this.exitButton.TabIndex = 3;
9.101 + this.exitButton.Text = "Canel";
9.102 + this.exitButton.UseVisualStyleBackColor = true;
9.103 + //
9.104 + // commentTextBox
9.105 + //
9.106 + this.commentTextBox.AcceptsReturn = true;
9.107 + this.commentTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
9.108 + this.commentTextBox.Dock = System.Windows.Forms.DockStyle.Fill;
9.109 + this.commentTextBox.Location = new System.Drawing.Point(4, 4);
9.110 + this.commentTextBox.Multiline = true;
9.111 + this.commentTextBox.Name = "commentTextBox";
9.112 + this.commentTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
9.113 + this.commentTextBox.Size = new System.Drawing.Size(609, 77);
9.114 + this.commentTextBox.TabIndex = 1;
9.115 + //
9.116 + // label3
9.117 + //
9.118 + this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
9.119 + | System.Windows.Forms.AnchorStyles.Right)));
9.120 + this.label3.AutoEllipsis = true;
9.121 + this.label3.AutoSize = true;
9.122 + this.label3.Location = new System.Drawing.Point(9, 39);
9.123 + this.label3.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
9.124 + this.label3.Name = "label3";
9.125 + this.label3.Size = new System.Drawing.Size(253, 13);
9.126 + this.label3.TabIndex = 5;
9.127 + this.label3.Text = "The following report has been created automatically:";
9.128 + //
9.129 + // label1
9.130 + //
9.131 + this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
9.132 + | System.Windows.Forms.AnchorStyles.Right)));
9.133 + this.label1.AutoEllipsis = true;
9.134 + this.label1.AutoSize = true;
9.135 + this.label1.Location = new System.Drawing.Point(9, 505);
9.136 + this.label1.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
9.137 + this.label1.Name = "label1";
9.138 + this.label1.Size = new System.Drawing.Size(279, 13);
9.139 + this.label1.TabIndex = 6;
9.140 + this.label1.Text = "You can add additional information to the report (optional):";
9.141 + //
9.142 + // commentPanel
9.143 + //
9.144 + this.commentPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
9.145 + | System.Windows.Forms.AnchorStyles.Right)));
9.146 + this.commentPanel.BackColor = System.Drawing.SystemColors.Window;
9.147 + this.commentPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
9.148 + this.commentPanel.Controls.Add(this.commentTextBox);
9.149 + this.commentPanel.Location = new System.Drawing.Point(12, 529);
9.150 + this.commentPanel.Margin = new System.Windows.Forms.Padding(3, 3, 3, 8);
9.151 + this.commentPanel.Name = "commentPanel";
9.152 + this.commentPanel.Padding = new System.Windows.Forms.Padding(4, 4, 1, 4);
9.153 + this.commentPanel.Size = new System.Drawing.Size(616, 87);
9.154 + this.commentPanel.TabIndex = 1;
9.155 + this.commentPanel.TabStop = true;
9.156 + //
9.157 + // reportPanel
9.158 + //
9.159 + this.reportPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
9.160 + | System.Windows.Forms.AnchorStyles.Left)
9.161 + | System.Windows.Forms.AnchorStyles.Right)));
9.162 + this.reportPanel.BackColor = System.Drawing.SystemColors.Window;
9.163 + this.reportPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
9.164 + this.reportPanel.Controls.Add(this.reportTextBox);
9.165 + this.reportPanel.Controls.Add(this.textBox1);
9.166 + this.reportPanel.Location = new System.Drawing.Point(12, 63);
9.167 + this.reportPanel.Name = "reportPanel";
9.168 + this.reportPanel.Padding = new System.Windows.Forms.Padding(4, 4, 1, 4);
9.169 + this.reportPanel.Size = new System.Drawing.Size(616, 394);
9.170 + this.reportPanel.TabIndex = 8;
9.171 + //
9.172 + // reportTextBox
9.173 + //
9.174 + this.reportTextBox.BackColor = System.Drawing.SystemColors.Window;
9.175 + this.reportTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
9.176 + this.reportTextBox.Dock = System.Windows.Forms.DockStyle.Fill;
9.177 + this.reportTextBox.Location = new System.Drawing.Point(4, 4);
9.178 + this.reportTextBox.Multiline = true;
9.179 + this.reportTextBox.Name = "reportTextBox";
9.180 + this.reportTextBox.ReadOnly = true;
9.181 + this.reportTextBox.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
9.182 + this.reportTextBox.Size = new System.Drawing.Size(609, 384);
9.183 + this.reportTextBox.TabIndex = 9;
9.184 + this.reportTextBox.TabStop = false;
9.185 + //
9.186 + // textBox1
9.187 + //
9.188 + this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
9.189 + this.textBox1.Dock = System.Windows.Forms.DockStyle.Fill;
9.190 + this.textBox1.Location = new System.Drawing.Point(4, 4);
9.191 + this.textBox1.Multiline = true;
9.192 + this.textBox1.Name = "textBox1";
9.193 + this.textBox1.Size = new System.Drawing.Size(609, 384);
9.194 + this.textBox1.TabIndex = 2;
9.195 + //
9.196 + // label2
9.197 + //
9.198 + this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
9.199 + | System.Windows.Forms.AnchorStyles.Right)));
9.200 + this.label2.AutoEllipsis = true;
9.201 + this.label2.AutoSize = true;
9.202 + this.label2.Location = new System.Drawing.Point(9, 476);
9.203 + this.label2.Margin = new System.Windows.Forms.Padding(3, 12, 3, 8);
9.204 + this.label2.Name = "label2";
9.205 + this.label2.Size = new System.Drawing.Size(171, 13);
9.206 + this.label2.TabIndex = 9;
9.207 + this.label2.Text = "Enter your email address (optional):";
9.208 + //
9.209 + // emailTextBox
9.210 + //
9.211 + this.emailTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
9.212 + | System.Windows.Forms.AnchorStyles.Right)));
9.213 + this.emailTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
9.214 + this.emailTextBox.Location = new System.Drawing.Point(188, 473);
9.215 + this.emailTextBox.Name = "emailTextBox";
9.216 + this.emailTextBox.Size = new System.Drawing.Size(440, 20);
9.217 + this.emailTextBox.TabIndex = 0;
9.218 + //
9.219 + // titleLabel
9.220 + //
9.221 + this.titleLabel.AutoSize = true;
9.222 + this.titleLabel.Location = new System.Drawing.Point(9, 14);
9.223 + this.titleLabel.Name = "titleLabel";
9.224 + this.titleLabel.Size = new System.Drawing.Size(409, 13);
9.225 + this.titleLabel.TabIndex = 10;
9.226 + this.titleLabel.Text = "Help improve the Open Hardware Monitor by submitting a report about your hardware" +
9.227 + ".";
9.228 + //
9.229 + // ReportForm
9.230 + //
9.231 + this.AcceptButton = this.sendButton;
9.232 + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
9.233 + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
9.234 + this.CancelButton = this.exitButton;
9.235 + this.ClientSize = new System.Drawing.Size(640, 662);
9.236 + this.ControlBox = false;
9.237 + this.Controls.Add(this.titleLabel);
9.238 + this.Controls.Add(this.emailTextBox);
9.239 + this.Controls.Add(this.label2);
9.240 + this.Controls.Add(this.reportPanel);
9.241 + this.Controls.Add(this.commentPanel);
9.242 + this.Controls.Add(this.label1);
9.243 + this.Controls.Add(this.label3);
9.244 + this.Controls.Add(this.exitButton);
9.245 + this.Controls.Add(this.sendButton);
9.246 + this.MaximizeBox = false;
9.247 + this.MinimizeBox = false;
9.248 + this.Name = "ReportForm";
9.249 + this.ShowIcon = false;
9.250 + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
9.251 + this.Text = "Open Hardware Monitor";
9.252 + this.commentPanel.ResumeLayout(false);
9.253 + this.commentPanel.PerformLayout();
9.254 + this.reportPanel.ResumeLayout(false);
9.255 + this.reportPanel.PerformLayout();
9.256 + this.ResumeLayout(false);
9.257 + this.PerformLayout();
9.258 +
9.259 + }
9.260 +
9.261 + #endregion
9.262 +
9.263 + private System.Windows.Forms.Button sendButton;
9.264 + private System.Windows.Forms.Button exitButton;
9.265 + private System.Windows.Forms.TextBox commentTextBox;
9.266 + private System.Windows.Forms.Label label3;
9.267 + private System.Windows.Forms.Label label1;
9.268 + private System.Windows.Forms.Panel commentPanel;
9.269 + private System.Windows.Forms.Panel reportPanel;
9.270 + private System.Windows.Forms.TextBox reportTextBox;
9.271 + private System.Windows.Forms.TextBox textBox1;
9.272 + private System.Windows.Forms.Label label2;
9.273 + private System.Windows.Forms.TextBox emailTextBox;
9.274 + private System.Windows.Forms.Label titleLabel;
9.275 + }
9.276 +}
9.277 \ No newline at end of file
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/GUI/ReportForm.cs Sun Jul 04 12:12:37 2010 +0000
10.3 @@ -0,0 +1,107 @@
10.4 +/*
10.5 +
10.6 + Version: MPL 1.1/GPL 2.0/LGPL 2.1
10.7 +
10.8 + The contents of this file are subject to the Mozilla Public License Version
10.9 + 1.1 (the "License"); you may not use this file except in compliance with
10.10 + the License. You may obtain a copy of the License at
10.11 +
10.12 + http://www.mozilla.org/MPL/
10.13 +
10.14 + Software distributed under the License is distributed on an "AS IS" basis,
10.15 + WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
10.16 + for the specific language governing rights and limitations under the License.
10.17 +
10.18 + The Original Code is the Open Hardware Monitor code.
10.19 +
10.20 + The Initial Developer of the Original Code is
10.21 + Michael Möller <m.moeller@gmx.ch>.
10.22 + Portions created by the Initial Developer are Copyright (C) 2009-2010
10.23 + the Initial Developer. All Rights Reserved.
10.24 +
10.25 + Contributor(s):
10.26 +
10.27 + Alternatively, the contents of this file may be used under the terms of
10.28 + either the GNU General Public License Version 2 or later (the "GPL"), or
10.29 + the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
10.30 + in which case the provisions of the GPL or the LGPL are applicable instead
10.31 + of those above. If you wish to allow use of your version of this file only
10.32 + under the terms of either the GPL or the LGPL, and not to allow others to
10.33 + use your version of this file under the terms of the MPL, indicate your
10.34 + decision by deleting the provisions above and replace them with the notice
10.35 + and other provisions required by the GPL or the LGPL. If you do not delete
10.36 + the provisions above, a recipient may use your version of this file under
10.37 + the terms of any one of the MPL, the GPL or the LGPL.
10.38 +
10.39 +*/
10.40 +
10.41 +using System;
10.42 +using System.Collections.Generic;
10.43 +using System.ComponentModel;
10.44 +using System.Drawing;
10.45 +using System.IO;
10.46 +using System.Net;
10.47 +using System.Text;
10.48 +using System.Web;
10.49 +using System.Windows.Forms;
10.50 +
10.51 +namespace OpenHardwareMonitor.GUI {
10.52 + public partial class ReportForm : Form {
10.53 +
10.54 + private string report;
10.55 +
10.56 + public ReportForm() {
10.57 + InitializeComponent();
10.58 + try {
10.59 + titleLabel.Font = new Font(SystemFonts.DefaultFont, FontStyle.Bold);
10.60 + reportTextBox.Font = new Font(FontFamily.GenericMonospace,
10.61 + SystemFonts.DefaultFont.Size);
10.62 + } catch { }
10.63 + }
10.64 +
10.65 + public string Report {
10.66 + get { return report; }
10.67 + set {
10.68 + report = value;
10.69 + reportTextBox.Text = report;
10.70 + }
10.71 + }
10.72 +
10.73 + private void sendButton_Click(object sender, EventArgs e) {
10.74 + Version version = typeof(CrashForm).Assembly.GetName().Version;
10.75 + WebRequest request = WebRequest.Create(
10.76 + "http://openhardwaremonitor.org/report.php");
10.77 + request.Method = "POST";
10.78 + request.Timeout = 5000;
10.79 + request.ContentType = "application/x-www-form-urlencoded";
10.80 +
10.81 + string report =
10.82 + "type=hardware&" +
10.83 + "version=" + HttpUtility.UrlEncode(version.ToString()) + "&" +
10.84 + "report=" + HttpUtility.UrlEncode(reportTextBox.Text) + "&" +
10.85 + "comment=" + HttpUtility.UrlEncode(commentTextBox.Text) + "&" +
10.86 + "email=" + HttpUtility.UrlEncode(emailTextBox.Text);
10.87 + byte[] byteArray = Encoding.UTF8.GetBytes(report);
10.88 + request.ContentLength = byteArray.Length;
10.89 +
10.90 + try {
10.91 + Stream dataStream = request.GetRequestStream();
10.92 + dataStream.Write(byteArray, 0, byteArray.Length);
10.93 + dataStream.Close();
10.94 +
10.95 + WebResponse response = request.GetResponse();
10.96 + dataStream = response.GetResponseStream();
10.97 + StreamReader reader = new StreamReader(dataStream);
10.98 + string responseFromServer = reader.ReadToEnd();
10.99 + reader.Close();
10.100 + dataStream.Close();
10.101 + response.Close();
10.102 +
10.103 + Close();
10.104 + } catch (WebException) {
10.105 + MessageBox.Show("Sending the hardware report failed.", "Error",
10.106 + MessageBoxButtons.OK, MessageBoxIcon.Error);
10.107 + }
10.108 + }
10.109 + }
10.110 +}
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/GUI/ReportForm.resx Sun Jul 04 12:12:37 2010 +0000
11.3 @@ -0,0 +1,120 @@
11.4 +<?xml version="1.0" encoding="utf-8"?>
11.5 +<root>
11.6 + <!--
11.7 + Microsoft ResX Schema
11.8 +
11.9 + Version 2.0
11.10 +
11.11 + The primary goals of this format is to allow a simple XML format
11.12 + that is mostly human readable. The generation and parsing of the
11.13 + various data types are done through the TypeConverter classes
11.14 + associated with the data types.
11.15 +
11.16 + Example:
11.17 +
11.18 + ... ado.net/XML headers & schema ...
11.19 + <resheader name="resmimetype">text/microsoft-resx</resheader>
11.20 + <resheader name="version">2.0</resheader>
11.21 + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
11.22 + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
11.23 + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
11.24 + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
11.25 + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
11.26 + <value>[base64 mime encoded serialized .NET Framework object]</value>
11.27 + </data>
11.28 + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
11.29 + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
11.30 + <comment>This is a comment</comment>
11.31 + </data>
11.32 +
11.33 + There are any number of "resheader" rows that contain simple
11.34 + name/value pairs.
11.35 +
11.36 + Each data row contains a name, and value. The row also contains a
11.37 + type or mimetype. Type corresponds to a .NET class that support
11.38 + text/value conversion through the TypeConverter architecture.
11.39 + Classes that don't support this are serialized and stored with the
11.40 + mimetype set.
11.41 +
11.42 + The mimetype is used for serialized objects, and tells the
11.43 + ResXResourceReader how to depersist the object. This is currently not
11.44 + extensible. For a given mimetype the value must be set accordingly:
11.45 +
11.46 + Note - application/x-microsoft.net.object.binary.base64 is the format
11.47 + that the ResXResourceWriter will generate, however the reader can
11.48 + read any of the formats listed below.
11.49 +
11.50 + mimetype: application/x-microsoft.net.object.binary.base64
11.51 + value : The object must be serialized with
11.52 + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
11.53 + : and then encoded with base64 encoding.
11.54 +
11.55 + mimetype: application/x-microsoft.net.object.soap.base64
11.56 + value : The object must be serialized with
11.57 + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
11.58 + : and then encoded with base64 encoding.
11.59 +
11.60 + mimetype: application/x-microsoft.net.object.bytearray.base64
11.61 + value : The object must be serialized into a byte array
11.62 + : using a System.ComponentModel.TypeConverter
11.63 + : and then encoded with base64 encoding.
11.64 + -->
11.65 + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
11.66 + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
11.67 + <xsd:element name="root" msdata:IsDataSet="true">
11.68 + <xsd:complexType>
11.69 + <xsd:choice maxOccurs="unbounded">
11.70 + <xsd:element name="metadata">
11.71 + <xsd:complexType>
11.72 + <xsd:sequence>
11.73 + <xsd:element name="value" type="xsd:string" minOccurs="0" />
11.74 + </xsd:sequence>
11.75 + <xsd:attribute name="name" use="required" type="xsd:string" />
11.76 + <xsd:attribute name="type" type="xsd:string" />
11.77 + <xsd:attribute name="mimetype" type="xsd:string" />
11.78 + <xsd:attribute ref="xml:space" />
11.79 + </xsd:complexType>
11.80 + </xsd:element>
11.81 + <xsd:element name="assembly">
11.82 + <xsd:complexType>
11.83 + <xsd:attribute name="alias" type="xsd:string" />
11.84 + <xsd:attribute name="name" type="xsd:string" />
11.85 + </xsd:complexType>
11.86 + </xsd:element>
11.87 + <xsd:element name="data">
11.88 + <xsd:complexType>
11.89 + <xsd:sequence>
11.90 + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
11.91 + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
11.92 + </xsd:sequence>
11.93 + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
11.94 + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
11.95 + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
11.96 + <xsd:attribute ref="xml:space" />
11.97 + </xsd:complexType>
11.98 + </xsd:element>
11.99 + <xsd:element name="resheader">
11.100 + <xsd:complexType>
11.101 + <xsd:sequence>
11.102 + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
11.103 + </xsd:sequence>
11.104 + <xsd:attribute name="name" type="xsd:string" use="required" />
11.105 + </xsd:complexType>
11.106 + </xsd:element>
11.107 + </xsd:choice>
11.108 + </xsd:complexType>
11.109 + </xsd:element>
11.110 + </xsd:schema>
11.111 + <resheader name="resmimetype">
11.112 + <value>text/microsoft-resx</value>
11.113 + </resheader>
11.114 + <resheader name="version">
11.115 + <value>2.0</value>
11.116 + </resheader>
11.117 + <resheader name="reader">
11.118 + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
11.119 + </resheader>
11.120 + <resheader name="writer">
11.121 + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
11.122 + </resheader>
11.123 +</root>
11.124 \ No newline at end of file
12.1 --- a/OpenHardwareMonitor.csproj Sat Jul 03 12:08:51 2010 +0000
12.2 +++ b/OpenHardwareMonitor.csproj Sun Jul 04 12:12:37 2010 +0000
12.3 @@ -61,11 +61,17 @@
12.4 </Reference>
12.5 </ItemGroup>
12.6 <ItemGroup>
12.7 - <Compile Include="GUI\CrashReportForm.cs">
12.8 + <Compile Include="GUI\ReportForm.cs">
12.9 <SubType>Form</SubType>
12.10 </Compile>
12.11 - <Compile Include="GUI\CrashReportForm.Designer.cs">
12.12 - <DependentUpon>CrashReportForm.cs</DependentUpon>
12.13 + <Compile Include="GUI\ReportForm.Designer.cs">
12.14 + <DependentUpon>ReportForm.cs</DependentUpon>
12.15 + </Compile>
12.16 + <Compile Include="GUI\CrashForm.cs">
12.17 + <SubType>Form</SubType>
12.18 + </Compile>
12.19 + <Compile Include="GUI\CrashForm.Designer.cs">
12.20 + <DependentUpon>CrashForm.cs</DependentUpon>
12.21 </Compile>
12.22 <Compile Include="GUI\Node.cs" />
12.23 <Compile Include="GUI\ParameterForm.cs">
12.24 @@ -200,12 +206,15 @@
12.25 <EmbeddedResource Include="Resources\flow.png" />
12.26 </ItemGroup>
12.27 <ItemGroup>
12.28 - <EmbeddedResource Include="GUI\CrashReportForm.resx">
12.29 - <DependentUpon>CrashReportForm.cs</DependentUpon>
12.30 + <EmbeddedResource Include="GUI\CrashForm.resx">
12.31 + <DependentUpon>CrashForm.cs</DependentUpon>
12.32 </EmbeddedResource>
12.33 <EmbeddedResource Include="Resources\mainboard.png" />
12.34 </ItemGroup>
12.35 <ItemGroup>
12.36 + <EmbeddedResource Include="GUI\ReportForm.resx">
12.37 + <DependentUpon>ReportForm.cs</DependentUpon>
12.38 + </EmbeddedResource>
12.39 <EmbeddedResource Include="Resources\control.png" />
12.40 </ItemGroup>
12.41 <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
13.1 --- a/Program.cs Sat Jul 03 12:08:51 2010 +0000
13.2 +++ b/Program.cs Sun Jul 04 12:12:37 2010 +0000
13.3 @@ -102,7 +102,7 @@
13.4 }
13.5
13.6 private static void ReportException(Exception e) {
13.7 - CrashReportForm form = new CrashReportForm();
13.8 + CrashForm form = new CrashForm();
13.9 form.Exception = e;
13.10 form.ShowDialog();
13.11 }