zunbe |
||
|
「市民サイクルパラダイス in 日間賀島」にエントリー | 五味太郎 絵本ワンダーランド2007 in 名古屋 |
2007/04/14
このエピソードの続き。 2007/02/02 IIS で KAKASI.EXE を実行する IIS上で標準入出力のパイプライン処理をできる方法を探ってみた。 IIS上でパイプラインの処理ができない理由は、IISがプロセスを生成する時にデフォルトでコンソールを作成しないためで、有効な STDIN、STDOUT、STDERR を使用できず、パイプラインによる処理が構成できない。 [IIS]HOWTO: CGI プロセスから子コンソールを作成する方法 この資料によれば、解決方法として、IISの設定を変更するか、Win32 API の AllocConsole() を呼び出してコンソールを作成する方法が紹介されている。 まず、KAKSI のソースをコンパイルするために、Windows に cygwin をインストールする。 今回は、Win32 API の AllocConsole() をリンクする必要があるので、cygwin のインストーラから、libs の w32api をインストールしておく。 次に、ソースコードを修正する。 (1).windows.h を include する。 次に、configure を実行し、コンパイル環境を作成する。 (1).lkernel32.lib をリンクする必要がある。 (2).cygwin環境ではない環境で実行する必要がある。 と、いう事で、以下の様に変数を指定して configure し、ビルドする。 $ LIBS=-lkernel32 CFLAGS=-mno-cygwin ./configure WshShell の Exec() で、作成した KAKASI.EXE を呼び出してみる。 Set objShell = Server.CreateObject("WScript.Shell") 成功! う~ん、奥が深い。
投稿者 zunbe : 2007/04/14 10:05:19
もしかして、未だにIIS4が本番で動作しているということ? う~ん、私はその方が怖い・・・。 投稿者 チャーリー栗原 : 2007/04/15 15:06:22 ●チャーリー栗原さん > もしかして、未だにIIS4が本番で動作しているということ? ターゲットはIIS5です。 おそらく「IIS4が本番で動作?」というのは、資料の「この資料は以下の製品について記述したものです。」の記述に反応しての事だと思いますが、マイクロソフトのナレッジベースは、マイクロソフトが問題(or仕様)を認識した時点での記述で、それ以降はメンテナンスされる事はほとんどありませんから、IIS5、IIS6とバージョンが上がっても、資料に記載されている内容は、一般的に更新されないと思います。 試してはいませんが、おそらく、IIS6でもおそらく状況は同じではないかと思います。 投稿者 ずんべ : 2007/04/15 23:45:05 なるほど、勉強になりました。 私は仕事ではIIS6しか縁がないです・・・。 投稿者 チャーリー栗原 : 2007/04/19 15:36:54 ●チャーリー栗原さん そうですね、Windows はビジュアルな操作性を重視したOSですから、コマンドラインが弱いのは、まぁ、当然と言えば、当然なんですよね。 がんばります。 投稿者 ずんべ : 2007/04/20 04:29:15
|
|
|