亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? form1.cs

?? 使用C#語言實現軟件自動升級的實例源碼
?? CS
字號:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Data.OleDb;
using System.Threading;
using System.IO;
using Microsoft.Win32;

namespace Login
{
	/// <summary>
	/// Form1 的摘要說明。
	/// </summary>
	public class Form1 : System.Windows.Forms.Form
	{
		private System.Windows.Forms.TextBox txtPassword;
		private System.Windows.Forms.ComboBox combUsers;
		private System.Windows.Forms.Label label2;
		private System.Windows.Forms.Button btnCancel;
		private System.Windows.Forms.Label label1;
		private System.Windows.Forms.Button btnOK;
		/// <summary>
		/// 必需的設計器變量。
		/// </summary>
		private System.ComponentModel.Container components = null;

		public Form1()
		{
			//
			// Windows 窗體設計器支持所必需的
			//
			InitializeComponent();

			//
			// TODO: 在 InitializeComponent 調用后添加任何構造函數代碼
			//
		}

		/// <summary>
		/// 清理所有正在使用的資源。
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if (components != null) 
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}

		#region Windows 窗體設計器生成的代碼
		/// <summary>
		/// 設計器支持所需的方法 - 不要使用代碼編輯器修改
		/// 此方法的內容。
		/// </summary>
		private void InitializeComponent()
		{
			this.txtPassword = new System.Windows.Forms.TextBox();
			this.combUsers = new System.Windows.Forms.ComboBox();
			this.label2 = new System.Windows.Forms.Label();
			this.btnCancel = new System.Windows.Forms.Button();
			this.label1 = new System.Windows.Forms.Label();
			this.btnOK = new System.Windows.Forms.Button();
			this.SuspendLayout();
			// 
			// txtPassword
			// 
			this.txtPassword.Location = new System.Drawing.Point(113, 64);
			this.txtPassword.Name = "txtPassword";
			this.txtPassword.PasswordChar = '*';
			this.txtPassword.Size = new System.Drawing.Size(120, 21);
			this.txtPassword.TabIndex = 30;
			this.txtPassword.Text = "";
			// 
			// combUsers
			// 
			this.combUsers.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
			this.combUsers.Location = new System.Drawing.Point(112, 32);
			this.combUsers.Name = "combUsers";
			this.combUsers.Size = new System.Drawing.Size(121, 20);
			this.combUsers.TabIndex = 31;
			// 
			// label2
			// 
			this.label2.AutoSize = true;
			this.label2.BackColor = System.Drawing.Color.Transparent;
			this.label2.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
			this.label2.Location = new System.Drawing.Point(56, 66);
			this.label2.Name = "label2";
			this.label2.Size = new System.Drawing.Size(42, 17);
			this.label2.TabIndex = 33;
			this.label2.Text = "密  碼";
			this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
			// 
			// btnCancel
			// 
			this.btnCancel.Cursor = System.Windows.Forms.Cursors.Hand;
			this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
			this.btnCancel.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
			this.btnCancel.ForeColor = System.Drawing.SystemColors.ControlText;
			this.btnCancel.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
			this.btnCancel.ImageIndex = 3;
			this.btnCancel.Location = new System.Drawing.Point(168, 104);
			this.btnCancel.Name = "btnCancel";
			this.btnCancel.Size = new System.Drawing.Size(62, 32);
			this.btnCancel.TabIndex = 29;
			this.btnCancel.Text = "取消(&C)";
			this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
			// 
			// label1
			// 
			this.label1.AutoSize = true;
			this.label1.BackColor = System.Drawing.Color.Transparent;
			this.label1.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
			this.label1.Location = new System.Drawing.Point(56, 34);
			this.label1.Name = "label1";
			this.label1.Size = new System.Drawing.Size(42, 17);
			this.label1.TabIndex = 32;
			this.label1.Text = "用戶名";
			this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
			// 
			// btnOK
			// 
			this.btnOK.Cursor = System.Windows.Forms.Cursors.Hand;
			this.btnOK.Enabled = false;
			this.btnOK.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
			this.btnOK.ForeColor = System.Drawing.SystemColors.ControlText;
			this.btnOK.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
			this.btnOK.ImageIndex = 2;
			this.btnOK.Location = new System.Drawing.Point(80, 104);
			this.btnOK.Name = "btnOK";
			this.btnOK.Size = new System.Drawing.Size(62, 32);
			this.btnOK.TabIndex = 28;
			this.btnOK.Text = "確定(&O)";
			this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
			// 
			// Form1
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
			this.ClientSize = new System.Drawing.Size(292, 165);
			this.Controls.Add(this.txtPassword);
			this.Controls.Add(this.combUsers);
			this.Controls.Add(this.label2);
			this.Controls.Add(this.btnCancel);
			this.Controls.Add(this.label1);
			this.Controls.Add(this.btnOK);
			this.Name = "Form1";
			this.Text = "Form1";
			this.Load += new System.EventHandler(this.Form1_Load);
			this.ResumeLayout(false);

		}
		#endregion

