Lua - 如何将字符串写入编辑器或浏览器窗口

Posted

技术标签:

【中文标题】Lua - 如何将字符串写入编辑器或浏览器窗口【英文标题】:Lua - how to write string to editor or browser window 【发布时间】:2012-08-30 15:55:15 【问题描述】:

我有一个使用 wxLua 用 Lua 编写的应用程序。在此应用程序运行时,我希望能够将(大)字符串发送到外部程序,以便用户可以查看字符串、搜索字符串等。

这个外部程序可以是notepad、notepad++等,甚至是浏览器窗口,只要用户可以查看和搜索文本即可。

我可以使用打开编辑器

local handle = io.popen("notepad", "w") -- 例如

然后

句柄:写(myString)

在编辑器中不显示任何内容。如果我已经运行notepad++,它甚至不会打开一个新窗口。

我可以使用

启动浏览器

wx.wxLaunchDefaultBrowser ("http://***.com")

但我不知道如何将 (100-200kb) 字符串传递到浏览器窗口。

非常感谢任何帮助,谢谢! 跺脚

【问题讨论】:

【参考方案1】:

打印出文本或 html 文件,然后在浏览器中使用wx.wxLaunchDefaultBrowser ("file://path/to/file") 打开它,或者使用os.execute 以与参数相同的文件运行外部编辑器。

【讨论】:

谢谢!我试图避免写入文件,但这就是我最终要做的......【参考方案2】:

查看 Oleg 的帖子以获得最佳解决方案,IMO。

另一种解决方案是将您的文本放在剪贴板上,以便用户可以将其粘贴到他们喜欢的任何位置。

至于将文本注入到已经打开的应用程序中,这是非常重要的,并且超出了您可以使用 wxLua 执行的范围。您需要使用 COM 接口或使用 Win32 API 调用或同样繁琐且通常特定于应用程序的方式遍历应用程序的控制结构。

【讨论】:

以上是关于Lua - 如何将字符串写入编辑器或浏览器窗口的主要内容,如果未能解决你的问题,请参考以下文章

如何在lua中设置文件写入函数调用的长度?

如何在javascript中检测浏览器选项卡是不是关闭或浏览器窗口

如何解决win10 edge浏览器下载出现乱码

markdown 将任何浏览器窗口转换为快速编辑记事本

ie8浏览器打开网页自动弹出新窗口问题如何解决、

如何在Js脚本中,默认打开一个全屏的窗口,