开源dll注入器

Opensource dll injector

本文关键字:注入器 dll 开源      更新时间:2023-10-16

我开发了一个可以改变某些程序外观的工具。要做到这一点,我需要在一些进程中注入一个dll。

现在我基本上使用这种方法。问题是人们经常无法注入dll,因为他们不以管理员或其他我不理解的东西运行目标进程(有人根本无法在vista上注入,即使关闭了UAC),所以它非常依赖于操作系统。

是否有一个可靠的开源解决方案,我可以在我的应用程序中使用,它允许排除故障,如识别用户问题?

这个方法很常见,也很可靠。

试着添加

 HANDLE hToken;
 LUID sedebugnameValue;
 TOKEN_PRIVILEGES tkp;
  if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) puts("Failed to Enable Debug Options!");
  if (!LookupPrivilegeValue(NULL, SE_DEBUG_NAME, &sedebugnameValue))
  {
   CloseHandle(hToken);
   puts("Failed to Enable Debug Options!");
   gets(temp);
   return 0;
  }
 tkp.PrivilegeCount = 1;
 tkp.Privileges[0].Luid = sedebugnameValue;
 tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
 if (!AdjustTokenPrivileges(hToken, FALSE, &tkp, sizeof tkp, NULL, NULL)) CloseHandle(hToken);

了解Detours的来源可以很有用:http://research.microsoft.com/en-us/projects/detours/