プロが教えるわが家の防犯対策術!

いつもお世話になっています。

WINNT4.0SP6a-IIS3.0の環境でASPを使用したいのですが、
スクリプトが全く動作しません。

下記の2パターンを行って見た結果いずれもNGでした。

--1 ---------------------------------------------

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
For i = 1 to 7
Response.Write "<FONT SIZE=" & i & ">"
Response.Write "Hello! World"
Response.Write "</FONT><BR>" & chr(13) & chr(10)
Next
</SCRIPT>
--1 の結果----------------------------------------

▲このページでスクリプトエラーが発生しました。

エラー:オブジェクトがありません。:'Response'

・・・といったダイアログが表示された

--------------------------------------------------

--2 ----------------------------------------------

<%
For i = 1 to 7
Response.Write "<FONT SIZE=" & i & ">"
Response.Write "Hello! World"
Response.Write "</FONT><BR>" & chr(13) & chr(10)
Next
%>

--2 の結果----------------------------------------

全く何も表示されなかった。

--------------------------------------------------

確認事項

1)インターネットサービスマネージャーの設定では
ASPファイルが格納されているディレクトリの"アクセス"の
"実行(X)"にはチェックを入れた

2)インストール手順、

・NTserver4.0インストール
・IIS2.0インストール
・IE4.0にバージョンアップ
・サービスパック6aにバージョンアップによってIISは3.0になった。

上記のような設定を行いました。
この場合何が原因と考えられますでしょうか?
補足が必要でしたら随時更新いたしますので、
どうか、よろしくお願いいたします。

A 回答 (2件)

ダメみたいですね。


エラーメッセージからするとResponseというオブジェクトがないという解釈しかなさそうですが・・・
ActiveX Scriptingの中にはビルトインでApplication、Session、Server、Response、Requestは組み込まれているはずですけど。

ASPの処理の流れは、
クライアント
1.aspファイル要求

--------------------------
サーバー
2.aspファイル読み込み

3.ActiveX Server Engine aspファイルを渡す。

4.ActiveX Scripting クライアントへHTML形式でファイルを返す。

C:\WINNT\SYSTEM32\VBScript.dllがスクリプトを解釈実行するファイルです。
これが入っているか確認してみてください。

次にIISの設定の手順の確認をもう一度行ってみてはどうですか?
インターネットサービスマネージャーから、
(1)HDD上のディレクトリを仮想ディレクトリに割り当てる。
(2)アクセスで、「読み取り」と「実行」にチェックを入れる。

最後になくても動くとは思いますが、aspファイルが含まれるルート直下のglobal.asaがあるかの確認。
test.aspがroot/test/testフォルダにあれば、root/testフォルダにglobal.asaがあるはずです。global.asa内の記述は
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
</SCRIPT>
です。

思いつくことは書いてしまいましたが、全然自信がありません。
    • good
    • 0
この回答へのお礼

C:\WINNT\SYSTEM32\VBScript.dllは存在していました。
IE4.0対IIS3.0と言うのが個人的に引っかかっていたので、
NTの再インストールとSP3を当てることにしました。
その結果、ASP1.0bが入っていないことが分かり、インストール後正常にASPが作動しました。

本当にご迷惑をお掛けしました。
サービスパックなどに含まれているリリースノートなど今後は慎重に目を通していきたいと感じました

お礼日時:2002/04/19 16:26

確認ですが、IIS3.0インストール済みということで、Active Server Pagesコンポーネントが入っているとして、サーバー側でスクリプトを実行することはできるようですね。

また、ASPファイルを格納するディレクトリに実行権限を与えているということなので、後は拡張子か、スクリプトの記述の問題ではないでしょうか。

まず、ActiveServerエンジンが呼び出されるのは、拡張子.aspの時だけです。

次に、スクリプトの記述ですが、ASPファイルの構造はHTML形式ファイルと同じです。ASPにはスクリプトを記述するための記述が2種類用意されています。
<SCRIPT></SCRIPT>タグとプライマリ・スクリプティングデリミタ<%%>です。
<%%>はプロシージャが定義できないという違いはありますが、どちらも基本的には同じです。

プライマリ・スクリプティング言語はデフォルトでVBScriptですが、他の言語を記述することもできます。
しかし、あくまで<%@ LANGUAGE="スクリプト名"%>はファイルの先頭に限り、1つしか記述することができません。

色々書きましたが、とりあえず以下の記述をしてみてください。
<%@ Language=VBScript %>
<HTML>
<HEAD>
<SCRIPT LANGUAGE=Javascript>
function MSG()
{
alert("ここはJAVASCRIPT");
}
</SCRIPT>
</HEAD>
<BODY OnLoad="MSG()">
テスト<BR>
<%
Response.write "成功です"
%>
</BODY>
</HTML>

スクリプトの記述の問題であれば、うまくいくはずですが・・・

この回答への補足

早々のご教授ありがとうございます。
早速試した結果、
javascriptで動作されるメッセージボックスは
表示されたものの、
「Response.write "成功です" 」
の部分である、"成功です"は表示されず、
"テスト"のみ表示されました。
拡張しはASPになっています。

逆に言いますと、ただのHTMLだけで構成されているファイル拡張子に「.asp」に変更すると、問題なくブラウザで反映されました。

個人的に煮詰まった状態です。

補足日時:2002/04/19 14:12
    • good
    • 1

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