What is a reliable way to get a DLL to load when Windows Explorer loads?

冷暖自知 提交于 2019-12-24 02:13:57

问题


I am researching the development of an add-on for Windows Explorer that will add some enhancements to the WebDAV therein, and to that end I'm looking for a good, reliable way to force a DLL to be loaded with Windows Explorer in XP/Vista/Win7 32- and 64-bit OSes.

I seem to recall that a BHO would be loaded by Windows Explorer in the same way that it is in IE, but my initial tests of this are negative on Vista 64. It's highly possible I'm just doing something wrong there and will look into that some more.

I also looked at Shell Extensions, but as far as I can tell those are only loaded if certain actions are taken. I could also be wrong about this.

So, I'd love some suggestions for a good way to make this happen :)

I just need to have the DLL loaded whenever Windows Explorer is loaded.

Update: Right after I posted this question I discovered that my BHO registration had the NoExplorer option set in the registry, which I suppose would explain why it wasn't working. After removing that, it looks like it's going to work. I'm still open to learning if there are any other ways to accomplish the same thing, though.


回答1:


I'd take a look at the TortoiseSVN project. Specifically some of their hints for debugging Explorer shell extensions. See http://tortoisesvn.tigris.org/svn/tortoisesvn/trunk/src/Debug-Hints.txt

Their list of registry entries is about 300 lines, so I won't copy them here. You can view them at: http://tortoisesvn.tigris.org/svn/tortoisesvn/trunk/src/TortoiseShell/register.registry (user: guest, password "").



来源:https://stackoverflow.com/questions/1718670/what-is-a-reliable-way-to-get-a-dll-to-load-when-windows-explorer-loads

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!