loadi_dll.cpp

来自「Cracker终结者——提供最优秀的软件保护技术」· C++ 代码 · 共 37 行

CPP
37
字号
#define WIN32_LEAN_AND_MEAN
#define UNICODE
#define _UNICODE
#include <windows.h>
#include <stdio.h>
#include <conio.h>
#include <tchar.h>

#include "..\..\AddProcessInitDLL.h"

INT _tmain(int argc, TCHAR** argv) {
  if(argc > 2) {
    PROCESS_INFORMATION pi;
    STARTUPINFO si = {sizeof(si)}; 
    LPCTSTR lpCurrentDirectory = NULL;
    if(CreateProcess(NULL, argv[1], NULL, NULL, FALSE, CREATE_SUSPENDED,
                     NULL, lpCurrentDirectory, &si, &pi)) {

      // todo: extract lpHomeDirectory from argv[1]
      LPCTSTR lpHomeDirectory = NULL;

      for(DWORD i = argc-1; i > 1; i--)
        if(hAddProcessInitDLL(pi.hProcess, argv[i], 0, lpHomeDirectory, lpCurrentDirectory))
          _tprintf(_T("'%s' successfully added.\n"), argv[i]); 
        else
          _tprintf(_T("Cannot add '%s'!\n"), argv[i]); 
      ResumeThread(pi.hThread);
      CloseHandle(pi.hThread);
      CloseHandle(pi.hProcess);
    }
    else
      _tprintf(_T("Cannot create '%s'!\n"), argv[1]);
  }
  else
    _tprintf(_T("Usage LoadI_DLL <NewAppName> <I_DLLName1> [I_DLLName2] [IDLLName3] .."));
  return(getch());
}       

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?