5

ユーザーのコンピューターに登録される特定の OCX ファイルに依存するサード パーティの Web アプリケーションがあります。管理者としてコンピューターにアクセスし、次のコマンドでファイルを登録しました。

REGSVR32 /S MyFile.ocx

これは問題なく動作し、Web アプリケーションを問題なく使用できます。regedit では、コントロールが正しく登録されていることがわかります。

ただし、管理者ではない別のユーザーがコンピューターにログオンし、Web アプリケーションを実行しようとすると、機能しません。

そのユーザーを管理者グループに追加して REGSVR32 コマンドを実行させると、正常に機能します。残念ながら、すべてのユーザーがマシンの管理者になることを許可することは現実的ではありません。

OCX ファイルを REGSVR32 に登録して、管理者権限を持たないユーザーを含め、すべてのユーザーが使用できるようにする方法はありますか?

ありがとう!

4

1 に答える 1

6

通常、regsvr32 は CLSID 情報を HKEY_LOCAL_MACHINE\software\Classes に登録するため、登録はすべてのユーザーに表示されます。

OCX に問題がある可能性があります。起動時に、管理者以外のユーザーが開くのを妨げる何かを行う可能性があります。たとえば、HKEY_LOCAL_MACHINE レジストリへの書き込み、Windows ディレクトリへの書き込みなどを行う必要があります。

Process Monitorツールを使用して、この OCX が管理者以外のユーザーに対して何かを行っているかどうかを確認し、ACCESS_DENIED エラーを確認できます。

OCX が管理者アカウントで何もしない場合、RegSvrExツールを使用して HKEY_CURRENT_USER レバーで OCX を登録することができます。このようにして、OCX は current_user_level の下に登録されます

于 2012-12-16T03:09:30.117 に答える