Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 49939|Yanıt: 9

[C] C programı kendini imha koduna ulaşmak için!

[Bağlantıyı kopyala]
Yayınlandı 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.     }
Kopya kodu






Önceki:Apple IOS8.1 Firmware &amp; Jailbreak &amp; Eğitim Organize
Önümüzdeki:Ruijie, istemcinin bütünlüğünü doğrulamadan sadece 8021x yöntemini çözer
Yayınlandı 9.01.2015 15:21:01 |
Öğrenin, yönetici çok çalıştı.
Yayınlandı 23.07.2017 00:02:53 |
Öğrenin, yönetici çok çalıştı.
Yayınlandı 11.08.2017 06:26:51 |
Öğrenin, yönetici çok çalıştı.
Yayınlandı 20.06.2021 17:56:46 |
6662222222222222222222
Yayınlandı 8.07.2021 01:25:33 |
Öğrenin, yönetici çok çalıştı.
Yayınlandı 16.07.2021 16:38:25 |
Paylaştığınız için teşekkürler,
Yayınlandı 3.08.2021 08:51:16 |
Öğrenin, yönetici çok çalıştı.
Yayınlandı 23.08.2021 16:10:19 |
Öğrenin, yönetici çok çalıştı.
Yayınlandı 22.05.2022 22:56:21 |
Öğren
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com