VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 766|回复: 1

[求助] 关于写一个自启的一些问题

[复制链接]
66_avatar_middle
在线会员 发表于 2018-4-16 19:23:46 | 显示全部楼层 |阅读模式
自己写的一个自启程序,想用注册表启动,能写入注册表,但QQ电脑管家提示这是一个无效启动项,不知道怎么解决求大神帮忙解决。代码如下:
#include<stdio.h>
#include<time.h>
#include<windows.h>
int WINAPI WinMain(HINSTANCE hlnstance, HINSTANCE hPrevlnstance, LPSTR szCmdLine, int iCmdShow)
{
        //定义指针句柄,时间参数和时间结构体指针,存放本地程序与系统文件的目录缓冲区
        HKEY  hk;
        time_t t;
        struct tm*lt;
        TCHAR syste[MAX_PATH];
        TCHAR pa[MAX_PATH];
        POINT  p;
        p.x = 0;
        p.y = 0;
        //复制自身文件到系统目录下,便于注册表直接找到文件自启;
        HMODULE GetModH = GetModuleHandle(NULL);
        GetModuleFileName(GetModH, pa, sizeof(pa));
        GetSystemDirectory(syste, sizeof(syste));
        CopyFile(pa, syste, false);
        //将程序写入注册表中,达到自启;
        strcat((char*)syste, "/360主动防御.exe");
        RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"Software\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_SET_VALUE, &hk);
        RegSetValueEx(hk, L"360主动防御.exe", 0, REG_SZ, (const unsigned char*)syste, sizeof(syste));
        RegCloseKey(hk);
//时刻获取当前系统时间判断时间是否达到关机和锁定鼠标的条件
        ar:
        while (1)
        {
                time(&t);
                lt = localtime(&t);
                if (lt->tm_hour < 23 && lt->tm_hour>7)
                {
                        goto ar;
                }
                else
                {
                        system("shutdown/p");//无超时关机
                        while (1)
                                ::SetCursorPos(p.x, p.y);
                }
        }
}




上一篇:怎么控制SetWindowsHookEx 是在自己进程回调 还是 其他进程注入回调?
下一篇:万能的SYC大大
51_avatar_middle
online_admins 发表于 2018-4-16 21:17:08 | 显示全部楼层
先问下: 360主动防御.exe 这个文件所在的目录是哪里?
为什么没有写绝对路径?
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-9-20 07:56

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表