我有我的自定義文件的圖標處理程序。如何限制圖標處理程序的功能,以便它可以被explorer.exe線程調用?如何限制圖標處理程序被特定進程訪問?
回答
那麼,你可以使用GetModuleFileName(NULL)
找出你的處理程序加載到哪個EXE。您可以在COM方法中執行此操作(如果您認爲進程錯誤,則返回E_FAIL
),或者在DllMain
中執行此操作,以使處理程序無法加載。
但是,目前尚不清楚爲什麼你會這麼做。例如,圖標處理程序由任何應用程序中的標準「打開文件」對話框使用;你不想讓你的偶像出現在那裏嗎?
如果你認爲這是一種安全措施,那麼它將不會很好地工作。確定的攻擊者會編寫自己的外殼擴展,加載到資源管理器中,然後從那裏訪問您的處理程序。
謝謝!有用。我也在這裏找到了同樣的建議http://www.codeproject.com/Articles/8027/Restricting-DLL-loading。我想這樣做是因爲我可以管理從只來自explorer.exe的線程讀取/寫入自定義文件。來自其他進程(如標準「打開文件」對話框)的線程正在創建死鎖。是的,我將無法在這些對話框中看到正確的圖標。 –
我認爲這可能會更有效地糾正死鎖和其他防止在Explorer外使用的缺陷。 – Medinoc
特別是因爲explorer.exe也可能是多個進程。 –
- 1. 如何限制RethinkDB訪問特定應用程序?
- 2. 如何啓動具有特定訪問權限的子進程
- 3. 如何在Socket.io處理程序中訪問目標套接字
- 4. Android/DalvikVM進程處理程序如何?
- 5. 如何防止特定目標的點擊處理程序
- 6. 如何訪問視圖處理程序中的當前配置?
- 7. 如何訪問在config中定義的處理程序?
- 8. 如何限制從特定地理區域訪問網站
- 9. 如何選擇特定的應用程序來處理意圖
- 10. c#如果該文件被其他進程處理,如何訪問文件?
- 11. C程序 - 文件處理限制
- 12. 如何訪問谷歌地圖事件處理程序中的標記?
- 13. Python多處理:如何限制等待進程的數量?
- 14. 限制訪問bluemix應用程序
- 15. 限制訪問擅長用C#程序
- 16. 限制對.NET程序集的訪問?
- 17. 限制用戶訪問的程序
- 18. 限制應用程序訪問網絡
- 19. 限制訪問heroku應用程序
- 20. 限制應用程序的訪問
- 21. 獲取從特定的進程/程序的截圖並處理它
- 22. 從ItemClick處理程序訪問ListViewItem.Tag
- 23. Spring Security訪問拒絕處理程序
- 24. 在asp.net處理程序訪問會話
- 25. 如何限制對方法的訪問,只允許特定程序集訪問它們?
- 26. VB.net限制訪問範圍內的事件處理程序,或替代
- 27. 火被預訂了特定的事件處理程序
- 28. google_oauth2_client如何處理「訪問被拒絕」
- 29. 訪問特定工作進程,其具有多個進程
- 30. 限制訪問到Django管理通過應用程序
你爲什麼要這樣做? –
由於我的拱缺陷。我無法管理從explorer.exe以外的進程讀取/寫入我的文件 –