zoukankan      html  css  js  c++  java
  • 操作INI文件以及开机自动运行

        public class VolumnCfg
        {
            public static string iniFile;
            [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);
            ///   <summary>  
            ///   构造方法  
            ///   </summary>  
            ///   <param   name="iniFile">文件路径</param>  
            public VolumnCfg()
            {
                iniFile = System.Windows.Forms.Application.StartupPath + "\\VolumnCfg.ini";
                if (!File.Exists(iniFile))
                    initCfgFile(iniFile);
            }

            public static void initCfgFile(string FilePath)
            {
                IniWriteValue("VolumnCfg", "AutoRun", System.Boolean.FalseString);
                IniWriteValue("VolumnCfg", "Opacity", "0.8");
                IniWriteValue("VolumnCfg", "DelaySec", "3");
            }

            ///   <summary>  
            ///   写入INI文件  
            ///   </summary>  
            ///   <param   name="Section">项目名称(如   [DataTP]   )</param>  
            ///   <param   name="Key">键</param>  
            ///   <param   name="Value">值</param>  
            public static void IniWriteValue(string Section, string Key, string Value)
            {
                WritePrivateProfileString(Section, Key, Value, iniFile);
            }

            ///   <summary>  
            ///   读出INI文件  
            ///   </summary>  
            ///   <param   name="Section">项目名称(如   [DataTP]   )</param>  
            ///   <param   name="Key">键</param>  
            public static string IniReadValue(string Section, string Key)
            {
                StringBuilder temp = new StringBuilder(500);
                int i = GetPrivateProfileString(Section, Key, "", temp, 500, iniFile);
                return temp.ToString();
            }

                 
            /// <summary>
            /// 开机启动项
            /// </summary>
            /// <param name="Started">是否启动</param>
            /// <param name="name">启动值的名称</param>
            /// <param name="path">启动程序的路径</param>
            public static void SetAutoRun(bool Started, string name, string path)
            {
                RegistryKey HKLM = Registry.LocalMachine;
                RegistryKey Run = HKLM.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
                if (Started == true)
                {
                    try
                    {
                        Run.SetValue(name, path);
                        HKLM.Close();
                    }
                    catch (Exception)
                    {
                        //MessageBox.Show(Err.Message.ToString(), "MUS", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }

            }
  • 相关阅读:
    CSS的学习
    nodejs
    eureka注册中心
    netty的机制
    分布式事务
    spring cloud的基础
    一个发散动画的菜单控件(主要记录控件x,y坐标的运动状况)
    关于ViewPager高度自适应(随着pager页的高度改变Viewpager的高度)
    ViewPager的使用总结
    Android实现沉浸式状态栏(必须高逼格)
  • 原文地址:https://www.cnblogs.com/zhahost/p/1232534.html
Copyright © 2011-2022 走看看