0

信頼できる Web ページでの対話を許可して、クライアントでコードの実行をトリガーしたいと考えています。ユーザーは IE を Web ブラウザーとして使用します。実行されるコード ファイルは、クライアント上で利用可能になります。ローカル コード ファイルのメソッド インターフェイスは、Web ページに認識されます。これは、たとえば、ブラウザからクライアントの定義済みファイルまたはローカル コード ファイルで定義されたその他のアクションにデータを保存するために使用できます。

他のすべてのコードは、c# と aspx を使用して記述されます。

これを行うための適切な方法 (または簡単な方法?) は何でしょうか?

4

4 に答える 4

2

ActiveX を掘り下げたいと思わない限り、IE はシステム内の基礎となるレベルを操作するための他のインターフェイスを提供していないのではないかと思います。

クライアントにとってまったく安全ではありません。

于 2009-11-05T13:17:42.280 に答える
0

イントラネット アプリでこれを行う簡単な方法の 1 つは、URL スキーム (myapp://blahblahblah など) を実装する IE 拡張機能を作成し、それをクライアント コンピューターにインストールすることです。次に、Web アプリケーションにそのスキームを使用するリンクを含めることができます。スキームを実装する拡張機能は、それを解釈して、クライアント マシンにインストールされているアプリケーションと通信できます。

于 2009-11-05T13:25:52.217 に答える
0

これはハッキング (ブラウザーを使用してクライアントのコンピューターにデータを書き込むこと) と見なされます。ユーザーがあなたを信頼しているかどうかにかかわらず、C#、JavaScript、またはその他の手法を使用しているかどうかにかかわらず、これを行う方法はありません (不法にエクスプロイトを使用する以外)。

少しの間、それが可能であると仮定してください。ユーザーのシステムに書き込みc:/windows/、破棄することができます。あなたがそれを正しく行うことを意図しておらず、世界に約束していなくても、可能であれば、他の人が信頼性の低いことを行うことができます. また、犯罪組織によって活発に悪用されている IE のリークの量を考えると、それは望ましくありません。

とはいえ、完全な信頼を得て何でもできるようになるには、次のいずれかを実行できます。

  1. ブラウザの拡張機能またはプラグインを作成します。
  2. 完全な信頼を必要とする ActiveX コントロールを作成します。
  3. ユーザーがインストールする必要があるアプリケーションを作成します。
  4. 完全信頼の VBScript または JScript を使用FileSystemObjectし、スクリプトから開いて使用します。

これらのいずれかがあなたに完全な自由を与えます。ただし、明らかな理由から、オプション 3 が最も一般的です。これらはすべてユーザーの許可が必要です (ポップアップが表示され、[はい] を 1 回以上クリックする必要があります)。

オプション 4 の例は次のとおりです (注: C# を使用するという考えはやめてください。これはサーバー側のみであり、ブラウザーでは使用できません)。

// this is JScript and works within <script> in IE only
function CreateSomeFile()
{
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var myFile = fso.CreateTextFile("c:\\somefile.txt", true);
    myFile.Writeline("this is Hello World from Outer Space");
    myFile.Close();
}

更新:コードサンプルを追加

于 2009-11-05T13:19:46.160 に答える
0

正確には言えません。まず頭に浮かぶのは、ブラウザ プラグインまたは Google Gears の開発です。

Google Gears では、ブラウザを介してローカルでファイルを作成してアクセスできると思います。

于 2009-11-05T13:20:20.607 に答える