Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 49939|Resposta: 9

[C] C para alcançar o código de autodestruição!

[Copiar link]
Publicado em 23/10/2014 15:26:36 | | |
  1. #include <windows.h>
  2. #include <shellapi.h>
  3. #include <shlobj.h>

  4. BOOL SelfDel()
  5. {
  6.     SHELLEXECUTEINFO sei;
  7.     TCHAR szModule [MAX_PATH],szComspec[MAX_PATH],szParams [MAX_PATH];
  8.    
  9.     // 获得自身文件名. 获取cmd的全路径文件名
  10.     if((GetModuleFileName(0,szModule,MAX_PATH)!=0) &&
  11.         (GetShortPathName(szModule,szModule,MAX_PATH)!=0) &&
  12.         (GetEnvironmentVariable("COMSPEC",szComspec,MAX_PATH)!=0))
  13.     {
  14.         // 设置命令参数.
  15.         lstrcpy(szParams,"/c del ");
  16.         lstrcat(szParams, szModule);
  17.         lstrcat(szParams, " > nul");
  18.         
  19.         // 设置结构成员.
  20.         sei.cbSize = sizeof(sei);
  21.         sei.hwnd = 0;
  22.         sei.lpVerb = "Open";
  23.         sei.lpFile = szComspec;
  24.         sei.lpParameters = szParams;
  25.         sei.lpDirectory = 0;        sei.nShow = SW_HIDE;
  26.         sei.fMask = SEE_MASK_NOCLOSEPROCESS;
  27.         
  28.         // 创建cmd进程.
  29.         if(ShellExecuteEx(&sei))
  30.         {
  31.             // 设置cmd进程的执行级别为空闲执行,使本程序有足够的时间从内存中退出.
  32.             SetPriorityClass(sei.hProcess,IDLE_PRIORITY_CLASS);

  33.             // 将自身进程的优先级置高
  34.             SetPriorityClass(GetCurrentProcess(),REALTIME_PRIORITY_CLASS);
  35.             SetThreadPriority(GetCurrentThread(),THREAD_PRIORITY_TIME_CRITICAL);
  36.             
  37.            // 通知Windows资源浏览器,本程序文件已经被删除.
  38.             SHChangeNotify(SHCNE_DELETE,SHCNF_PATH,szModule,0);
  39.             return TRUE;
  40.         }
  41.     }
  42.     return FALSE;
  43. }
  44. int main()
  45. {
  46.     SelfDel();
  47.     }
Copiar código






Anterior:Firmware Apple IOS8.1 &amp; Jailbreak &amp; Tutorial organizado
Próximo:Ruijie quebra o método 8021x apenas sem verificar a integridade do cliente
Publicado em 09/01/2015 15:21:01 |
Aprenda, o administrador trabalhou duro.
Publicado em 23/07/2017 00:02:53 |
Aprenda, o administrador trabalhou duro.
Publicado em 11/08/2017 06:26:51 |
Aprenda, o administrador trabalhou duro.
Publicado em 20/06/2021 17:56:46 |
6662222222222222222222
Publicado em 08/07/2021 01:25:33 |
Aprenda, o administrador trabalhou duro.
Publicado em 16/07/2021 16:38:25 |
Obrigado por compartilhar,
Publicado em 03/08/2021 08:51:16 |
Aprenda, o administrador trabalhou duro.
Publicado em 23/08/2021 16:10:19 |
Aprenda, o administrador trabalhou duro.
Publicado em 22/05/2022 22:56:21 |
Aprenda
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com