我想弹出我自己的对话框(将文件保存在服务器上而不询问目标路径位置)而不是 adobe 的另存为对话框

Posted

技术标签:

【中文标题】我想弹出我自己的对话框(将文件保存在服务器上而不询问目标路径位置)而不是 adobe 的另存为对话框【英文标题】:i want to pop up my own dialog(which save file on server without asking the target path location) instead of adobe's save as dialog 【发布时间】:2009-04-29 05:04:52 【问题描述】:

我们可以覆盖 Adob​​e Photoshop 的Save As 对话框吗?我们如何覆盖?你的方法是什么?

实际上我想弹出我自己的对话框(将文件保存在服务器上而不询问目标路径位置)而不是 Adob​​e 的 Save As 对话框。

【问题讨论】:

【参考方案1】:

不,你不能那样做。你为什么需要这个?如果您使用的是 SDK,那么您应该能够使用“Action”对象将文件保存到您想要的任何位置。

【讨论】:

【参考方案2】:

除非有用于 Photoshop 的插件 API 允许这样做,否则您必须在 Photoshop 进程中注入一些代码并挂钩另存为功能。并不是一件容易的事。

【讨论】:

【参考方案3】:

正如@Nick Whaley 建议的那样,您可以挂钩该过程,但您不必疯狂地寻找特定的窗口。你根本不必这样做。您可以挂钩 CreateFile API,而不是使用 Windows 路由,在某处创建一个自定义操作,该操作会尝试将文件保存在预定义(可能不存在)的位置。在您的钩子函数中,使用该文件的特殊路径/名称查找 CreateFile 调用,并显示您自己的保存对话框。调用所需路径的真实打开文件,并将句柄返回给 PS。

您将需要: - MS Detours Express - 大约2小时的时间

PS。为自定义 PS 动作分配一个热键,并使用它来保存文件。

【讨论】:

【参考方案4】:

@Nick Whaley 是对的。我不认为@UselessAdmin 的方式有效,因为要求弹出另一个“另存为”对话框,只有在用户选择一个文件夹并在文件夹对话框中单击“确定”后才会调用 CreateFile,显然挂钩 CreateFile 为时已晚。

【讨论】:

以上是关于我想弹出我自己的对话框(将文件保存在服务器上而不询问目标路径位置)而不是 adobe 的另存为对话框的主要内容,如果未能解决你的问题,请参考以下文章

WPF C# 输入框

在没有提示的情况下保存当前打开的文件

PHP将文件保存到用户计算机

Django:如何将每个图形放在页面上而不保存它

使用 jquery 对话框在 jstree 中创建一个新节点

注销时重新启动expo应用程序而不弹出