zoukankan      html  css  js  c++  java
  • 【C#Windows 服务】 《二》INI配置文件

    一、工具:

    VS2015+NET Framework4.5。

    二、操作:

    1、创建INIHelp帮助类

    2、丰富帮助类操作

    3、windows实例调用

    三、代码:

    1、INI帮助类:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Runtime.InteropServices;
     
    namespace ClassLibrary1
    {
        public class INIHelp
        {
     
     
            public static string iniFileName = AppDomain.CurrentDomain.BaseDirectory + System.IO.Path.DirectorySeparatorChar + "config.ini";
     
            [DllImport("kernel32")]
            private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
     
            [DllImport("kernel32")]
            private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
     
            public static string SaveConfig()
            {
                try
                {
                    WriteIni("sqlconfig", "testsql", "select *  from Dog");
     
                }
                catch (Exception ex)
                {
                    LogHelp.WriteLog(ex.ToString());
                }
                return "0";
            }
     
            public static void WriteIni(string Section, string Key, string strValue)
            {
                WritePrivateProfileString(Section, Key, strValue, iniFileName);
            }
     
            public static string ReadIni(string Section, string Key, string Default)
            {
                StringBuilder temp = new StringBuilder(1024);
                int rec = GetPrivateProfileString(Section, Key, Default, temp, 1024, iniFileName);
                return temp.ToString();
            }
     
        }
    }

      

    2、windows服务中调用代码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    using ClassLibrary1;
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Diagnostics;
    using System.Linq;
    using System.ServiceProcess;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;
     
    namespace WindowsServiceTest
    {
        public partial class Service1 : ServiceBase
        {
            public Service1()
            {
                InitializeComponent();
            }
     
            protected override void OnStart(string[] args)
            {
     
                Thread thread = new Thread(delegate ()
                {
                    try
                    {
                        // for (int i = 0; i < 1000; i++)
                        //{
                        LogHelp.WriteLog("***********************服务启动*****************");
                        INIHelp.WriteIni("sqlconfig", "testsql", "select *  from Dog");
                        string str = INIHelp.ReadIni("sqlconfig", "testsql", "");
                        LogHelp.WriteLog(str);
                        LogHelp.WriteLog("***********************服务启动结束*****************");
                        // }
                    }
                    catch (Exception ex)
                    {
     
                        LogHelp.WriteLog("服务启动失败" + ex); ;
                    }
                }
                    );
                thread.Name = "线程测试1";
                thread.IsBackground = true;
                thread.Start();
     
            }
     
            protected override void OnStop()
            {
            }
        }
    }

      

    四、总结:

    来源:http://www.cnblogs.com/eadily-dream/p/6054304.html

  • 相关阅读:
    我的WCF之旅(1):创建一个简单的WCF程序
    网页设计中颜色的搭配
    CSS HACK:全面兼容IE6/IE7/IE8/FF的CSS HACK
    UVa 1326 Jurassic Remains
    UVa 10340 All in All
    UVa 673 Parentheses Balance
    UVa 442 Matrix Chain Multiplication
    UVa 10970 Big Chocolate
    UVa 679 Dropping Balls
    UVa 133 The Dole Queue
  • 原文地址:https://www.cnblogs.com/lidj/p/7290665.html
Copyright © 2011-2022 走看看