我可以在一個進程中的庫中獲得通知嗎,每當在同一進程中使用linux上的dlopen()函數從任何其他庫加載新庫時? 謝謝。linux dlopen當我在進程中調用dlopen()時,是否可以在我的庫中獲取通知?
1
A
回答
1
建立一個library interposer介入dlopen()
。
通過動態鏈接,您可以攔截應用程序對任何共享庫的任何函數調用。一旦你截獲了它,你就可以在該函數中做任何你想做的事情,並且調用應用程序最初打算調用的真實函數。
1
查看動態鏈接器的rtld-audit - audit API。
http://man7.org/linux/man-pages/man7/rtld-audit.7.html
你應該建立具有特定功能的共享庫,你應該用不同的事件通知。一旦你有了你的庫,你將需要將LD_AUDIT設置爲你的共享庫。
相關問題
- 1. linux dlopen:它可以在加載時「通知」庫嗎?
- 2. SIGSEGV當P /調用dlopen
- 3. 在Linux中使用GLES 2 PowerVR庫時出現Dlopen錯誤?
- 4. 是否可以在我的應用程序iOS中從Skype獲取通知?
- 5. 在OSX上通過dlopen打開庫時調試崩潰
- 6. 使用dlopen時,我應該鏈接到我打開的庫嗎?
- 7. dlopen是否創建多個庫實例?
- 8. 在linux下使用dlopen()api時,我可以在_init()函數中添加參數嗎?
- 9. 未知參考dlopen的
- 10. 如何知道沒有.so當dlopen()
- 11. Mac OS X應用程序可否阻止dlopen加載庫?
- 12. 我應該在dlopen之前鎖定嗎?
- 13. 當數據庫更新時,我可以在Yii視圖中獲得通知嗎?
- 14. 使用dlopen的IOKit
- 15. 在dlopen()API中拒絕的權限API
- 16. [macosx]是否打開dlopen調用並閱讀函數?
- 17. dlopen()搜索路徑
- 18. 的dlopen()。所以,沒有找到符號在剝離可執行
- 19. CUDA插件dlopen
- 20. dlopen錯誤:St9bad_alloc
- 21. sigemptyset()NDK UnsatisfiedLinkError dlopen()
- 22. 我可以通知Windows XP/7中我沒有產卵的進程是否正在關閉?
- 23. 用文件描述符調用dlopen?
- 24. 具有本地庫的Perl模塊:可以讓XSLoader在dlopen上使用RTLD_GLOBAL?
- 25. 我是否可以將我的應用的默認行爲設置爲不在通知中心顯示通知?
- 26. MySQL是否允許在C中使用回調函數,以便發生更改時可以通知我?
- 27. 當進程在Android中殺死我的活動時,是否可以保存我的私人日期?
- 28. 是否可以獲取推送通知的傳遞時間戳?
- 29. 是否有可能在Linux中捕獲其他進程信號?
- 30. 是否可以從我的Android應用程序中調用AlertDialog?