WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:cpshost.dllでのエラー

0:[投稿] まむ [MAIL] [2002/04/26 11:06 ][環境:WIN+IE WIN系+OTHER]

ASP上でcpshost.dllを使用してクライアントのファイルをサーバにアップロードする処理をしたいのですが、おかしな現象が発生します。
IE(バージョン不明)で動かす→処理は正常に終わるが、結果を表示する次の画面でIIS(サーバ?)の情報らしき文字列が表示される。
NN(4.7)で動かす→”cpshost.asp”というファイルをどこからかダウンロードしようとしていて処理は成されない。

どのようなアドバイスでもいいので、
お願いします。


1:[回答] のぐりん [MAIL] [2002/04/26 15:46 ]

どのようなソースを書いているか、わかりませんが、
以下のページを参考にしてみてください。

http://support.microsoft.com/default.aspx?scid=%2Fisapi%2Fgomscom%2Easp%3Ftarget%3D%2Fjapan%2Fsupport%2Fkb%2Farticles%2Fjp217%2F4%2F25%2Easp&LN=JA
または、
http://www.microsoft.com/japan/developer/workshop/server/asp/server052499.asp

cpshost.dllは、出来るだけ新しいバージョンを利用してください。
古いバージョンだと、全角文字の入ったファイル名で、おかしな現象が起こることがありました。

※出来たら、サーバの環境及びソースを提示してください。
 おかしなところが見つかるかも知れません。


2:[保留] まむ [2002/04/30 17:14 ]

早速書いて頂きながら、お返事が遅くなりましてすみません。
ありがとうございます。

とりあえず、上記のページを参考にしてみて
もう一度見直してみます。

また、その結果について報告させてもらいます。
ひとまずお礼まで。
ありがとうございます。


3:[回答] のぐりん [MAIL] [2002/05/03 11:15 ]

結局、どうなりましたか?
よろしかったら、ソースも見せてください。


4:[回答] まむ [2002/05/15 11:44 ]

久しく回答なしですみませんでした。
なかなか機会がなかったもので・・・。
とりあえずソースを書き込みしておきます。

下記のようなかんじでよろしいでしょうか?

<%
   'ホスト名取得
   HostName = Request.ServerVariables("SERVER_NAME")
)
%>
<html>
<head>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=x-sjis">
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<title> </title>
</head>
<body>
<form name=form method=POST enctype="multipart/form-data" action="http://<%= HostName %>/scripts/cpshost.dll?PUBLISH?http://<%= HostName %>/--次画面ディレクトリ--">
    ↑
   画面表示部分
    ↓
</form>
</body>
</html>

IE5.0SP2だと変な文字列は表示されません。
NN4.7でもマシンによっては文字列は表示されても、アップロードできたりします。


変な文字列

   HTTP/1.1 200 OK
  Server:Microsoft-IIS/4.0
  Date: --日付--
   Connection:Keep-Alive
   Content-Length: --4桁数値--
   Content-Type:text/html
   Cache-control:private
 
の情報が、次画面の一番最初にサーバから送られてきてしまっている。何の情報なんでしょうか?


5:[回答] のぐりん [MAIL] [2002/05/15 13:29 ]

HTTPヘッダーの情報が、送られてくるみたいですね。

送信後の次画面のソースを見せていただきますか?
(Posting Acspeterは、NNで利用したことがないので、
 わかりませんが、IEは、このソースで正常に動くと思います。)

参考:Posting Acspeterを使わず、以下のフリーツールを使うってのはどうでしょう?結構、標準的に使われています。(私は、ファイルアップデートでは、使ったことないですが、、、)
http://www.hi-ho.ne.jp/babaq/basp21.html
※メール送信用ですが、ファイルアップデートもできるようです。
http://www.hi-ho.ne.jp/babaq/basp21.html#0024


6:[回答] まむ [2002/05/16 16:26 ]

のぐりんさん、度々ありがとうございます。

次画面は次の通り↓です。至って普通だと思うんですが・・・
この画面では主にサーバにアップロードしたファイルを
ストアドプロシージャを使用してDBに登録するという処理です。

<%@ LANGUAGE="VBSCRIPT" %>
<% Response.Buffer = True %>
<HTML>
   <HEAD>
       <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-sjis">
       <META NAME="GENERATOR" CONTENT="Microsoft Visual Studio 6.0">
       <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
       <TITLE> </TITLE>
   </HEAD>
   <BODY>
       <HR>
       <%
           'CSVファイルパスの取得
           strCSVFilePath  = Request.Form("FilePath")

           'CSVファイル名称の取得
           strCSVFileNM    = Request("FileName") & Request("FileExtention")

           'データベース接続

           '「現在、他のユーザーがを更新中です。」のチェック
           
           '更新中の場合
       %>
       <DIV ALIGN=center><FONT COLOR="RED">
           現在、他のユーザーがDBを更新中です。しばらくしてからやり直して下さい。
       </FONT></DIV>
       <%
           '非更新中の場合
               '処理開始(トランザクション開始)

               'ストアドプロシージャー実行
        
        'commit or rollback
        
               'データベースクローズ

           END IF

       %>
    
    ↑
  画面(結果)表示部分
    ↓

   </BODY>
</HTML>


HTTPヘッダーが表示されてしまう画面を
右クリックの「ソースの表示」から見ると
"<HTML>"が始まる前にズラッと文字列が並んでいる、という状況でした。

ほかの方法でやって見たいのですが
自分の環境でなく人のところなので
あまり変えられないかな〜?というのが
正直なところなのです・・・(T-T)


7:[回答] のぐりん [MAIL] [2002/05/20 14:53 ]

う〜〜ん、わからないですね。
とりあえず、strCSVFilePathやstrCSVFileNM を、
取得直後にResponse.Writeで、出力させて、
表示されるヘッダー部分が、どの辺か見てみましょう。

尚、わざとヘッダー内容を表示させたいときは、
Request.ServerVariables を使います。
どこかに、書かれていないですか?

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World