Windows 7では、特定のフォルダーにアクセスできるEXEを制限することはできますか?
特定のEXEでのみ開くことができるいくつかのデータファイルを含むフォルダー(c:\ myfolder)があるとします。
たとえば、MyApp1.EXEでc:\ myfolder内のファイルを開けるようにしたいが、他のEXE(メモ帳など)がそのフォルダー内のファイルを開けないようにしたいとします。
これは可能ですか?
Windows 7では、特定のフォルダーにアクセスできるEXEを制限することはできますか?
特定のEXEでのみ開くことができるいくつかのデータファイルを含むフォルダー(c:\ myfolder)があるとします。
たとえば、MyApp1.EXEでc:\ myfolder内のファイルを開けるようにしたいが、他のEXE(メモ帳など)がそのフォルダー内のファイルを開けないようにしたいとします。
これは可能ですか?
回答:
これは標準のWindows機能ではないと思います。
アクセス権は、アプリケーションではなくユーザーに基づいています。
ただし、別のユーザーとしてプログラムを実行できます。コンテキストメニュー(Shiftプログラムで+右マウスクリック)からを選択しますRun as different user
。ユーザーに基づいて、フォルダーへの正しいアクセス制御設定を持つさまざまなユーザーアカウントが必要になります。
上記のブラッドの答えは良い答えです。しかし、私はこの機能を提供するためのきちんとした解決策を見つけました。基本的に、フォルダ内のファイルへのアクセスを自分のアプリケーションのみに制限したい。
管理者が開始するWindowsサービスを実装します(これは私の特別なフォルダーにアクセスできます)。標準のWindowsユーザーはそのフォルダーにアクセスできません。
私のWindows Serviesは、特定のフォルダーのコンテンツにアクセスする機能を公開できます。私のカスタムアプリケーションEXEは、Windowsサービスを使用してそのコンテンツにアクセスします。これは、私のアプリケーションはWindowsサービスを介して特別なフォルダー内のファイルを編集できますが、フォルダーへのアクセスが制限されているユーザーは変更を加えることができないことを意味します。