zoukankan      html  css  js  c++  java
  • 基于visual c++之windows核心编程代码分析(28)实现开机自启动

    我们开发程序的时候,很多时候都希望开机的时候自动运行我们的程序,自动运行程序在注册表里面究竟是如何实现的呢。

    我们亲自写代码来实现之

    #include <stdio.h>
    #include <windows.h>
    int main(void)
    {
    char regname[]="Software\\Microsoft\\Windows\\CurrentVersion\\Run";
    HKEY hkResult;
    int ret=RegOpenKey(HKEY_LOCAL_MACHINE,regname,&hkResult);
    
    ret=RegSetValueEx(hkResult,"hacker"/* 注册表键名*/,0,REG_EXPAND_SZ,(unsigned char *)"%systemroot%\\hacker.exe",25);
    if(ret==0){
      printf("success to write run key\n");
      RegCloseKey(hkResult);
      }
    else {
    	printf("failed to open regedit.%d\n",ret);
    	return 0;
    }
    char modlepath[256];
    char syspath[256];
    GetModuleFileName(0,modlepath,256);//取得程序名字
    GetSystemDirectory(syspath,256);
    ret=CopyFile(modlepath,strcat(syspath,"\\hacker.exe"),1);
    if(ret)
    {
    	printf("%s has been copyed to sys dir %s\n",modlepath,syspath);
    }
    else printf("%s is exisis",modlepath);
    return 0;
    }
    


     

  • 相关阅读:
    GRIDVIEW导出到EXCEL
    .NET GRIDVIEW导出EXCEL
    C#自动列宽
    vue 路由跳转及传值和取值
    vue 部署windows nginx服务上
    vue多个代理配置vue.config
    mock常用规则
    git基础篇-常见错误
    git基础篇-使用教程
    win10 gitserver搭建
  • 原文地址:https://www.cnblogs.com/new0801/p/6177797.html
Copyright © 2011-2022 走看看