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);
                    }
                }

            }
  • 相关阅读:
    工作总结 vue 城会玩
    vue中,class、内联style绑定、computed属性
    vue-router2.0 组件之间传参及获取动态参数
    vue-router(2.0)
    在v-for中利用index来对第一项添加class(vue2.0)
    机器学习:从入门到沉迷
    探索AutoLayout的本质和解决一些问题
    软件的极简主义
    数组最大差值的最优解法(动态规划)
    项目管理--敏捷开发在项目中使用
  • 原文地址:https://www.cnblogs.com/zhahost/p/1232534.html
Copyright © 2011-2022 走看看