		/// <summary>
		/// 應用程序的主入口點。
		/// </summary>
		[STAThread]
		static void Main() 
		{
			Application.Run(new Form1());
		}
		/// <summary>
		/// 存放操作員及密碼的DataSet
		/// </summary>
		private DataSet m_DataSet;
		/// <summary>
		/// 本功能用到的數據庫表
		/// </summary>
		private string m_TableName="操作員";
		private DataTable m_Table;

		/// <summary>
		/// 定義本軟件在注冊表中software下的公司名和軟件名稱
		/// </summary>
		private string m_companyname="lqjt",m_softwarename="autologin";
		/// <summary>
		/// 從注冊表中讀信息;
		/// </summary>
		/// <param name="p_KeyName">要讀取的鍵值</param>
		/// <returns>讀到的鍵值字符串,如果失敗(如注冊表尚無信息),則返回""</returns>
		private string ReadInfo(string p_KeyName)
		{
			RegistryKey SoftwareKey=Registry.LocalMachine.OpenSubKey("Software",true);
			RegistryKey CompanyKey=SoftwareKey.OpenSubKey(m_companyname);
			string strValue="";
			
			if(CompanyKey==null)
				return "";
			RegistryKey SoftwareNameKey=CompanyKey.OpenSubKey(m_softwarename);//建立
			if(SoftwareNameKey==null)
				return "";

			try
			{
				strValue=SoftwareNameKey.GetValue(p_KeyName).ToString().Trim();
			}
			catch
			{}

			if(strValue==null)
				strValue="";
			return strValue;
		}
		/// <summary>
		/// 將信息寫入注冊表
		/// </summary>
		/// <param name="p_keyname">鍵名</param>
		/// <param name="p_keyvalue">鍵值</param>
		private void WriteInfo(string p_keyname,string p_keyvalue)
		{
			RegistryKey SoftwareKey=Registry.LocalMachine.OpenSubKey("Software",true);
			RegistryKey CompanyKey=SoftwareKey.CreateSubKey(m_companyname);
			RegistryKey SoftwareNameKey=CompanyKey.CreateSubKey(m_softwarename);
			//寫入相應信息
			SoftwareNameKey.SetValue(p_keyname,p_keyvalue);
		}
		/// <summary>
		/// 獲取操作員情況,同時更新主程序版本
		/// </summary>
		private void GetInfo()
		{
			this.m_DataSet=new DataSet();
			this.combUsers.Items.Clear();
			string strSql=string.Format("SELECT * FROM  操作員 ORDER BY 姓名");

			//連接數據庫
			string strConnection="Provider = Microsoft.Jet.OLEDB.4.0 ;Jet OLEDB:Database Password=;Data Source ="+
				Application.StartupPath.ToString().Trim()+"\\mydatabase.mdb" ;
			OleDbConnection myConnect=new OleDbConnection(strConnection);
			OleDbCommand myCommand=new OleDbCommand(strSql,myConnect);
			OleDbDataAdapter myDataAdapter=new OleDbDataAdapter();
			myDataAdapter.SelectCommand=myCommand;
			try
			{
				myConnect.Open();

				//獲取操作員信息
				myDataAdapter.Fill(this.m_DataSet,this.m_TableName);
				//將查詢到的用戶名填充到組合框供用戶選擇
				this.m_Table=this.m_DataSet.Tables[this.m_TableName];
				foreach(DataRow row in m_DataSet.Tables[m_TableName].Rows)
				{
					this.combUsers.Items.Add(row["姓名"]).ToString().Trim();
				}

				//檢查是否有新的版本
				DataSet dataset=new DataSet();
				string tablename="tablename";
				//為減少數據傳送時間,不獲取文件內容
				strSql="select 文件名稱,版本號 from 版本";
				myCommand=new OleDbCommand(strSql,myConnect);
				myDataAdapter=new OleDbDataAdapter();
				myDataAdapter.SelectCommand=myCommand;
				myDataAdapter.Fill(dataset,tablename);
				if(dataset.Tables[tablename].Rows.Count==1)//有文件
				{
					string filename=dataset.Tables[tablename].Rows[0]["文件名稱"].ToString();
					string version=dataset.Tables[tablename].Rows[0]["版本號"].ToString();
					//讀入本機主程序的版本號
					string oldversion=this.ReadInfo(filename);
					if(oldversion.Length==0)//不存在
						oldversion="0";
					if(Decimal.Parse(version)>Decimal.Parse(oldversion))//有新的版本出現
					{
						//取回文件內容
						dataset=new DataSet();
						strSql="select * from 版本";
						myCommand=new OleDbCommand(strSql,myConnect);
						myDataAdapter=new OleDbDataAdapter();
						myDataAdapter.SelectCommand=myCommand;
						myDataAdapter.Fill(dataset,tablename);
						//將文件下載到本地
						DataRow row=dataset.Tables[tablename].Rows[0];
						if(row["文件內容"]!=DBNull.Value)
						{

							Byte[] byteBLOBData =  new Byte[0];
							byteBLOBData = (Byte[])row["文件內容"];
							try
							{
								FileStream fs=new FileStream(Application.StartupPath+"\\"+filename,FileMode.OpenOrCreate);
								fs.Write(byteBLOBData,0,byteBLOBData.Length);
								fs.Close();
								//寫入當前版本號,供下次使用
								this.WriteInfo(filename,version);
							}
							catch(Exception ee)
							{
								MessageBox.Show(ee.Message);
							}
						}

					}//有新版本
				}//有文件

				//關閉連接
				myConnect.Close();
			}
			catch(Exception ee)
			{
				MessageBox.Show(ee.Message);
				return;
			}
			//允許登錄
			this.btnOK.Enabled=true;
		}

