アプリ版:「スタンプのみでお礼する」機能のリリースについて

ruby.exeとrubyw.exeに違いがあるのでしょうか?
(dos窓の表示/非表示以外に)

作成したGUIプログラムをruby.exeで動作させると正常に動くのですが、
dos窓を表示せずに動作させるため、rubyw.exeに関連づけて動作させると、ある条件で(たぶんエラーで)、GUIが消え、終了してしまいます。

A 回答 (1件)

こんにちは



同様の現象に遭遇したことがないのでご質問に直接の回答はできないのですが



とりあえず発生していると思われるエラーメッセージをファイルに書き出してみては如何でしょうか?
エラーがわかれば対策も可能かと思います。


問題のプログラムの具体的な記述がわからないのですが、ソースの最後の方で作成したFormを実行している記述があると思います。(下の※に相当する記述です、複数行かもしれません)
これをbegin~rescue~endで囲んで、エラーが発生した場合にそのメッセージをファイルに書き出す様にします。下の例ではエラー発生時に、error.txtにエラーメッセージが書き出されます。

-----ここから
begin
VRLocalScreen.start(MyForm) ……※Formを実行している記述(一例です)
rescue
File.open("error.txt","w") do |f|
f.puts $!.message
f.puts $!.backtrace
end
end
----ここまで

この回答への補足

siffon9さん、回答ありがとうございます。
なんとか、エラーメッセージらしきものを記録することができました。
これを基に原因を調べてみます。

補足日時:2013/09/24 19:38
    • good
    • 0
この回答へのお礼

siffon9さん、ありがとうございます。
原因がつかめました。

エラー(GUIが消える)の発生する条件の時には、ある処理を行っていて、
その時には動作チェックしやすいように、途中データを表示させるのに「p ...」を使っていました。
RDEから起動したときやdos窓を表示するようにしたときには、これがエラーにならなかったようですが、
dos窓を表示せず、直接動作させたときは、「p ...」がエラーになって終了していたようです。
rescueコマンド便利ですね、こんなに簡単に原因がつかめるとは思いませんでした。
本当にありがとうございます。

お礼日時:2013/09/24 19:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!