Matthew Webb wrote: > Bitmap file does not exist: > C:\Users\Matthew\eee\eee.controls.exe.4\app/icons/list.xpm > (ArgumentError) > > Do you have any ideas how I could solve this problem? The problem is that this script depends on an external file, which rubyscript2exe doesn't include in the .exe (and therefore not in the eee temp folder). You'll need to employ a little cleverness to include the resource with the executable. This page talks about including library files for another GUI framework in the .exe, and should be adaptable for including resource files: http://ruby-gnome2.sourceforge.jp/hiki.cgi?tips_rubyscript2exe > > Those lines copy all the files & folders inside the > "run_dep" folder to the folder where rubyscript2exe will > extract your application. The begin/rescue is needed > because that fails when you run your application the first > time in rubyscript2exe, to create the .exe. You'll of course need to modify the path referenced in the script such that it points to the temp location that the resource gets decompressed to. BTW, overall wxRuby works *beautifully* with rubyscript2exe, which is one of my favorite features about it. -Jay McGavren
on 28.03.2008 20:28
on 29.03.2008 02:19
Jay McGavren wrote: > rubyscript2exe doesn't include in the .exe (and therefore not in the >> require 'rubyscript2exe' >> Those lines copy all the files & folders inside the > BTW, overall wxRuby works *beautifully* with rubyscript2exe, which is > Thanks for the advice, I placed the following code at the start of the program... require 'rubyscript2exe' require 'fileutils' require 'pathname' p0 = Pathname.new(RUBYSCRIPT2EXE.appdir) root_runtime = p0.parent.to_s begin FileUtils.cp_r('run_dep/.', root_runtime) rescue end I changed this line from... icon_file = File.join( File.dirname(__FILE__), "mondrian.png") to... icon_file = File.join( File.dirname(RUBYSCRIPT2EXE.appdir), "mondrian.png") Then I created a folder called 'run_dep' where the script was located & I placed the icons in that folder. The script was "compiled" with 'rubyscript2exe minimal.rb --rubyscript2exe-rubyw' When I executed it the icons loaded & the program worked.