		private void Form1_Load(object sender, System.EventArgs e)
		{
			//為加快顯示速度,將數據庫連接等放到另外一個線程中去
			Thread thread=new Thread(new ThreadStart(GetInfo));
			thread.Start();
		}

		private void btnOK_Click(object sender, System.EventArgs e)
		{
			//根據組合框的選擇,得到當前用戶在DataSet中具體物理位置
			if(this.combUsers.SelectedIndex<0)//沒有選擇
				return;
			DataRow rowNow=null;
			foreach(DataRow row in this.m_DataSet.Tables[this.m_TableName].Rows)
			{
				if(row["姓名"].ToString().Trim()==this.combUsers.Text.Trim())
				{
					rowNow=row;
					break;
				}
			}
			if(rowNow==null)
				return;

			//獲取當前正確密碼
			string strPassword=rowNow["密碼"].ToString().Trim();
			this.txtPassword.Text=this.txtPassword.Text.Trim();
			if(this.txtPassword.Text==strPassword)//密碼正確
			{

				//主程序名稱
				string filename=Application.StartupPath+"\\"+"MainPro.exe";
				//參數名稱
				string arg=this.combUsers.Text+" "+this.txtPassword.Text;
				//運行主程序
				System.Diagnostics.Process fun=System.Diagnostics.Process.Start(filename,arg);

				//關閉登錄框
				this.Close();
			}
			else
			{
				MessageBox.Show("    密碼錯誤!如果你確信密碼輸入正確,\n可以試著檢查一下大寫字母鍵是否按下去了。",
					"警告",MessageBoxButtons.OK,MessageBoxIcon.Warning);
				this.txtPassword.Focus();
				this.txtPassword.SelectAll();
			}
		}

