1

ファイルをサーバーに送信せずに、クライアントでファイルを開いて表示する方法を試しました。javascriptとActiveXを使用してファイルを開く、変更する、保存する方法は?

オープニング:<input type=file>からjavascriptでファイルにアクセスしようとしましたが、セキュリティ上の制限が認められていないようです。 同じ問題が発生した<iframe src=file://local.path>も試しました。 最後にnew ActiveXObject('Scripting.FileSystemObject');を試しましたが、私は常にautomationserverがオブジェクトを作成できなかったというエラーを受け取ります。

保存するために、TextRangeとDocumentFragmentからexecCommand('SaveAs',true)を使用しようとしました。 DocumentFragmentから私はファイルを保存することができますが、それには<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">しか含まれていません。 TextRangeには保存ダイアログは表示されません。

私は何ができますか?

+0

からファイルシステムオブジェクトを使用することができます。あなたがしたいことがどのようにして基本的に攻撃者がユーザーのシステムをハックするのと違うかを説明することができれば役に立ちます。 – EricLaw

+0

FileDialogsは問題ありませんが、私はユーザーにファイルを選択させたいと思います。私は隠す必要はない。私はクライアント側の編集を許可しないというセキュリティ向上は見られません。最終的には、結果ファイルを別々に編集するかのように違いはありません。 – schwer

答えて

0

、IEは、これらがすべてのセキュリティ上の制限ですHTA

+0

署名が可能です。 HTAは私のための権利ではありません。私はUniversalXPConnectを使う必要があると思います。しかし、コードに署名するのは難しいようです。 – schwer

+0

Internet Explorerは「署名付きスクリプト」または「UniversalXPConnect」をサポートしていません。 – EricLaw

+0

クロスブラウザサポートは必要ありません。 – schwer

0

申し訳ありませんが、

ユーザーがプラグイン/ ActiveXオブジェクトをインストールしなくても、ブラウザを介してローカルファイルシステムにアクセスすることはできません。

Adob​​e Airなどの別のクロスプラットフォーム配信方法を試すことが必要な場合があります。あなたがローカルファイルシステムからsigned script

を使用しない限り、あなたはこののいずれかの操作を行うことができないWebサイトから

+0

Adob​​eが私の最後の選択です。 – schwer

関連する問題