1 名前:デフォルトの名無しさん [2006/08/08(火) 19:08:09 ] 他プラットホームとの互換性なんかいらん! 漏れはWindowsの上だけで快適に使いたいんだ! Windows独自の技術的な話題や、 Windows版だけのrubyの問題について語るスレ。 ■ruby www.ruby-lang.org/ja/ ■ruby関連スレ ・Rubyについて Part 22 (本スレ?) pc8.2ch.net/test/read.cgi/tech/1147897915/ ・Ruby初心者スレッドPart7 pc8.2ch.net/test/read.cgi/tech/1154077799/l50
348 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 20:59:03 ] そんなことよりモジュール関数にするとか
349 名前:デフォルトの名無しさん mailto:sage [2007/12/19(水) 01:37:03 ] 関数ポインタをRuby上で表現できるようなクラスを書くしかないと思うけど。 でも結局DLの車輪の再発明のような気がする。
350 名前:デフォルトの名無しさん mailto:sage [2007/12/19(水) 07:50:10 ] >>348 >>349 つまり直関数ポインタそのものを渡してもRuby側で実行できなくて、 たとえば拡張ライブラリを以下のようにするしかないってことですか。 //これをRuby側で実行したい。 hoge (*pf)(hage x); //これをエクスポートしてRuby側で使う。 hoge f(hage x) { if(pf)return pf(x); else return moge; }
351 名前:デフォルトの名無しさん mailto:sage [2007/12/19(水) 08:08:29 ] 拡張ライブラリの作り方くらい読めよ
352 名前:デフォルトの名無しさん mailto:sage [2007/12/19(水) 13:37:13 ] >>350 そもそも、どうして関数ポインタをRuby上で扱いたいの?
353 名前:デフォルトの名無しさん mailto:sage [2007/12/19(水) 13:40:16 ] 関数ポインタをシェルスクリプトに返しても呼べないが如し
354 名前:350 mailto:sage [2007/12/19(水) 18:16:05 ] レスありがとうございます。 >>351 >>350 のソースはSWIGにかけてからdllを生成するつもりだったんですが、その点を書くのを忘れました。ごめんなさい。 >>352 どうして関数ポインタをRuby上で扱いたいかというと、既存のC++のクラスに関数ポインタのメンバがあって、 それをRubyでも使いたかったんです。 >>353 関数ポインタは使えないのですね。 とりあえずC++のソースの追加は必要ですが、>>350 のようにやればRubyでも使えるようになると思っているので それでやって見ます。もっと楽な方法があったら教えてください。
355 名前:デフォルトの名無しさん mailto:sage [2007/12/19(水) 20:31:50 ] Windowsだったらsuikyoってゆーローマ字変換ライブラリは使えませんか??
356 名前:350 mailto:sage [2007/12/25(火) 20:31:37 ] すいません。350です。 また教えてください。 とりあえず簡単な拡張ライブラリを作ったのですが、なぜかloadできません。 mytest.soというファイルをカレントディレクトリにおいて 以下のようなスクリプトを流すと以下のようになります。 ----スクリプト----- f=open('./mytest.so') p f require './mytest' ----結果---------- #<File:./mytest.so> ./mytest.so: No such file or directory - ./mytest.so (LoadError) from test.rb:3 ------------------- openではファイルが開けるのにrequireでは見つからないといわれてしまいます。 なにが悪いのでしょうか。 環境はwinXP+cygwinです。 rubyのバージョンは1.8.4 (2005-12-24) [i386-cygwin]です。
357 名前:デフォルトの名無しさん [2007/12/26(水) 04:18:49 ] $LIB_PATH には、./は入るんじゃなかったけ? $SAFEが1以上なら、入らんみたいだが・・・
358 名前:デフォルトの名無しさん [2007/12/26(水) 04:19:21 ] とりあえず、プロンプトで、これどうなります? $ ruby -e 'puts $:'
359 名前:350 mailto:sage [2007/12/26(水) 07:25:56 ] >>358 以下のようになりました。 /usr/lib/ruby/site_ruby/1.8 /usr/lib/ruby/site_ruby/1.8/i386-cygwin /usr/lib/ruby/site_ruby /usr/lib/ruby/1.8 /usr/lib/ruby/1.8/i386-cygwin .
360 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 01:06:46 ] ちゃんと、最後に、 ". "が入っているから、 上手くいくはずなんだがな・・・
361 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 05:29:34 ] ファイルが見つからないんじゃなくて、mytest.soをDLLとしてロードできない何らかの理由があるんじゃないかな。 Init_mytestという関数がないとか、mytest.soが依存している他のDLLが動的リンクできないとか。
362 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 09:08:01 ] >>361 ロードできました。ありがとうございます。 原因はずばりInit_mytestがない、でした。 SWIGで生成したmytest_wrap.cxxではInit_MyTestという関数になっていて これをInit_mytestにリネームすることで動くようになりました。 (あと #define SWIG_Init Init_MyTestのところもリネームしました) mytest.iの書き方がまずかったためにこのようなことになったのでしょうか。 mytest.iは以下です。 %module MyTest %{ #include "test.h" %} %include "test.h" swigへの引数は-c++ -ruby mytest.iです。
363 名前:350=362 mailto:sage [2007/12/27(木) 10:19:06 ] とりあえず %module MyTest のところを %module mytest にすると上手くいくようです。 モジュール名は大文字で始めなければいけないという先入観がありました。
364 名前:デフォルトの名無しさん [2007/12/27(木) 22:15:16 ] ttp://arton.no-ip.info/diary/20071227.html#p03 Ruby-1.9.0.msi ASRやExerbはもちろん、Visualu Rubyなども入っていない素のMSVCRT(VC++6SP5)版のRuby 1.9.0になります。 以下が含まれます。サイズは15MB近くとでかいので注意。 ・1.9.0 リファレンスマニュアル (chm版) ・include、lib、riなど1.9.0のnmake install対象すべて。rbconfig.rbは修正が必要かも ・Vista対応 ・openssl(0.9.8g) ・readline ・zlib ・iconv(1.9.1) ・tcltk84用tcltklib.so ・この忙しいのにしっかりと入ったgoruby 再配布もご自由にどうぞ。 なお、アンインストールには信じられないくらいの時間がかかります。
365 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 22:23:10 ] ゴルビーってなんやねん
366 名前:デフォルトの名無しさん mailto:sage [2007/12/28(金) 04:49:31 ] 俺は全然まとはずれな、答えしてたのね orz DLLの中美香
367 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 01:40:29 ] artonさんとこのインスコして うきうきわくわく ruby -e "t=Time.now; 100000.times{}; puts Time.now - t" ってやったら 1.8の方が速かった しょぼーん(´・ω・`)
368 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 03:51:52 ] どういうベンチなんだそれは・・・
369 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 14:07:39 ] require 'benchmark' puts `ruby -v` puts Benchmark::CAPTION puts Benchmark.measure(RUBY_VERSION) { "a"*100_000_000 } ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-mswin32] user system total real 1.828000 0.031000 1.859000 ( 1.875000) ruby 1.9.0 (2007-12-25 revision 14709) [i386-mswin32] user system total real 2.484000 0.015000 2.499000 ( 2.532000) ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mingw32] user system total real 0.813000 0.015000 0.828000 ( 0.828000) ruby 1.9.0 (2007-12-30 revision 0) [i386-mingw32] user system total real 0.953000 0.016000 0.969000 ( 0.969000)
370 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 14:10:17 ] まちごうた require 'benchmark' puts `ruby -v` puts Benchmark::CAPTION puts Benchmark.measure { "a"*100_000_000 }
371 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 07:38:09 ] >>368 は、詳細をだせ、と言っているのではなく、 たぶん、それはベンチになっていないといいたいのでは?
372 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 12:21:56 ] 1.9のほうが遅い=ベンチになってない(Ruby脳)
373 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 18:05:45 ] ActiveTcl8.5も出てたのか
374 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 20:16:04 ] 何十個かの言語のベンチを比較するページがどっかにあったけど、 あれ試せばいいんじゃね?
375 名前:デフォルトの名無しさん mailto:sage [2008/01/03(木) 09:38:43 ] RubyオセロをCOM同士で戦わせるベンチみたいなのはねーの?
376 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 19:38:07 ] Rubyスクリプトから、ファイルを関連付けられてるアプリで開くにはどうすりゃよいですか?
377 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 19:56:08 ] 変数fileにファイル名が入ってるとして、 system("start #{file}")
378 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 19:57:45 ] Win32APIのShellExecuteを呼ぶ
379 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 20:24:41 ] >>377-378 thx ShellExecuteで解決しました ただ、反応しないファイル(assoc .extで関連付けが確認できないもの?)があるのですが それらの対策ってできます?
380 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 20:32:13 ] 戻り値が32未満ならエラーだからさらにその意味を調べて分岐すればいい。 たぶんこれ SE_ERR_ASSOCINCOMPLETE = 27; 詳細はググレカス
381 名前:デフォルトの名無しさん mailto:sage [2008/01/09(水) 21:16:19 ] zipを渡して戻り値SE_ERR_NOASSOC 関連付け設定しなおして再起動してもうまくいかず 試しに system("cmd /c \"#{zipfile}\"") だったらうまくいったり 他のPCだったら無問題だったので、自分の環境がおかしいということで めんどくさいので解決ということにしました 指南どうもありがとう
382 名前:デフォルトの名無しさん mailto:sage [2008/01/11(金) 15:55:04 ] /\s/ =~ zipfile
383 名前:デフォルトの名無しさん mailto:sage [2008/01/13(日) 15:37:53 ] RubyでUSBカメラ2台以上のリアルタイム映像を取り込みたいのですが、 ふさわしいライブラリは何ですか? 用途はwindowsでの3次元画像処理です。 ここからは有ればいいなという程度の希望です。 今のところ、機能性と安定性の両方を考えると、Pure Rubyよりもラッパー系が良いかと考えています。 ラップされた方のライブラリがカメラに対応していて、なおかつラッパーが完成しているようなものが一番いいです。
384 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 17:40:17 ] ActiveScriptRuby 1.8.5をインストールした環境でVisualuRubyのタイマーを 使いたいのですが、うまく動いてくれません。ソースは下記の通りです。 timeralive?ではタイマーが存在している旨の表示がコンソールに出力されますが、 メソッド"timer1_timer"が呼び出されません。 どうすればちゃんとタイマーが使えるようになるでしょうか? 御指南をよろしくお願いします。 require 'vr/vruby' require 'vr/vrcontrol' require 'vr/vrtimer' include VRTimerFeasible class TimerTest < VRForm def construct self.caption = 'Timer Test' self.move(140,124,303,173) addControl(VRStatic,'static1',"Startボタンを押して!",40,80,224,40,0x800201) addControl(VRButton,'button1',"Start",40,8,224,48) end def button1_clicked addTimer(1000, "timer1") puts "TimerAlive => " + timeralive?("timer1").to_s end def timer1_timer puts "タイマー来たよ" @static1.caption = "タイマー来たよ!" end end VRLocalScreen.start TimerTest
385 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 18:10:03 ] include VRTimerFeasible をclass定義内に
386 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 19:55:36 ] > 用途はwindowsでの3次元画像処理です。 あきらかに、Rubyの用途じゃない
387 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 21:51:55 ] >>385 できました。どうもありがとう!
388 名前:384 mailto:sage [2008/01/14(月) 23:41:34 ] すみませんが、またまたどなたかに御指南をお願いします。 下記のコードで、timer1_timerのsleep時間中に、Start/Resetボタン(button1)を押してもすぐにはボタンが反応しません。 ボタンを押し続けていると、数秒後にようやくボタンを押し込めるようになるのですが… これを任意のタイミングでボタンを即座に押し込めるようにならないかと考えています。 できれば具体的なコードで教えていただけるとありがたいです。よろしくお願いします。 require 'vr/vruby' require 'vr/vrcontrol' require 'vr/vrtimer' class TimerTest < VRForm include VRTimerFeasible def construct self.caption = 'Timer Test' self.move(140,124,303,173) addControl(VRStatic,'static1',"Start/Resetボタンを押して!",40,80,224,40,0x800201) addControl(VRButton,'button1',"Start/Reset",40,8,224,48) end def button1_clicked deleteTimer("timer1") if timeralive?("timer1") @i = 0; addTimer(1000, "timer1") end def timer1_timer @i += 1; @static1.caption = "#{@i}回タイマー来たよ!" sleep(5) #タイマー中に行う処理のダミー end end VRLocalScreen.start TimerTest
389 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 01:37:39 ] sleepんとこの処理をスレッドにするとかそういう話?
390 名前:デフォルトの名無しさん [2008/01/15(火) 10:46:47 ] WinグラマならPowerShell使おうぜ 6ヶ月以内にアクセスされなかったファイルを削除するサンプル Get-ChildItem | Where-Object {$_.LastWriteTime -lt (Get-Date).AddMonths(-6)} | ForEach-Object {$_.Delete()} もうRubyいらないね\(^o^)/
391 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 11:55:49 ] LastWriteTimeが最終アクセス時間なのか?
392 名前:デフォルトの名無しさん mailto:sage [2008/01/15(火) 21:18:26 ] >>390 PowerShellのリファレンスマニュアルどこよ? 文法とか仕様とか標準ライブラリとか。 Rubyのリファレンスマニュアルレベルの物で良いからどこにあるのか教えてくれ。 俺はそれが見付からなくてやめた。
393 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 10:24:08 ] ttp://www.atmarkit.co.jp/fdotnet/special/powershell01/powershell01_01.html ttp://pc11.2ch.net/test/read.cgi/win/1163764836
394 名前:350 mailto:sage [2008/01/16(水) 19:56:40 ] たびたびすいません。350です。 また教えてください。 SWIGでRuby拡張ライブラリを作っています。 関数の引数にポインタを渡してそれ、を介して値を返す場合typemaps.iに定義されているOUTPUTが使えるそうなのですが、 クラスのメンバ関数だと上手くいきません。 クラスのメンバ関数をtypemapにマッチさせるにはどうしたらいいでしょうか。
395 名前:350 mailto:sage [2008/01/16(水) 19:57:06 ] =============C++ヘッダ============ #ifndef MYLIB_H #define MYLIB_H void add(int a,int b,int *result); class AAA { public: void add(int a,int b,int *result); }; #endif ============C++ソース============= #include"mylib.h" void add(int a,int b,int *result) { *result=a+b; } void AAA::add(int a,int b,int *result) { *result=a+b; }
396 名前:350 mailto:sage [2008/01/16(水) 19:57:34 ] ==========インターフェースファイル======= %module mylib %{ #include"mylib.h" %} %include typemaps.i void add(int a,int b,int *OUTPUT); void AAA::add(int a,int b,int *OUTPUT); %include "mylib.h" ===========rubyファイル================= require "mylib" print Mylib::add(1,2),"\n" print Mylib::AAA.new.add(3,4),"\n" ===========実行結果=================== bash-3.1$ ruby test.rb 3 test.rb:4:in `add': wrong # of arguments(2 for 3) (ArgumentError) from test.rb:4
397 名前:350 mailto:sage [2008/01/17(木) 20:45:01 ] 半分くらい自己解決しました。 その方法はヘッダを以下のように書き換えるというもの。 一応これで動くのですが、なるべくならヘッダをいじらずに インターフェースファイルで何とかしたいです。 良い方法があったら御教示お願いします。 #ifndef MYLIB_H #define MYLIB_H void add(int a,int b,int *OUTPUT); class AAA { public: void add(int a,int b,int *OUTPUT); }; #endif
398 名前:デフォルトの名無しさん mailto:sage [2008/01/19(土) 21:52:13 ] ActiveScriptRubyの1.9.0はでないのかな それとも1.9.1待ち?
399 名前:デフォルトの名無しさん [2008/01/21(月) 02:00:32 ] ActiveScriptRubyはヤル気あるのか? 1年以上放置してんじゃねーよ。
400 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 02:03:58 ] 枯れてるんなら余計なことはしなくていいよ
401 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 22:16:55 ] どうして欲しいのか言わないと 伝わらないよ。
402 名前:デフォルトの名無しさん [2008/01/21(月) 22:17:42 ] 1.9.0に対応してほしい。
403 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 22:18:59 ] 迷走してるから無理
404 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 22:49:34 ] vcで作った拡張ライブラリのバイナリ配布って無理?mscr80になっちゃうでしょ 配布されてるやつはmscrt版だし ここら辺はわかってる人同士の話しかないのでエンドユーザーには大変だな
405 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 23:44:45 ] >>404 そういや、この辺まとめてあるページってないのかな? gemとかで配布する、Win32用の拡張ライブラリ(DLL)のランタイム回りどうすればいいのという
406 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 09:47:31 ] >>404 vが抜けてるあたりで君がわかってなさそうだということは伝わった。 >>405 gemで配布するのはどうすればいいんだろうね。 MinGW版向けということでmsvcrtが無難という気はするが。
407 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 19:56:48 ] Ruby初心者です。環境はWindowsXP2とActiveScriptRubyで、 EmEditorから .rbを呼び出して使いたいのです。 開いているテキトスファイルに、.rbでの内容(主に文字列の置換)を適用するのが 主な目的です。Emのヘルプにはサンプルとして、 #language = "RubyScript" Window.document.write( "Hello!" ); と書かれており、これはちゃんと Hello! と書き込まれるのですが、 #language = "RubyScript" puts へのへのもへじ と書くと「Bad file descriptor 」と出てきます。 ActiveScriptRubyを入れれば、 そのまま .rbファイルが読み込めるというわけではないのでしょうか? さっぱりわかりません。 初心者過ぎてどこでおかしくなっているのかすら判らず立ち往生しています。 どうか問題点と解決策を御教示ください。お願いします。
408 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 20:20:36 ] 上の puts へのへのもへじ は、 puts 'へのへのもへじ' の間違いでした。すみません。
409 名前:デフォルトの名無しさん mailto:sage [2008/01/22(火) 21:02:30 ] ActiveScriptRuby も EmEditor も使ってないけど puts の出力先は Window.document ではないって事だろ エディタのテキスト編集したいなら Window.document いじれ
410 名前:デフォルトの名無しさん mailto:sage [2008/01/25(金) 22:22:35 ] ActiveTcl8.5に対応したtcltklib.soはないんかい
411 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 10:19:59 ] vrubyについて聞きたいのですが、 VRForm上に配置した特定のVRButtonのクリックをReturnキーで 行うにはどうすればいいのでしょうか?
412 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 12:39:34 ] VBDefaultButton
413 名前:411 mailto:sage [2008/01/27(日) 22:09:22 ] >>412 すみません、VisualRubyリファレンスで探しても、 vrubyのソース内をgrepしても、 vrubyとの組み合わせでググっても、 VBDefaultButtonは出てきませんでした。 VBicと関係あるのでしょうか? お手数ですが、具体的な使い方を教えていただけないでしょうか?
414 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 02:15:13 ] class VRDefaultButton < VRButton def construct super self.stype |= BS_DEFAULTPUSHBUTTON end
415 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 21:49:17 ] >>414 以下のようなコードを書いてみたんですけど、Returnキーに反応してくれませんでした。 アドバイスがあればよろしくお願いします。 require 'vr/vruby' require 'vr/vrcontrol' class VRDefaultButton < VRButton def construct super self.stype |= BS_DEFAULTPUSHBUTTON end end class Form1 < VRForm def construct self.move(140,124,330,200) addControl(VRStatic,'static1',"ボタンを押して",64,24,176,24,0x201) addControl(VRDefaultButton,'button1',"ボタン",64,80,176,32) end def button1_clicked @static1.caption = "押しました!" end end VRLocalScreen.start Form1
416 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 07:24:38 ] include VRKeyFeasible ちなみに色んな意味でVirualRubyは腐ってるから 本気でGUI検討してるならwxRubyの方がお勧め
417 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 07:20:53 ] 指定したファイルが 隠しファイル属性を持ってるか 調べるにはどうすれば良いですか? ASR使えば出来るのかな…? Ruby標準の機能で出来るならソレが一番良いのですけど
418 名前:デフォルトの名無しさん mailto:sage [2008/02/02(土) 07:39:06 ] Win32Utils の win32/file
419 名前:デフォルトの名無しさん mailto:sage [2008/02/03(日) 22:30:29 ] >418 ああ、組み込み機能では出来なくとも、それでいけるのか。さんくす。
420 名前:デフォルトの名無しさん [2008/02/06(水) 23:10:08 ] 是非ともWin32::APIを標準ライブラリに!
421 名前:デフォルトの名無しさん [2008/02/07(木) 12:13:03 ] 激しくスレ違いかもしれませんが、質問です。 PCゲームを多重起動しようと試みたのですがダメでした。 大抵のゲームはWindowsのアカウントを2つ作成し、別々のアカウントで起動すれば問題ありません。 現在、Vistaを使っているのでXPではどうなるかはわかりませんが(XPは右クリックから別ユーザーで起動が可能)、 Vistaでその手法をとる場合、runasコマンドを使用することになります。 しかしこのコマンドで別々に起動しても、後から起動したほうが無効になってしまいました。 で、ここからがわけわかめなのですが、同一のデスクトップからの起動はダメでも、 Windowメニュー→ユーザー切り替えをし、別々に起動すればうまくいきました。 この違いはいったいなんなのでしょうか?
422 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 12:56:48 ] なんの誤爆だよ
423 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 22:18:45 ] >>421 はい誘導〜 pc11.2ch.net/test/read.cgi/tech/1179394713/
424 名前:デフォルトの名無しさん [2008/02/28(木) 20:18:35 ] なんか書け
425 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 21:09:57 ] なんかっつっても1.9.0でないしな
426 名前:デフォルトの名無しさん mailto:sage [2008/03/01(土) 17:58:28 ] いや、1.9.0-0は出てたろ。 1.9.0-1も出たし。
427 名前:デフォルトの名無しさん mailto:sage [2008/03/01(土) 20:24:17 ] win32oleはユニコードに対応しないのか
428 名前:デフォルトの名無しさん mailto:sage [2008/03/02(日) 06:24:41 ] 出てないのは、このスレのサブタイ ActiveScript Rubyの事ね
429 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 23:27:52 ] gem+ActiveRecord+exerbってイケる? なんかうまくいかんのだが… mkexyで作ったファイルでexerbしてみるとなんか C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8/exerb/recipe.rb:146:in `add_file_entry': control.exy: no such file -- C:/Program Files/ruby-1.8/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/inflections.rb (RuntimeError) とか言われるし、exyファイルの中身みて手動で書き換えるとexeは作れるんだけど rubygems.rb:304:in `report_activate_error': Could not find RubyGem activesupport (>= 0.0.0) とか言われてしまうぜ どーしたらいいんだ…
430 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 12:01:16 ] >>429 C:/Program Files/ruby-1.8/lib/ruby/gems/1.8/specifications などもいるんじゃないかな、と適当なことを書いてみる。
431 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 23:46:05 ] >>430 メンゴ ベリわかんねぇ もっと詳しく頼めるか… よーするにgemspecさんたちの中に幸せになれる情報が詰まってるからそれも一緒にアーカイブしてくれるようにexyファイル記述すればいいのか? だがしかしgemもexerbも原理理解してない俺は activesupport-2.0.2.gemspec:←ここどう書けばいいかわかんねぇ… gems/activesupport-2.0.2.gemspec:?4種類くらいアテカンで試したけどわかんね file: C:/Program Files/ruby-1.8/lib/ruby/gems/1.8/specifications/activesupport-2.0.2.gemspec
432 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 07:29:37 ] たぶんgemとexerbはかなり相性悪い… というかどちらもrequireを上書きするから同時に使うのはほぼ無理じゃないかな 面倒だが一番すっきり解決する方法はgemを使わずにライブラリをインストールすること それが困るならmkexyの時にrubygemsをrequireせずに、 gemがインストールされているディレクトリを-Iで指定してrequireすること あとはmkexyを使わずに自分でレシピファイルを書く方法もあるな
433 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 22:10:56 ] >>432 ActiveRecordとActiveSupportをgemんとこから引っこ抜いてきて、 requireしてるとこやらなにやらぶっ殺して回ったらとりあえず動くexeが作れたよ! さんきゅべりまっち! なんかスマートに片付いた感じがしないけど!
434 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 12:14:00 ] Windows特化fork www.sapphire-lang.org/ "Better overall management"ってのが笑えるけどな。
435 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 23:34:57 ] 再発した… active_support/core_ext/class/attribute_accessors.rb:24:in `cattr_writer': unde ined method `extract_options!' for [:silencer]:Array (NoMethodError) from active_support/core_ext/class/attribute_accessors.rb:46:in `cattr_ ccessor' from active_support/clean_logger.rb:18 ('A`)モウダメポ わかるかこんなもん…!! gem + Mechanize + exerb + activerecord(activesupport) + composite_primary_keys + wxRuby2 作成手順 ・mkexyする ・gemがactivesupportみっかんねーよとか言い始めるのでrubygems系をexyからどかす ・activexxxさんがgemないよとかいうからrequire 'gems'してるとこをどかす ↑ >>433 ではこれで動いた ↑ で、上記エラーが出る wxRubyでGUI追加しただけなんだけどなぁ…なんでだ… 環境はWinVista + ActiveScriptRuby 1.8.6(p114) + 必要なものはgemで入れ(gem update随時) Ruby以外の言語でコンパイルできてMechanizeとかActiveRecordみたいな便利なモンある言語しらねぇよorz
436 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 00:25:44 ] 関係ないかもしれんがwxRuby2はそのままではexerb化しても上手くいかない wx.rbにwx/classes/*.rbを実行時に列挙してrequireしてるところがあるから そこを書き換えるんだ
437 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 00:52:33 ] >>436 GUI部分だけだとExerbでExe化できてるのよ… wx.rb見てみたけど、相対パス作ってrequireしてるだけっぽいから大丈夫っぽくない?ダメなの? そして全部展開してみてやってみたけど結果変わらずだった…
438 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 17:46:18 ] とりあえず、rubyでGUIでコンパイルが条件ならruby2exeで代用してみれば? ただ、起動が激重になるけどね。
439 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 20:55:50 ] >>438 rubyscript2exeやってみたよ! wxRubyでxrcファイルを上手く取り込めない wxruby2.soがエラー吐いてるっぽかったからどうしようもない気がした しょうがないからGUIを自力でソース上に書いてまとめたらとりあえず動くようになった! でも起動してもコマンドプロンプトが出ちゃってダサい www.erikveen.dds.nl/rubyscript2exe/index.html#3.1.0 みて --rubyscript2exe-rubyw 指定すると出なくなるけどActiveRecord使うらへんで落ちてるっぽいからもう気にしないことにした そしてご指摘の通り起動が激重で泣ける orz 俺のマシンだと5秒くらいだけど古いノートパソコンでやると30秒以上余裕でかかるし…
440 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 09:47:19 ] wxRubyって既存のコントロールの描画をカスタマイズして使用したりする用途は不向き? ListCtrlのアイテムのフォーカス枠が見えにくいんで描画をカスタマイズしようとしたけど ListCtrlのSizeとかRectを得る系のメソッドがことごとく未実装だった・・・
441 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 22:28:40 ] 不向きということもないとは思うが、 あまり使われないようなメソッドはまだまだ実装されていないのが多い 自分で実装してパッチ投げると皆幸せ
442 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 10:13:37 ] そこまでのハッキング力はないのでevt_paintを丸々処理して解決してたんだけど、 get_itemでカラムのテキストが取得できないっぽいのでもうコントロール自体を 自作したほうが早そうだ・・・ なんか本家のwxWidgetsでも既存コントロールのカスタム描画は 難がありそうな感じがする
443 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 21:38:06 ] 既存コントロールは結局ベースの実装によって変わっちゃうからなぁ 拡張は難しいかもな
444 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 00:53:04 ] なんかFrameにSizerくっつけると普通にSizer使えるけど WindowにSizerくっつけるとまったく動かない。 なんかいろいろいじってもうまく行かないのでここで質問しようと思ったけど ちょっと本家で試してみる。
445 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 00:53:27 ] 444ゲット!
446 名前:デフォルトの名無しさん [2008/06/16(月) 00:34:15 ] るりまのchmがいけてないのが心配でならない
447 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 09:47:47 ] 正直読みづらいよなアレ
448 名前:デフォルトの名無しさん mailto:sage [2008/06/16(月) 11:51:27 ] >>446-447 もう少し具体的に教えてほしいな。 もっと使いやすくなるかもよ?