HKEY_LOCAL_MACHINE/SOFTWARE/COMPANY/PRODUCT の Windows レジストリとの間でデータを読み書きするレガシー USB デバイス ドライバがあります。これを変更できないため、回避策が必要です。UAC が有効になっている Windows Vista および Windows 7 で、書き込みを実行する関数がエラーを返すことに気付いたからです。私の推測では、それには単にアクセス権がありません。
私の現在の回避策は、アプリケーションを管理者権限で起動することですが、ご想像のとおり、これはあまり良い解決策ではありません。アプリケーションの起動時に USB デバイスが初期化されるときにレジストリにアクセスするため、単純に再起動を要求することもできません。
インストーラー (管理者権限で実行) から cacls を使用して、システム上の特定のフォルダーにアクセス権を付与できることはわかっていますが、この特定のレジストリ エントリにこれを付与するためにできる同様のことはありますか? (許可コマンドと取り消しコマンドの両方が必要です。)