• ベストアンサー

音を鳴らす方法

JAVAで開発したアプリケーションをTelnetサーバーに置き、別PC(CLIENT)からWindowsのTelnet.exe(VTエミュレータ)を使用して実行した場合の音の鳴らし方を教えて下さい。 通常に実行すると、音(BEEP音)がサーバー上で鳴ってしまします。 別PC上で鳴らすにはどうすればよいのでしょうか? 別PCのデバイスを指定?しなければいけないような気がするのですが、 コーディングの方法がわかりません。 方法をご存知の方、教えて下さい、宜しくお願いします。

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

  • ベストアンサー
  • rabbie
  • ベストアンサー率51% (16/31)
回答No.4

そんなことがあるのかと思って Windows の Telnet.exe で実際試してみたところ、Windows -> Unix につなげた場合はちゃんとクライアント側のPCで鳴りましたが、Windows -> Windows の場合は確かにサーバー側でなってしまいました。(ちなみに Unix -> Windows の場合もサーバーのPC側で鳴りました。エミュレータは Unix の telnet) これはエミュレータ(Telnet.exe)の問題ではなくて、サーバー側のサービス(Unix なら telnetd、Windows の方は今回 Hummingbird の Telnetd for windows を使いました。)のためです。(パケットをモニタしてみましたが \007 を telnet.exe に渡していない) なんでそんな仕様にしているのかちょっと理解できないですが、この Telnet のサーバーの動作を変更できないとどうにもならないですね。 ほかの手段も考えてみます。

knakatan
質問者

お礼

いろいろとテストして頂き有り難うございます。 サーバー上で動くTELNET SERVERの問題という事ですね。 って事はJAVAうんぬんというよりも、別のTELNET SERVERを探したほうがいいって 事ですよね。 有り難うございました。別のTELNET SERVEを探す方向で検討していきたいと思います。 もし別の方法があれば個人的にメールで教えてくれれば有り難いです。 本当に有り難う。

すると、全ての回答が全文表示されます。

その他の回答 (3)

  • rabbie
  • ベストアンサー率51% (16/31)
回答No.3

> System.out.println("...")も同様です。 と言うのはどうなったのでしょうか。私の書き方が悪かったのかもしれませんが、例えば、System.out.println("hogehoge") とやるとその hogehoge はどこに出力されるのですか?Telnet の画面ではなくてサーバーのマシンの画面に出るのでしょうか?

knakatan
質問者

お礼

有り難うございます。 System.out.println("hogehoge")を実行すると、CLIENT側のTELENET画面に表示されます。 しかし、System.out.print('\007'); を実行しても、CLIENTでは音がなりません。 TELNETを使用せずにCLIENTにCLASSファイルを置き、DOS上で実行すると問題なく音は鳴るのですが。。。。 画面と音の制御方法が違うってことですよね。。

すると、全ての回答が全文表示されます。
  • rabbie
  • ベストアンサー率51% (16/31)
回答No.2

今現在試す環境が無いので確認できませんが、 BEEP音でいいのなら System.out.print('\007'); で出ると思うのですが。 もちろん System.out がファイルとかにリダイレクトされていたらだめですけど。 ( System.out.println("...") が telnet の画面に出る状態ならOK )

knakatan
質問者

お礼

回答ありがとうございます。 しかし、TELNETで実行したところやはりサーバー側に音が鳴ってしまいました。 System.out.println("...")も同様です。 CLIENTのDOS環境でなら問題なく音は出るんですが。。。

すると、全ての回答が全文表示されます。
回答No.1

Telnetで相手先マシン上でjavaを実行している限り どうしようもないと思うのですが・・・ たとえばjavaでクライアント/サーバアプリを組んだり、 あるいはダウンロードして実行すればできるでしょうが・・・

knakatan
質問者

お礼

回答有り難うございます。 実をいうと現在、倉庫などで使うハンディーターミナルのアプリケーションを 組んでいます。 そのハンディーターミナルというのがVTエミュレータしか使用できないのです。 メーカ独特なDOS系のOSの為、制限が多く困っています。 実際にできないように思うのですが、過去にVTエミュレータでCLIENT側で音のなるソフトを見た事があるんです。どこのメーカのソフトかは覚えてないんですが。。

すると、全ての回答が全文表示されます。

関連するQ&A