我正在创建一个小的ruby脚本来调整图像大小并将它们保存在指定的目录中。我希望应用程序尽可能透明。
是否可以在所有平台上允许文件放入我的Ruby脚本?例如,用户将文件拖到脚本上,然后将文件路径作为参数并相应地调整图像大小 - 没有GUI,没有控制台等。
答案 0 :(得分:5)
阻力和行为的行为drop取决于操作系统(在Window Manager的Linux中),所以没有。
在Windows中,您可以免费获得所需的行为。只需在桌面上放一个.rb文件,拖到它上面的文件就是你脚本的参数。
与Windows集成的另一种简单方法是使用要在Windows资源管理器的上下文菜单中显示的命令写入注册表项HKLM \ Software \ Classes * .jpg \ myhandler \ command(右键单击jpg文件将弹出一个菜单,它将在菜单中显示您的脚本。)
我不使用drag&在Linux中完全放弃,所以我不知道如何在那里做到这一点。我希望它有更多的安全问题(权限必须正确,...)但你可以通过创建.desktop文件到达那里,参见http://standards.freedesktop.org/desktop-entry-spec/latest/获取完整标准,或者阅读〜/ Desktop中的一些示例/*.desktop。
答案 1 :(得分:2)
平台依赖,所以这里仅适用于windowsusers和reference。 将以下内容保存到.reg文件并通过双重加载来加载它,在Windows Vista和7上进行测试
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\rbfile\ShellEx\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"
[HKEY_CLASSES_ROOT\rbwfile\ShellEx\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"
[HKEY_CLASSES_ROOT\RubyFile\ShellEx\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"
[HKEY_CLASSES_ROOT\RubyWFile\ShellEx\DropHandler]
@="{86C86720-42A0-1069-A2E8-08002B30309D}"
答案 2 :(得分:1)
这种行为肯定是特定于平台的,因为在这种情况下操作系统实现了拖放操作,而不是ruby。
回答你的问题:不,这是不可能的。
答案 3 :(得分:1)