我的最终目标是编写一个实用程序,让我可以在任何对话框中快速设置文件夹,从预设的"收藏夹"列表中进行选择.由于我只是一个业余爱好者,而不是专业人士,我更喜欢使用.NET,因为这是我最熟悉的.我确实意识到这些东西可能需要的东西比我在C#中可以做的更多.
我已经看到一些应用程序能够通过向工具栏添加按钮(例如:对话框助手)或者在标题栏旁边放置额外的按钮来扩展公共对话框(特别是对于另存为...和文件打开).最小化,最大化和/或关闭按钮.要么是不错的选择虽然我没有最模糊的想法从哪里开始.
我尝试过的一种方法是将文件夹名称从我写入的应用程序"拖动"到对话框上的文件名文本框,使用我从Corneliu Tusnea的Hawkeye运行时对象编辑器中拾取的鼠标钩子技术突出显示它,然后预先添加通过使用WM_SETTEXT对SendMessage进行pinvoking来获取路径名.它(有点)有效,但感觉有点笨拙.
任何关于技术或实施的建议都将非常感激.或者,如果现有的实用程序已经执行此操作,请告诉我们!
更新:说完所有内容后,我想我可能会使用现有的实用工具.不过,我想知道是否有是一种以编程方式做到这一点.
听起来像是AutoHotkey给我的工作.
我是一个"专业人士"(至少我得到了程序的报酬),但我首先要看看使用AutoHotkeys的许多经过良好测试的功能来访问窗口,而不是深入研究C#/ .NET和最喜欢通过PInvoke的WinAPI.
AutoHotkey甚至提供一些基本的用户界面控件,并且是免费的.
这是一个AutoHotkey脚本,与您要求的非常相似.