關于程序開機自啟動的方法相信有很多小伙伴們都非常清楚的,但是對于一些新手們來說就不是那么簡單了,下面我們就一起去看看C語言如何實現程序開機自啟動的吧,感興趣的朋友們一起來參考參考。
程序比較簡單,用到了C語言獲得自身路徑和系統路徑,修改注冊表項等,某些函數不理解可以查看MSDN
#include<stdio.h>#include<windows.h>char *GetFilename(char *p) //得到一個路徑的純文件名{ int x=strlen(p); char ch='//'; char *q=strrchr(p,ch); return q;}int main(){ char *filepath; char modlepath[256]; char syspath[256]; //打開酷狗應用 filepath="C://Program^ Files//KuGou//KGMusic//KuGou.exe"; system(filepath); //將程序移動到系統目錄下 GetModuleFileName(0,modlepath,256); //獲得自身路徑 GetSystemDirectory(syspath,256); //得到系統路徑 int ret=CopyFile(modlepath,strcat(syspath,GetFilename(modlepath)),1);//復制,CopyFile的第二個參數是目標文件名 if(ret) { printf("%s has been copyed to sys dir %s/n",modlepath,syspath); } else { printf("%s is exists",modlepath); } //程序添加開機自啟動 char regname[]="Software//Microsoft//Windows//CurrentVersion//Run"; HKEY hKey; ret=RegOpenKey(HKEY_LOCAL_MACHINE,regname,&hKey); //打開注冊表鍵 ret=RegSetValueEx(hKey,"MyProm",0,REG_EXPAND_SZ,(unsigned char*)strcat(syspath,GetFilename(modlepath)),25); //設置鍵值 if(ret==0) { printf("succes to write run key./n"); RegCloseKey(hKey); } else { printf("failed to open regedit.%d/n",ret); return 0; } return 0;}
上文就是關于C語言如何實現程序開機自啟動的內容,這個方法主要是通過C來獲取程序路徑修改注冊表項來實現,很簡單。
新聞熱點
疑難解答
圖片精選