- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
粘贴一个使用 gtk2 gem 启动系统托盘图标的小示例。
#!/usr/bin/env ruby
# encoding: UTF-8
require 'gtk2'
si=Gtk::StatusIcon.new
si.stock=Gtk::Stock::DIALOG_INFO
si.tooltip='StatusIcon'
si.signal_connect('activate'){|icon| icon.blinking=!(icon.blinking?)}
info=Gtk::ImageMenuItem.new(Gtk::Stock::INFO)
info.signal_connect('activate'){p "Embedded: #{si.embedded?}"; p "Visible: #{si.visible?}"; p "Blinking: #{si.blinking?}"}
quit=Gtk::ImageMenuItem.new(Gtk::Stock::QUIT)
quit.signal_connect('activate'){Gtk.main_quit}
menu=Gtk::Menu.new
menu.append(info)
menu.append(Gtk::SeparatorMenuItem.new)
menu.append(quit)
menu.show_all
si.signal_connect('popup-menu'){|tray, button, time| menu.popup(nil, nil, button, time)}
si.signal_connect('scroll-event'){|icon, event|
modifier=event.state#A GdkModifierType indicating the state of modifier keys and mouse buttons
##Handle only control and shift key
ctrl_shift=(Gdk::Window::CONTROL_MASK|Gdk::Window::SHIFT_MASK)
mod=modifier&ctrl_shift
case mod
when 0
print "(None)"
when Gdk::Window::CONTROL_MASK
print "Control+"
when Gdk::Window::SHIFT_MASK
print "Shift+"
when (Gdk::Window::CONTROL_MASK|Gdk::Window::SHIFT_MASK)
print "Control+Shift+"
end
##Check for direction
case event.direction
when Gdk::EventScroll::UP
print "up\n"
when Gdk::EventScroll::DOWN
print "down\n"
end
}
exit if defined?(Ocra)
Gtk.main
如果我将它作为 ruby 脚本运行,即 ruby my_program.rb
但我想分发它所以我选择了OCRA它为我构建了一个 exe 文件,以便用户可以在没有安装 ruby 或其软件包的情况下运行它。
所以我运行 ocra my_program.rb --windows
,它给了我一个很好的 exe 文件,叫做 my_program.exe
。
问题: 当我启动 my_program.exe
时,加载程序需要 25 到 30 秒。
系统托盘图标需要 1 秒,打包为 exe 文件时需要 30 倍以上才能启动。
是否有任何可能的方法来减少此加载时间。非常感谢你提前。
编辑: 在提醒之后,我将 ocra exe 创建更改为 ocra my_program.rb --windows --no-lzma
。这个解决方案为我节省了 10 秒,现在程序加载大约需要 18-20 秒。
我可以优化它以缩短加载时间吗?请帮忙。
最佳答案
关于ruby - 减少基于 gtk2 和 ocra 构建的 ruby 应用程序的加载时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32328636/
SCENARIO 我已经安装了 Ruby 2.1.5 (x64)包然后我安装了Ocra gem 成功: gem install ocra Fetching: ocra-1.3.3.gem (100%)
我只想知道以下是否可行: 我创建 ruby 可执行文件的目标是能够为我的 ruby 脚本添加一些可移植性。该脚本所做的是收集一些放在某个目录下的.txt文件,然后对它们进行处理并将.txt结果
我创建了一个简单的 ruby 脚本 require 'gtk3' def destroy( widget ) Gtk.main_quit end Gtk.init window = Gtk:
我想将我的 Ruby 应用程序部署为 .exe 文件,供 Windows 用户使用。该应用程序将 Tk 用于 GUI 部分。 由于我无法成功使用 rubyscript2exe,所以我选择了 ocr
我正在尝试打包一个 rails (3.2) 应用程序以在 Windows 机器上运行,我正在使用 OCRA 将应用程序“编译”为一个 exe。在反复敲打我的 table 后,我设法让应用程序编译并运行
我创建了一个 gem,它公开了一个在 Linux 下运行的可执行文件。在 Windows 中,如果我导航到安装 gem 的目录,我可以从命令行运行它,但我必须在调用 ruby 时自己指定 -Ilib。
背景: Ruby 脚本使用 OCRA 1.2 打包成可执行文件。 脚本结构如下: begin ensure end 问题: 当我在 Windows 上运行可执行文件时,它会打开一个控制台窗
正在像这样使用 ocra 构建 .exe ocra testing.rb -- sample 这里我将''sample''作为参数传递给下面的代码并构建一个exe require "selenium-
我正在尝试使用 Ocra 创建可移植版本的 Ruby 脚本。该脚本依赖于 rmagick,它还需要安装 ImageMagick。 生成的可执行文件在我的计算机上运行,但在其他所有计算机上都失败,除
我正在使用以下命令让 OCRA 使用 Inno Setup 构建安装程序: ocra bin/rails . --output fvc.exe --add-all-c
我制作了一个非常简单的程序,用于添加和组织书籍作者/书名的数组。我在顶部只有一个要求,这是我创建的一个模块。代码都是标准的 ruby,没有 gem 或任何实现。 require_relative
我正在尝试构建一个 .exe 来在 Windows 上执行我的脚本,而无需安装任何 ruby。我正在为此使用 Ocra,但我有一个堆栈跟踪。 另请注意,有两个文件运行整个 sc,我目前使用的是 R
粘贴一个使用 gtk2 gem 启动系统托盘图标的小示例。 #!/usr/bin/env ruby # encoding: UTF-8 require 'gtk2' si=Gtk::StatusIco
我开发了一个非常简单的 Rails 应用程序(它根据数据库中的数据绘制了一些图表)。 现在,我的客户想要在线和离线使用此 Rails 应用程序。 所以我使用 OCRA 从中创建了一个 .exe 文件(
Ocra 无法处理需要“tk”的应用程序 require 'tk' puts 'nope' 用奥克拉 http://github.com/larsch/ocra不起作用(如链接中的一个问题所述)问题:
在此之后: ruby executable won't start , 现在我遇到了以下简单脚本的另一个问题: require 'tk' require 'tkextlib/tile' root =
我正在尝试使用 OCRA 在 Windows 计算机上将 Ruby 程序打包为 .exe。当我试图用它为我的程序创建可执行文件时,它在运行时抛出了一个奇怪的错误。我用一个简单的 Hello World
我有许多用 Ruby 编写的 selenium webdriver 脚本,我使用了 rubyscript2exe 和 ocra gems 试图以“捆绑”可执行文件结束,但无济于事。问题是,我的脚本
我是一名优秀的程序员,十分优秀!