• ベストアンサー

ruby.exeとrubyw.exeに違いがあ..

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

  • Ruby
  • 回答数1
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • siffon9
  • ベストアンサー率64% (136/211)
回答No.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 ----ここまで

kihonkana
質問者

お礼

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

kihonkana
質問者

補足

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

関連するQ&A

  • exeファイルが何もせず終了してしまいます。

    exeファイルが何もせず終了してしまいます。 exeを起動することによりDOSが起動し、ユーザ入力を求めるプログラムを 作成し、exeを作成しました。 私のPCで実行したところ正常に処理が開始(DOS画面が起動)されますが、 新しく導入したPCにexeファイルを移植したところ処理が開始されず 終了してしまいます。 (一瞬DOSが立ち上がるのですが、すぐに終了してしまう。) 他のexeを試したところ、ファイルサイズの小さい(200KB)程度の exeは正常に動作しますが、該当のexe(500KB)のexeのみ実行 出来ないようです。 新しいPCの設定周りがおかしいのかな?と思い以下の 対応をしましたが、改善されません。 http://pasofaq.jp/windows/startmenu/exefile.htm 私のPC、新しいPCともにOSはWindowsXP、開発言語はCです。 プログラムの詳細は諸事情により記述できません。。 情報が少なく申し訳ありませんが、 類似した事例を経験された方がいらっしゃいましたら対処法を 教えて頂ければと思います。

  • c++.netのアプリをDOS窓なしで起動したい

    C++.NETで作成した、GUIのアプリがあります。 仮にaaa.exeという名前とすると、aaa.exeをダブルクリックすると DOS窓が開いてから、GUIが表示されます。 DOS窓を最小化する方法は分かりましたが、 DOS窓そのものを表示したくないのです。 これは可能でしょうか?

  • Rubyについて

    Rubyの環境について: ●Rubyのダウンロード(ruby186-26.exe) 環境変数を設定しました。 テキストエディタを利用せずにRDEをインストールしました。 ●RDEの最新版のファイルをダウンロード(RDE1.1.1_setup.exe) RDEでプログラムの作成と実行してみます。 RDE画面のエディタウィンドウに日本語を入力すると、文字化けになります。そこで、実行してみます。コンソールウィンドウでは、入力した文字が文字化けせずに表示されました。 どうしましたら、エディタウィンドウは文字化けせずに日本語が表示されますか? 困ってます。 ご指導お願いいたします。

  • Cygwin RubyでのIE

    Cygwin上でRuby言語でInternetExplorerのプログラムを書いています 現在は 1、win32oleでIEを開く 2、プログラム内でhtmlでHPを作成し、IEで開く 3、2をプログラムを終了させるまで続ける といったものですが、2でURLを習得し、IEで開こうとすると新しい窓(ウィンドウ)が開いてしまいます。新しい窓(ウィンドウ)を開かずに、1で開いたIEを更新させたいです。 または、前に開いたページを閉じて、新たなページを開く。 win32oleやwin32APIなど、Cygwin上のRubyで使える方法ならいいので、ご存知の方いましたらお願いします。

    • ベストアンサー
    • Ruby
  • NOTEPAD.EXEが見つかりません。

    .txtフアイルを開こうとしましたら。「関連付けるアプリケーションの設定エラー」のウインドウが開き「NOTEPAD,EXEがみつかりません。」と警告が出てしまいました。プログラムでメモ帳を開くと正常に使用できます。DOSプロンプト でnote.com を開くとメモ帳と同じです。windowsで.txtフアイルが開けないのは 何処かでnote.comとのリンクを壊したのでしょうか。検索でNOTEPADを捜しても 確かに見当たりません。対策を教えて下さい。

  • C# exeファイルのダブルクリック

    C#でプログラミングをはじめてみました。visual c#はインストールしていなくてcscでコマンドラインからコンパイルしています。 formが表示されるプログラムを作ったのですが、exeファイルをダブルクリックするとdos窓の上にformが表示されて実行されます。 dos窓の上にformが表示されるのが気に入りません。どうすれば、dos窓を表示させないで、formだけを表示させることができるのでしょうか?

  • 他PCからのruby

    私はrubyのruby/sdlを使って、ゲームなどを作って友達にやってもらう事にしました。 そこでCDを使って自分の作ったファイルごと持っていきました。ところが動かないんです。 自宅のrubyとruby/sdlがインストールされているパソコンでは動きました。 中に入っていたファイルは (1),exerbでexe化されたguiのアプリケーション (2),(1)のexyファイル (3),自作rdファイルなどそれに関連する画像やフォントも (4),libファイル内のinput.rdとfpstimer.rd ちなみにアクションスクリプトルビーです。 当然ですが、相手のパソコンでは何一つrubyに関してはインストールされてません。

  • なぜか最近cilent.exeってプログラムがゲー

    なぜか最近cilent.exeってプログラムがゲームをしてると頻繁に動作を停止します。原因がわかりません。結局プログラムの終了をしなくてはならずまたそのゲームを起動してもcilent.exeは動作を終了しました。という表示が出ます。どうすればいいのでしょうか?

  • IEXPLORE.EXEエラー

    最近、電源を切る際に エラーが発生したため、IEXPLORE.exe を終了します。 と出て、終了又はキャンセルの画面が出て どちらを選んでも何度もエラーになり結局強制終了 という現象になっていました。 そこでシステムの復元をして無事?その現象は出なくなったのですが それからはPCの動作が重くなり、時々フリーズするようになりました。 で、タスクマネージャを見てみるとIEXPLORE.exe 16.508K とが複数あることに気がつきました。 これは正常なのでしょうか? 多い時は5~6個表示されています。 何か対処方法等あれば教えてください

  • rubyがInternalServerError

    こんばんは。 自鯖にて初めてrubyを動かそうとしたところInternalServerError(500エラー)が帰ってきます。 まず、httpd.confに ---------------------- AddHandler cgi-script .cgi .rb ---------------------- と追加しました(このため.htaccessは作成しなくていいと思う)。 コマンドラインにて[which ruby][whereis ruby]を使い、[/usr/bin/ruby]にrubyがあることはわかるのですが、エラーが出てしまいます。 [test.rb] ---------------------- #!/usr/bin/ruby print "Content-type: text/html\n\n" print "test" ---------------------- 上記プログラムには755のパーミッションを与えています。 上記のフォルダにはCGI実行権が与えられています。 上記のフォルダではCGIはしっかりと動きます。 上記のプログラムはコマンドライン上[ruby test.rb]では動きます。 また、他のサイトもいろいろ調べましたが #!/usr/bin/env ruby #!ruby #!/usr/local/bin/ruby どのいパスでもエラーがでました。 解決方法を教えてください。 サーバ ---------------------- CentOS 5.4Final Apache 2.2.3 Ruby 1.8.5 ----------------------

専門家に質問してみよう