标签: ofnhookproc

c#自定义保存对话框上的控件 - 如何禁用父文件夹按钮?

我在这里的示例项目工作:http://www.codeproject.com/Articles/8086/Extending-the-save-file-dialog-class-in-NET

我已经将地址/位置栏隐藏在顶部并进行了其他修改,但我不能在我的生活中设法禁用允许您转到父文件夹的按钮.Ist在ToolbarWindow32类中就是问题所在.这就是我现在所拥有的,但它不起作用:

int parentFolderWindow = GetDlgItem(parent, 0x440);

//Doesn't work
//ShowWindow((IntPtr)parentFolderWindow, SW_HIDE);

//40961 gathered from Spy++ watching messages when clicking on the control
// doesn't work
//SendMessage(parentFolderWindow, TB_ENABLEBUTTON, 40961, 0);

// doesn't work
//SendMessage(parentFolderWindow, TB_SETSTATE, 40961, 0);

//Comes back as '{static}', am I working with the wrong control maybe?
GetClassName((IntPtr)parentFolderWindow, lpClassName, (int)nLength);
Run Code Online (Sandbox Code Playgroud)

或者,如果他们确实使用父文件夹按钮并且去了我不想要的地方,我可以查看他们登陆的新目录,有没有办法可以强制导航返回?

截图

编辑:添加截图

c# windows-messages savefiledialog ofnhookproc

7
推荐指数
2
解决办法
1654
查看次数

OFN_ENABLEHOOK修改GetOpenFileName()的外观

为什么在GetOpenFileName()中添加一个钩子过程(使用OFN_ENABLEHOOKOFN_EXPLORER标志)会导致在Windows 7中显示不同的对话框,如果钩子过程只返回FALSE而没有做任何事情?


更新:

显然用钩子看Vista/Windows 7看起来是不可能的......有人可以确认或反驳这个吗?

winapi getopenfilename ofnhookproc

2
推荐指数
1
解决办法
2461
查看次数