我不想关联扩展程序但是文件夹。所以,当我点击桌面来告诉操作系统使用我的应用程序,而不是资源管理器。如何将目录与我的应用程序相关联
我试过用我的程序替换HKEY_CLASSES_ROOT \ Folder \ shell \ open \ command explorer.exe,但它不能正常工作,因此我用我的应用程序打开控制面板和其他东西,这不是我的想。
谢谢!
我不想关联扩展程序但是文件夹。所以,当我点击桌面来告诉操作系统使用我的应用程序,而不是资源管理器。如何将目录与我的应用程序相关联
我试过用我的程序替换HKEY_CLASSES_ROOT \ Folder \ shell \ open \ command explorer.exe,但它不能正常工作,因此我用我的应用程序打开控制面板和其他东西,这不是我的想。
谢谢!
您想要做的事情可以通过实施自定义IShellFolder来实现。 http://msdn.microsoft.com/en-us/library/windows/desktop/cc144093(v=vs.85).aspx有详细信息。最起码,你必须实现
这是例如谷歌驱动使用什么
我来到这个解决方案,但它是一个相当复杂的实现,因为我需要有DLL( COM),这将启动我的主要EXE,处理这些电话等。 我希望有一些更简单的解决方案。 要直接调用我的exe文件。 – 2011-12-20 17:30:10
@IvanMark这是我所知的唯一途径 – 2011-12-20 18:09:50
请记住,您将需要32位和64位外壳扩展,因此如果您打算使用Delphi,则需要XE2。 – 2011-12-20 19:15:26
Folder
进程id表示任何文件夹,包括非文件系统文件夹。正确的ProgID为您的案件是Directory
。
我只是猜测,但我认为,答案可能是“不这样做” – Hybrid 2011-12-20 17:16:19