zoukankan      html  css  js  c++  java
  • 程序开机自动运行

    c#版本:

            private bool SetAutoRun(bool onFlag)
            {
                bool bRet = true;
                try
                {
                    string path = Application.ExecutablePath;
                    RegistryKey rk = Registry.LocalMachine;
                    RegistryKey rk2 = rk.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionRun");
    
                    if (onFlag)
                    {
                        rk2.SetValue("you app name", path);
                    }
                    else
                    {
                        rk2.DeleteValue("you app name", false);
                    }
                    
                    rk2.Close();
                    rk.Close();
                }
                catch (System.Exception ex)
                {
                    bRet = false;
                    lblmsg.Text = "exception:" + ex.Message;
                    MessageBox.Show(ex.Message);
                }            
                
                return bRet;
            }

    c++ 版本:

    void CAutoDlg::SetAutoRun(BOOL bAutoRun)
    {
        HKEY hKey;
        CString strRegPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Run";//找到系统的启动项
        if (bAutoRun)
        {
            if (RegOpenKeyEx(HKEY_CURRENT_USER, strRegPath, 0, KEY_ALL_ACCESS, &hKey) == ERROR_SUCCESS) //打开启动项
            {
                TCHAR szModule[_MAX_PATH];
                GetModuleFileName(NULL, szModule, _MAX_PATH);//得到本程序自身的全路径
                RegSetValueEx(hKey, "AUTODLG", 0, REG_SZ, (const BYTE*)(LPCSTR)szModule, strlen(szModule)); //添加一个子Key,并设置值,"AUTODLG"是应用程序名字(不加后缀.exe)
                RegCloseKey(hKey); //关闭注册表
            }
            else
            {
                PRINTF(LEVEL_INFO, Logger, LOG_FILE_LINE, "%s", "系统参数错误,不能随系统启动");
            }
        }
        else
        {
            if (RegOpenKeyEx(HKEY_CURRENT_USER, strRegPath, 0, KEY_ALL_ACCESS, &hKey) == ERROR_SUCCESS)
            {
                RegDeleteValue(hKey, "AUTODLG");
                RegCloseKey(hKey);
            }
        }
    }

    相信对需要的你是有用得,好用请说声谢谢。

  • 相关阅读:
    常用业务接口界面化 in python flask
    git命令中带有特殊符号如@
    生成唯一标识 字符串跟时间戳的结合
    MD5 in JAVA
    修改(同步)linux时间
    jenkins 从git拉取代码
    Git 默认不区分大小写
    postman也可以使用F12功能
    Session
    WebXML部署服务
  • 原文地址:https://www.cnblogs.com/zhangmo/p/13821791.html
Copyright © 2011-2022 走看看