VB.NETプロジェクトからビルドされた.NETアセンブリを参照するC#プロジェクトがあります。混在したC#とVB.NETプロジェクトのUAC
このVB.NETアセンブリには管理者権限が必要です。
私はと私のC#プロジェクトでマニフェストを作成しました:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
、すべてが良いようだ:私は実行すると:
bool isAdmin = new WindowsPrincipal(WindowsIdentity.GetCurrent())
.IsInRole(WindowsBuiltInRole.Administrator) ? true : false;
私のC#コードから予想通り、私はisAdmin == True
を取得し、 VB.NET DLLからメソッドを呼び出すと、
My.User.IsInRole(Microsoft.VisualBasic.ApplicationServices.BuiltInRole.Administrator)
私は代わりにFalseを取得します。
これは私にとって非常に非合理的です。
さらに、このVB.NETアセンブリへの参照を含むVB.NETプロジェクトを作成し、管理者権限で実行すると、すべて正常に動作します。
こちら、ありがとうございます! – max333