2017-08-16 7 views
0

私は別の国にある別のサーバーにアプリケーションをホストしています。私は別の国のアプリケーションを使用していますが、そのアプリケーションを使用していますが、ユーザーのマシンローカル 'C'ドライブを確認したいドライブです。存在するかどうか。ファイルをチェックする方法はC#またはJavascriptの存在ですか?

これをC#またはJavascriptからどのように達成するには? C#

byte[] contents = null; 
if (File.Exists("C:\Program Files (x86)\Fruit\fruitList.txt")) 
    { 
     using (FileStream fileStream = File.OpenRead(scannedFile)) 
     { 
       contents = new byte[fileStream.Length]; 
     } 
    } 

から

が、(私たちはアプリケーションをホストされている場所) 'C' ドライブパスが唯一のIISサーバーで検索されて言及しています。しかし、私はクライアント(ユーザーの)マシンをチェックインしたい。

Javascriptでコードを見つけることができませんでした。

私は、期待される結果を達成するために手伝ってください。

ありがとうございます。

答えて

6

あなたがしようとしていることは簡単にはできません。セキュリティ上の理由から、JSはユーザーのクライアントマシンにアクセスできないため、機能しません。 C#はサーバー上で実行されているため、クライアントにはまったくアクセスできません。

代わりに、ユーザが<input type="file" />を使用して手動で必要なファイルをマシンから選択し、そのファイルをサーバーにアップロードして処理および検証することができます。

ユーザーが自分のWebサイトにクライアントから情報を取得する方法を提供するコンピュータにインストールするプログラムを作成できない場合は失敗しますが、これは非常に複雑なプロセスです。

+0

あなたの応答に感謝します。私のシナリオは、クライアントのマシンにファイルが存在しない場合は、クライアントにインストーラをダウンロードするように依頼します。どうすればこのシナリオを達成できますか、これをお勧めしますか? – Cegone

+0

上記の私の答えにあなたが不明な点はありますか? –

+0

私はあなたの答えにはっきりしています、私は私のシナリオでを使うことができなかったので、シナリオを達成するための提案をお願いしています。 – Cegone

0

サーバー側からクライアントドライブにアクセスできない場合、大きなセキュリティ上の問題になります。彼らはファイルを持っているかどうかを教えてくれるよう依頼しなければなりません。これは、あなたがローカルファイルを探していると考えているため、IISサーバーでの検索でもありません。お役に立てれば!

0

Webサイト(C#)では、アプリケーションを実行しているマシンであるため、サーバーのファイルにのみアクセスできます。この記事を読んで、クライアント・ファイル・アクセスはデザインによって許可されていないので、それができない、クライアントで実行されるJavaScriptが

Javascript Security

あなたがこれを必要とする場合は、にアプリケーションを開発する必要がありますクライアントのPCにインストールし、このアプリケーションからサーバーを接続すると、これが唯一の方法です。ブラウザからクライアントファイルにアクセスすることはできません。

0

使用このよう

C#

var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read); 

変数FILESTREAMからファイルの拡張子を取得

Javascriptを:

<input id="File" type="file"/> 
$("#File")[0].files[0].name.split(".") 
+0

あなたはOPリクエストとそれに内在する欠陥を誤解しているようです –

関連する問題