问候!

我目前正在尝试扩展魔术鼠标的功能。为此,我希望编写一个kext来拦截来自多点触摸驱动程序AppleMultitouchDriver.kext的事件,解释它们,然后分派(dispatch)新事件或转发实际事件。该方法类似于DoubleCommand使用的方法。

我已经创建了一个小的测试程序,可以拦截鼠标事件(单击,移动等),因为这也是需要的。

我现在遇到的问题是我无法从AppleMultitouchDevice和/或AppleMultitouchHIDEventDriver对象拦截事件,因为它们没有类定义。我需要能够像在鼠标拦截器中一样以及在DoubleCommand中将指针重新分配给回调函数。据我所知,这意味着我需要重建AppleMultitouchDevice类。我已经能够获得对AppleMultitouchDevice对象实例的引用,所以我只需要能够强制转换和使用它。

现在您已经有了背景,这是我的直接问题:

  • 我需要使用什么方法来对kext进行反向工程或重构所讨论的类?
  • 有哪些可用程序可以帮助我完成这项工作?
  • 是否有针对您所知道的特定主题的教程或电子书?
  • 是否可以在不实际重建整个类的情况下重新分配回调指针?
  • 我可能还错过了其他任何事情,因为我对此非常陌生。

  • 在此先感谢您的任何建议或帮助!

    最佳答案

    这对您有帮助吗?

    FingerMgMt

    关于c++ - 对Apple Kext进行反向工程-重建类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1814377/

    10-15 05:30