0

HKEY_LOCAL_MACHINE/SOFTWARE/COMPANY/PRODUCT の Windows レジストリとの間でデータを読み書きするレガシー USB デバイス ドライバがあります。これを変更できないため、回避策が必要です。UAC が有効になっている Windows Vista および Windows 7 で、書き込みを実行する関数がエラーを返すことに気付いたからです。私の推測では、それには単にアクセス権がありません。

私の現在の回避策は、アプリケーションを管理者権限で起動することですが、ご想像のとおり、これはあまり良い解決策ではありません。アプリケーションの起動時に USB デバイスが初期化されるときにレジストリにアクセスするため、単純に再起動を要求することもできません。

インストーラー (管理者権限で実行) から cacls を使用して、システム上の特定のフォルダーにアクセス権を付与できることはわかっていますが、この特定のレジストリ エントリにこれを付与するためにできる同様のことはありますか? (許可コマンドと取り消しコマンドの両方が必要です。)

4

1 に答える 1

0

管理者以外のユーザーに HKLM への書き込み権限を付与することは避ける必要があります。ただし、それでも行う必要がある場合は、SetACLを使用してアクセス許可を設定/削除できます。SetACL は、スタンドアロンのコマンドライン実行可能ファイルおよび COM オブジェクトとして利用できます。

于 2011-09-29T08:54:00.427 に答える