2011-01-11 8 views

答えて

0

ウィンドウズ7にする必要があります。同じ問題が発生しました。

私は、ローカルマシンにアプリケーションがビルドされ、binフォルダ内のexeファイルをダブルクリックすると起動するコンソールアプリケーションを持っています。アプリケーションで使用されるログファイルはアクセス可能で、適切に更新されます。

しかし、私は、アプリケーションとするとき、私はそれをインストールし、exeファイルを起動するためにMSIを作成するとき、私は、ログファイルのアクセス拒否を取得しています、

0

あなたがWindows VistaおよびWindows 7への変更を認識することがありプログラムファイルディレクトリに関する。基本的には、このディレクトリに書き込むことができるユーザならば、実行可能な実行可能ファイルを変更することができます。実行可能ファイルは大規模なセキュリティホールです。

このように、Windowsの新しいバージョンでは、管理者権限を持っていない限り、プログラムファイルディレクトリに書き込むことはできません。

必要な作業とファイルを共有する必要があるユーザーの数に応じて、使用するフォルダをお勧めします。ユーザーコンテキストで書き込むための安全な場所を取得するためのクロスプラットフォームAPIを持つEnvironment.GetFolderPath()をご覧ください。

もう1つの方法はMSIを作成してファイルに特殊なACLを作成し、ユーザーが編集できるようにしますが、その後にあるすべてがログファイルの場合はアプリケーションを脆弱にするのはなぜですか?