C# 读取TeamViewerID 写入SQL Server

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using System.Net.Sockets;
using Microsoft.Win32;
using System.Data.SqlClient;
using System.IO;
using System.Data;
using System.Drawing;
using System.Collections;
using System.Web;
using System.Threading;
using System.Diagnostics;


namespace RedTeamViewer
{
    class Program
    {
        static string[] KeyValue = {"NULL","NULL","NULL","NULL","NULL","NULL"};
        static string[] Smple = { "SN", "SERVER", "DATABASE", "UID", "PWD", "StoredProcedure" };
        static string TeamViewerIDn = string.Empty;
        static int Main(string[] args)
        {
            if(ReadConfigInfo("config.ini")==false)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Read Config.ini File Err!!");
                Console.ResetColor();
                return 1;
            }
            KeyValue[0] = ReadString(Smple[0]).Trim();
            if(KeyValue[0]==null)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("SN Barcode is NULL!!");
                Console.ResetColor();
                return 1;
            }
            if (ReadTeamViewerID() == false) return 1;
            bool WriteDataResult = false;
            WriteDataResult = FullSqlData(Smple);
            if(WriteDataResult==false) return 1;
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("The TeamViewer ID  was successfully written to the Sql database ");
            Console.ResetColor();
            return 0;
        }


        static int nn = 0;
        static bool FullSqlData(string []Key)
        {
            bool Flag = false;
            string Date_Time=DateTime.Now.ToString("yyyyMMdd");
            try
            {
                SqlConnection conn = new SqlConnection("server="+Key[1]+";database="+Key[2]+";uid="+Key[3]+";pwd="+Key[4]);
                conn.Open();
                if(conn.State!=ConnectionState.Open)
                {
                    Flag = false;
                    return Flag;
                }
                SqlCommand cmd = new SqlCommand(Key[5],conn);
                cmd.CommandType = CommandType.StoredProcedure;//启动储存过程参数
                cmd.Parameters.Add("@SN",KeyValue[0].Trim());
                cmd.Parameters.Add("@TeamViewer_ID", TeamViewerIDn);
                cmd.Parameters.Add("@Date_Time",Date_Time);
                cmd.Parameters.Add("@rs",1);//添加T-SQ存储过程参数
                cmd.Parameters["@rs"].Direction = ParameterDirection.Output;//启动输出返回
                cmd.ExecuteScalar();
                if((int)cmd.Parameters["@rs"].Value==0)
                {
                    Flag = true;
                }
                else if((int)cmd.Parameters["@rs"].Value==1)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    nn = 1;
                    Flag = false;
                    Console.WriteLine("TeamViewer ID Insert Sql DataBase Err!!");
                    Console.ResetColor();
                }
                else if((int)cmd.Parameters["@rs"].Value==2)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    nn = 1;
                    Flag = false;
                    Console.WriteLine("Sql Database Exists SN BarCode!!");
                    Console.ResetColor();
                }
                else if((int)cmd.Parameters["@rs"].Value==3)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    nn = 1;
                    Flag = false;
                    Console.WriteLine("Sql Database Exists TeamViewer ID");
                    Console.ResetColor();
                }
                conn.Close();
            }
            catch(Exception ex)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Flag = false;
                Console.WriteLine(ex.Message);
                Console.ResetColor();
                return Flag;
            }
            return Flag;
        }
        static bool ReadTeamViewerID()//读取ReadTeamViewer ID
        {
            bool Flag = false;
            string ID = string.Empty;
            RegistryKey key = Registry.LocalMachine;
            RegistryKey keyID = key.OpenSubKey("SOFTWARE\\Wow6432Node\\TeamViewer", true);
             ID=keyID.GetValue("ClientID").ToString();
            if(ID==""||ID==null)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Read TeamViewer ID Err!!");
                Console.ResetColor();
                Flag = false;
            }
            else
            {
                TeamViewerIDn = ID;
                Flag = true;
            }  
            return Flag;
        }
        static string ReadString(string PathName)//读取字符串
        {
            string Temp = string.Empty;
            try
            {
                FileStream fs = new FileStream(PathName,FileMode.Open,FileAccess.Read);
                StreamReader sr = new StreamReader(fs,Encoding.Default);
                Temp = sr.ReadLine().Trim();
                fs.Close();
                sr.Close();
            }
            catch(Exception ex)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine(ex.Message);
                Temp = null;
                return Temp;
            }
            return Temp;
        }
        static bool ReadConfigInfo(string CfgName)//读取配置信息
        {
            bool Flag = false;
            try
            {
                FileStream fs = new FileStream(CfgName, FileMode.Open, FileAccess.Read);
                StreamReader sr = new StreamReader(fs,Encoding.Default);
                string Temp = string.Empty;
                while((Temp=sr.ReadLine())!=null)
                {
                    string[] Array = Temp.Split(new string[] { "=" }, StringSplitOptions.RemoveEmptyEntries);
                    int n = 0;
                    foreach(string str in Smple)
                    {
                        if(str==Array[0].Trim())
                        {
                            Smple[n] = Array[1].Trim();
                            break;
                        }
                        n++;
                    }
                }
                sr.Close();
                fs.Close();
                Flag = true;
            }
            catch(Exception ex)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine(ex.Message);
                Flag = false;
                return Flag;
            }
            return Flag;
        }
    }
}





猜你喜欢

转载自blog.csdn.net/u013934107/article/details/80502500
今日推荐