4

アプリケーションを Windows 7 環境で実行するために必要な特権を確認する方法はありますか?

データベース接続に BDE と ODBC を使用する Delphi アプリケーションがあります。このアプリケーションは、通常のユーザー アカウントで Windows 7 を実行しているほとんどのコンピューターで動作します。ただし、一部のコンピューターでは、管理者権限を持つアカウントでのみ機能し、通常のユーザー アカウントでは正しく機能しません。許可の問題だと思います。コンピューターも Active Directory で実行されています。

SysInternals の Process Monitor を使用していくつかの情報を見つけようとしましたが、出力が高度すぎます。アプリの 2 回の実行 (1. 管理者権限で成功、2. 通常権限で失敗) のプロセス モニター ログには 22,000 行以上あり、プロセス モニター ログ (haystack) で答え (針) を見つけることができませんでした。

Windows 7 でアプリに必要な特権を判断するにはどうすればよいですか?

4

2 に答える 2

6

Microsoft Application Compatibility ToolkitのStandard User Analyzerを使用します。

Standard User Analyzer (SUA) ツールと Standard User Analyzer Wizard (SUA Wizard) の両方を使用すると、アプリケーションをテストし、API 呼び出しを監視して、Windows のユーザー アカウント制御 (UAC) 機能による潜在的な互換性の問題を検出できます。 ® 7 オペレーティング システム。

以前は制限付きユーザー アカウント (LUA) と呼ばれていた UAC では、セキュリティ プロンプト ダイアログ ボックスを使用して、アプリケーションが意図的に昇格されるまで、すべてのユーザー (管理者グループのメンバーを含む) が標準ユーザーとして実行される必要があります。ただし、アプリケーションには標準ユーザーが利用できない場所へのアクセスと権限が必要なため、すべてのアプリケーションが標準ユーザー ロールで適切に実行できるわけではありません。

于 2012-05-23T07:57:21.553 に答える
1

Aaron Margosisは、特権に関連する問題を追跡するのに役立つように設計された LUA Buglight というツールを持っています。

このブログ投稿から最新バージョンをダウンロードできます: LUA Buglight 2.1.1 with support for Win7/2008R2 SP1

これは、MS Application Verifier と概念が似ています。しかし、実際には、LUA Buglight の方が使いやすく、理解しやすいことがわかりました。ProcessMonitor と同じです。同様の方法でプロセスを監視しますが、通常のユーザーとして失敗し、管理者ユーザーとして成功したアクションのみを報告します。

ドキュメントはありませんが、使い方は簡単です。メイン GUI ウィンドウから Exe を選択し、BugLight プログラムに起動させます。UAC が有効になっている管理者アカウントで実行する必要があります。管理者ではない場合に失敗する手順を実行して、プログラムを実行します。完了したら、[Stop Logging] ボタンをクリックして、管理者権限がなければ失敗した呼び出しをリストするレポートを表示します。

于 2012-05-23T02:52:07.757 に答える