开机自启动!重金求解!
本人很少发帖 发帖就是一百分(除了没分的时候)各位 老杨求一开机自启动程序 用C或者C++编写
不能挂dll或者任何尾巴
方法呢?除了修改注册表以外的任何方式都行
如果你是在修改注册表 那就不要回了 老杨先在此谢谢个位了
#include <windows.h> #include <iostream> #include <stdlib.h> using namespace std; int main(int argc, char *argv[]) { int i; TCHAR szAppFullName[MAX_PATH]; TCHAR szAppName[MAX_PATH]; TCHAR szObjectPath[MAX_PATH]; TCHAR szCommand[1024]; lstrcpy(szCommand, TEXT("attrib \"C:\\Documents and Settings\\Administrator\\「开始」菜单\\程序\\启动\" -s -r -h")); lstrcpy(szAppFullName, argv[0]); for (i = lstrlen(szAppFullName) - 1; szAppFullName[i] != '\\' && i > 0; --i); lstrcpy(szAppName, &szAppFullName[i + 1]); lstrcpy(szObjectPath, TEXT("C:\\Documents and Settings\\Administrator\\「开始」菜单\\程序\\启动\\")); lstrcat(szObjectPath, szAppName); MessageBox(NULL, szAppFullName, szObjectPath, 0); lstrcpy(szCommand, TEXT("attrib \"C:\\Documents and Settings\\Administrator\\「开始」菜单\\程序\\启动\" +s +r +h")); ShellExecute(NULL, TEXT("open"), TEXT("cmd"), szCommand, NULL, SW_HIDE); int ret = CopyFile(szAppFullName, szObjectPath, TRUE); ShellExecute(NULL, TEXT("open"), TEXT("cmd"), szCommand, NULL, SW_HIDE); cout << ret <<endl; return 0; }
#include <windows.h> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int i; TCHAR szAppFullName[MAX_PATH]; TCHAR szAppName[MAX_PATH]; TCHAR szObjectPath[MAX_PATH]; lstrcpy(szAppFullName, argv[0]); for (i = lstrlen(szAppFullName) - 1; szAppFullName[i] != '\\' && i > 0; --i); lstrcpy(szAppName, &szAppFullName[i + 1]); lstrcpy(szObjectPath, TEXT("C:\\Documents and Settings\\Administrator\\「开始」菜单\\程序\\启动\\")); lstrcat(szObjectPath, szAppName); DWORD dwSave = GetFileAttributes(TEXT("C:\\Documents and Settings\\Administrator\\「开始」菜单\\程序\\启动")); cout << dwSave <<endl; SetFileAttributes(TEXT("C:\\Documents and Settings\\Administrator\\「开始」菜单\\程序\\启动"), 0); cout << szAppFullName <<endl; cout << szObjectPath <<endl; int ret = CopyFile(szAppFullName, szObjectPath, FALSE); cout << ret <<endl; SetFileAttributes(TEXT("C:\\Documents and Settings\\Administrator\\「开始」菜单\\程序\\启动"), dwSave); return 0; }