回答
SetWindowsHookEx
更像是舊的InputManager
黑客攻擊,從某種意義上說,您可以從共享庫/插件加載到應用程序中更改應用程序的代碼。
請參閱SIMBL瞭解另一種工藝的現成代碼注入器。對於Objective-C類,則需要使用method swizzling。我沒有嘗試自己替換C函數/ C++類,但肯定可以使用mach_override來完成。另見this blog post。
但是通常如果你想修改一個GUI應用程序,那麼敲入Objective-C類就足夠了。
石英事件觸發器可以監視和修改低級事件,例如按鍵和鼠標點擊,但受到一些限制。你能告訴更多關於你想做什麼的嗎?
你想完成什麼,具體是什麼?你能解釋一下爲什麼你需要Mac OS X相當於SetWindowsHookEx()
? (簡短回答:沒有一個。中等答案:幾乎所有你可以用Windows上的SetWindowsHookEx()
做的所有事情都可以在Mac OS X上以其他更多的OO方式完成。)
在窗口上'SetWindowsHookEx'可以幫助你從**其他**進程接收事件。如窗戶關閉,窗戶最大化等。你確定這可以在Mac OS X上完成嗎? – 2014-12-27 13:53:26
這是一個非常古老的問題的答案。 :)我說的是,如果我們知道原始開發人員試圖解決的問題,我們可以推薦其他方法。 – 2014-12-27 17:48:33
- 1. MSCGen for Mac OS X
- 2. codeigniter IDE for mac os x
- 3. UIActivityIndicatorView for Mac OS X?
- 4. 在Mac OS X
- 5. 安裝Pygame for Mac OS X 10.6.8
- 6. LLVM-Clang for Mac OS X上的Eclipse CDT
- 7. Makefile for傻瓜? Mac OS X的
- 8. Mac OS X Linker
- 9. 在Mac OS X
- 10. 在Mac OS X
- 11. Mac OS X PackageMaker
- 12. 在Mac OS X 10.9
- 13. ca-certificates Mac OS X
- 14. ProcessBuilder for Mac OS&Linux
- 15. Cocoa for Mac OS 10.7
- 16. 就在Mac OS X
- 17. Mac OS X上的SimpleFTPUpload X
- 18. MAC OS X - Xcode4和
- 19. SDL + emacs + Mac OS X
- 20. Mac OS X + cakephp + SqlServer
- 21. clamxav homebrew mac os x
- 22. JDK在Mac OS X
- 23. Mac OS X 10.9與
- 24. Mac OS X和Mercurial
- 25. 升級MAC OS X
- 26. GKSession與Mac OS X
- 27. Java JPopupMenu Mac OS X
- 28. FreeTDS Mac OS X MiniPortile
- 29. Subversion與Mac OS X
- 30. Numpy-MKL for OS X
假設我想掛鉤函數加載asdf.dylib。 理想是強制應用程序加載我自己的定製版本的asdf.dylib,而不使用DYLD_INSERT_LIBRARIES技巧。 – karlphillip 2010-07-15 18:32:38