		private void btnCancel_Click(object sender, System.EventArgs e)
		{
			this.Close();
		}

	}//form
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美伊人久久久久久久久影院| 欧美精品一区二区在线播放| 欧美日韩精品一区二区三区四区| 日韩免费看的电影| 亚洲天堂成人在线观看| 午夜欧美视频在线观看| aaa亚洲精品一二三区| 欧美一区二区三区日韩| 一区二区三区在线观看网站| 国产激情视频一区二区在线观看| 欧美日韩夫妻久久| 一区二区欧美精品| 北条麻妃一区二区三区| 欧美精品一区二区久久婷婷| 丝袜美腿亚洲一区二区图片| 在线视频国产一区| 亚洲欧洲三级电影| 国产精品亚洲视频| 欧美mv和日韩mv的网站| 亚洲一区二区在线免费观看视频| 成人永久免费视频| 日本一区二区视频在线观看| 精品一区二区三区在线观看 | 成人欧美一区二区三区在线播放| 久国产精品韩国三级视频| 欧美日韩的一区二区| 亚洲一级电影视频| 欧美亚洲精品一区| 亚洲影院免费观看| 91久久久免费一区二区| 亚洲视频在线一区| 日本韩国欧美一区二区三区| 国产精品国产三级国产aⅴ原创| 国产激情91久久精品导航| 精品成人私密视频| 国产麻豆视频一区| 日本一区二区三区在线不卡| 国产一区二区按摩在线观看| 久久综合色一综合色88| 韩国成人在线视频| 久久久三级国产网站| 国产精品一区二区视频| 国产色产综合色产在线视频| 懂色av一区二区夜夜嗨| 国产精品伦理在线| 色美美综合视频| 日精品一区二区三区| 日韩三级视频中文字幕| 国产一区二区精品久久99| 国产亚洲午夜高清国产拍精品| 国产一区不卡在线| 中文字幕在线视频一区| 在线中文字幕不卡| 青青草原综合久久大伊人精品优势| 欧美一级片在线看| 国产一区二区91| 亚洲裸体在线观看| 7777精品伊人久久久大香线蕉经典版下载 | 五月开心婷婷久久| 精品国产1区二区| 成人国产一区二区三区精品| 午夜精品免费在线| 亚洲精品一区二区三区蜜桃下载 | 成人午夜激情影院| 一级精品视频在线观看宜春院 | 日本韩国一区二区三区| 日韩电影在线免费观看| 久久精品亚洲乱码伦伦中文| 99久久精品99国产精品| 天使萌一区二区三区免费观看| 精品国产91洋老外米糕| 99久精品国产| 蜜臀va亚洲va欧美va天堂| 国产精品久久久久三级| 91精品蜜臀在线一区尤物| 国产91丝袜在线观看| 亚洲成人免费视| 国产欧美日韩一区二区三区在线观看| 在线看国产一区二区| 久久99精品国产.久久久久| 亚洲欧美日韩成人高清在线一区| 678五月天丁香亚洲综合网| av成人老司机| 99v久久综合狠狠综合久久| 亚洲一本大道在线| 国产性色一区二区| 欧美一区2区视频在线观看| 99精品久久久久久| 国产一区在线精品| 亚洲va韩国va欧美va| 日韩理论片在线| 久久蜜桃一区二区| 91精品国产综合久久小美女| www.66久久| 国产成人精品网址| 久久精品99久久久| 丝袜a∨在线一区二区三区不卡| 国产精品国模大尺度视频| 日韩视频在线一区二区| 欧美日韩精品电影| 色综合久久中文综合久久牛| 国产成人精品免费看| 蜜桃久久av一区| 亚洲成人黄色小说| 亚洲在线免费播放| 亚洲精品视频在线观看免费| 欧美国产精品中文字幕| 久久这里都是精品| 欧美成人精品二区三区99精品| 欧美日韩夫妻久久| 欧美日韩国产高清一区二区三区 | 日本最新不卡在线| 亚洲国产精品一区二区久久| 亚洲三级久久久| 国产精品初高中害羞小美女文| 久久久久久电影| 久久九九久久九九| 日本一区免费视频| 国产精品福利影院| 国产精品久久久久久久久快鸭| 国产三级精品视频| 中文字幕乱码久久午夜不卡 | 亚洲欧洲在线观看av| 亚洲欧洲另类国产综合| 中文字幕在线一区| 亚洲乱码国产乱码精品精小说 | 国产成人午夜精品5599| 国产精品亚洲视频| www.在线欧美| 色吊一区二区三区| 欧美三级视频在线观看| 欧美日本在线播放| 精品欧美久久久| 国产嫩草影院久久久久| 亚洲欧美日韩国产手机在线| 亚洲国产综合91精品麻豆| 天天综合网天天综合色 | 一区二区三区在线视频观看| 亚洲国产精品久久人人爱| 日韩av在线发布| 国产麻豆精品一区二区| 97成人超碰视| 欧美区在线观看| 久久婷婷色综合| 亚洲人成伊人成综合网小说| 性久久久久久久久| 国产尤物一区二区在线| 91网站黄www| 91精品免费观看| 国产精品黄色在线观看| 午夜av一区二区| 国产成人三级在线观看| 日本乱人伦一区| 精品久久久久久综合日本欧美 | 亚洲一区二区三区四区的| 免费的成人av| 99精品视频一区二区三区| 在线综合视频播放| 国产精品每日更新| 日韩电影免费在线看| 国产69精品久久99不卡| 欧美军同video69gay| 国产午夜亚洲精品午夜鲁丝片| 亚洲综合色在线| 国产成人综合在线观看| 欧美性猛交一区二区三区精品| 欧美精品一区二区三区蜜桃 | 成人av小说网| 欧美一区二区三区的| 亚洲欧洲日韩女同| 国产一区二区免费看| 欧美精品 国产精品| 综合色中文字幕| 国产一区啦啦啦在线观看| 欧美日韩激情一区| 一区二区三区四区精品在线视频| 国内精品久久久久影院薰衣草| 欧美午夜精品一区二区三区| 国产欧美精品区一区二区三区| 日本在线观看不卡视频| 一本到高清视频免费精品| 国产日韩v精品一区二区| 免费观看在线综合| 欧美美女喷水视频| 一区二区三区高清在线| aaa亚洲精品| 欧美激情综合在线| 国产伦精品一区二区三区免费| 91精品国产美女浴室洗澡无遮挡| 亚洲青青青在线视频| 大尺度一区二区| 久久蜜桃一区二区| 久久超级碰视频| 日韩视频一区二区三区| 丝袜美腿亚洲色图| 欧美日本一道本| 天使萌一区二区三区免费观看| 91社区在线播放| 亚洲免费高清视频在线| 91一区在线观看|