我正在使用C#winforms應用程序我在我的項目中調用該函數時,我從該DLL中獲取不需要的MessageBox的函數。是否可以阻止該MessageBox?是否可以阻止來自現有DLL的消息框?
2
A
回答
2
如果推動推動,您可以啓動一個線程,使用WinAPI或庫以標題形式打開任何打開的窗口。
我會採取較不苛刻的機制,比如首先更改dll或將更改請求發送給合適的人員。
1
如果這是第三方DLL,沒有好的選擇來擺脫消息框。
但是,由於C#編譯爲IL,因此您可以查看字節代碼並刪除對MessageBox.Show
的調用或將其替換爲對Trace.WriteLine
的調用。你可以這樣做,例如使用SDK附帶的ildasm.exe
/ilasm.exe
工具。
0
你可以使用十六進制編輯器,調試器或某些資源查看器來研究該dll,以瞭解如何創建對話框,然後訂閱該Windows事件(如OnCreate - 在WinAPI文檔中獲取有關Windows創建功能的信息)。在事件處理程序試圖壓制對話框,查看是否DLL函數是感到高興的對話框沒有顯示
0
的事實。如果您的DLL託管代碼,你可以反編譯,並刪除MessageBox的調用,比如0xA3執行建議。如果你的dll是原生的,你可以使用API hooking。 WinAPI掛鉤示例,您可以找到here。它使用C++,但可以輕鬆轉換爲C#。
相關問題
- 1. 是否可以阻止MDB在Liberty Profile中接收消息?
- 2. 自定義消息框阻止
- 3. 是否可以阻止來自內核空間的任務?
- 4. 顯示阻止消息框
- 5. MPI實現:MPI_Recv是否可以接收來自多個MPI_Send的消息?
- 6. 通過在WinForm中顯示UI中的消息框(來自backgroundworker)來阻止Workerthread
- 7. 是否可以防止DLL被修改?
- 8. 是否可以阻止Redis pubsub?
- 9. 是否可以阻止git pull/fetches?
- 10. 是否可以阻止傳出短信?
- 11. 消息框阻止mouseLeftButtonUp事件
- 12. Android上是否有攔截來電/短信以阻止/取消阻止的方法?
- 13. 在RabbitMQ中阻止來自接收消息的隊列
- 14. 詢問通知權限時是否可以有自定義對話框消息?
- 15. C#DLL消息框
- 16. 是否有Powershell接口來讀取來自MQ的消息?
- 17. 是否有可能阻止$ evalAsync陸續$消化?
- 18. 我是否可以阻止來電打開屏幕?
- 19. 可以禁止gdb的「不是來自終端的輸入」消息?
- 20. iOS - 我可以阻止來自應用程序的任何聯繫人的來電和消息嗎?
- 21. 是否可以在發送消息時取消消息?
- 22. 是否有可能以顯示對JavaScript的PHP的消息被禁止?
- 23. 未來可以使用阻塞的actor消息嗎?
- 24. Firebase是否可以接受SOAP消息
- 25. 是否可以編碼WebSocket消息?
- 26. 是否可以確定是否從SecureStream讀取將被阻止?
- 27. 顯示消息時是否阻止行跳轉?
- 28. 我可以阻止IVideoWindow :: put_Visible發佈消息嗎?
- 29. 阻止用戶訪問消息或完全阻止傳入/傳出的消息
- 30. 是否有可能以編程方式阻止Windows關閉?
它是一個授權對話框嗎? –