SESSION TITLER Version 0.00 for OS/2 v2.0 Virtual DOS Machine Copyright(c)1992 Altair☆ All rights reserved ○ 概要 ・OS/2 Version 2.0のDOSセッションに於て、セッション名を設定するツール です。 ・DOSセッションのウィンドウタイトルに任意の文字列を表示できます。 OS/2用に作られたプログラムであれば、プログラム自身がセッション名を任意 に付け替える事ができますが、DOSプログラムでは、そのような機能をプログラ ム自身が持つ物は滅多にありません。 DOSセッションでは、目的のプログラムを起動する前に、環境変数の設定や、 常駐プログラムの起動が必要な場合が少なくなく、このようなプログラムはバッ チファイルで起動するのが普通だと思われます。OS/2 Version 2.0のDOSセッショ ンでは、プログラムやバッチファイルが起動されると、その名前がセッションの 名前として使われてしまいます。これは、その時点で何が動いているのか分かり 易い反面、折角、設定ノートパッドで指定した名前が反映されず、プログラムや バッチファイルの8文字+3文字の、味気なく、殺伐とした名前が哀しい...。 このプログラムは、これを解決し、DOSセッションでも、ユーザが任意のセッ ション名を任意の時点で設定できるように作成しました。 ○ 使い方 このプログラムは、プログラムやバッチファイルの起動によって自動的にセッ ションタイトルが設定されてしまわないように、セッションタイトルの自動設定 を制限します。この自動設定の制限をするために、プログラムの一部を常駐させ ます。 従って、他の常駐プログラムと同様に、プログラムの子プロセスとして使うこ とは、かなりの危険を伴いますから避けるようにして下さい。1度、常駐してし まえば、この限りではありません。 コマンド構文は、 [LoadHigh] NameTask [セッション名] です。セッション名を省略すると、最初に設定されていたセッション名を復活し ます。 セッション名は、14文字までのようです。但し、セッション名を省略した場合、 復活される最初に設定されていたセッション名は、この14文字までという制限を 受けないようです。(作者はOS/2のプログラミングに関する資料を全く持ってい ないので、動作原理について、あまり良く理解していないのです。自作のプログ ラムの動作を『...するようです』と説明しなければならないのは哀しいなぁ。^^;) ○ このプログラムの原理 SESSION TITLER − NameTaskプログラムの常駐は、そのDOSセッションの中で 実行されたNameTaskの1回目に行われます。NameTaskの常駐部は、1度常駐してし まえば、そのセッションの間は、メモリ上にとどまり続けます。 OS/2は、セッションの中で、プログラムをロードし実行する度に、セッション 名を設定する命令を自動的に発行します。NameTaskの常駐部は、このセッション 名を設定する命令を横取りし、何もせずに、その命令を終わらせてしまいます。 これによって、味気ない8文字+3文字のプログラム名がセッション名として設定 されなくなります。OS/2は命令を発行するだけで、それがうまく行ったかどうか は確認しないようですから、この横取り処理が原因となってプログラムをロード と実行を不成功に終わらせる事はありません(たぶん)。 もうひとつの、SESSION TITLER − NameTaskの機能は、任意のセッション名を 割り当てることです。例えば、環境変数や常駐プログラムの起動など、アプリケー ションプログラムの環境を初期化するバッチファイルの最初に、 NameTask 初期化中... と入れておき、目的のアプリケーションプログラムの起動寸前に、 NameTask アプリ実行中 とすると、バッチファイルが初期化を行っている最中は、DOSセッションウィン ドウのセッションタイトルは『初期化中...』となり、アプリケーションプログ ラムが起動されると『アプリ実行中』に変化します。 もし、アプリケーションがデスクトップにプログラムアイコンとして登録され ていて、それが、例えば『Altair☆の画期的に超くだらないプログラム』と名付 けられていれば、セッション名を何も指定せずに、 NameTask とすることにより、セッション名を『初期化中...』から『Altair☆の画期的に 超くだらないプログラム』に戻ります。 ○ 他の常駐プログラムとの相性 SESSION TITLER − NameTaskプログラムは、int 2Fhプロトコルにより、常駐 部(レジデント)と非常駐部(トランジェント)が連絡し合い、この時のIDは0CEhで す。 同一のIDを利用している常駐プログラムがある場合、どちらかが異常な動作を する可能性が高いので、どちらかのIDを変更しなければなりません。ID番号には 0C0h〜0FFhの範囲で、他のプログラムが利用していないものを利用できます。 もし、NameTaskのID番号が必要な場合は、debug外部コマンドやバイナリエディ タを利用して、NameTask.comの103h番地の0CEhを変更して下さい。ここに設定さ れている値が、SESSION TITLER − NameTaskプログラムの常駐部のIDになります。 ○ Copyright Notice このプログラムは、フリーウェアですが、このプログラムの一部、もしくは全 体の、転載、再配布に当たっては、事前にAltair☆の承諾を得て下さい。 このプログラムは、作者自身が、何故このプログラムがちゃんと動くのかを、 あまり良く理解していないので(^^;)、作者以外の者が、このプログラムを利用 した事により、何らかの重大な事故に遭遇し、事故の復旧に手間どり、時として 家庭崩壊に至り、或は、デートに遅刻した利用者がかわいい恋人にふられたとし ても、一切関知しません。このフリーウェアの作者は無責任なのだ。(^o^)/ ○ サポート体制 ↑ フリーウェアにサポートなんかを期待してはいけません。世の中、そんなに甘 くない(^_^)。 このソフトウェアの利用によって、何らかの問題がある時には、可哀想な被害 者をそれ以上増やさないために、速やかに、バグレポートを書いて下さい。 作者は至って単純な人間なので、使ってみて良かったとか、そういうレポート も待ってます。おだてれば木に登ります。秋葉原の古炉奈で生ビールをおごって くれるか、箱崎で中華料理をおごってくれれば何か芸をするかも知れません(^_^;)。 Altair☆ (NBG01720@nifty.ne.jp) http://www.vector.co.jp/authors/VA000199/