0

NSISファイルを実行して実行する.NETアプリケーションがあります。WindowsXPでは、ファイルを実行するたびに表示されるこのウィンドウに問題がありました。

.NETプロセスが管理者として実行されている場合、そのウィンドウは表示されないため、Windows 7を使用すると簡単になりますが、XPでは頭痛の種であるため、これらの問題の1つだけを解決する必要があります。このウィンドウを防ぐことができればいつも見せてから?または、NSIS exeファイルからその出力を読み取って、.NETが問題があると判断するようにすることもできます。

[キャンセル]をクリックしてみましたが、.NETで例外がスローされます。これは問題ありませんが、処理できますが、「PCを保護する...」のマークを削除しないと大きな問題が発生します。

これは写真のリンクです: https ://docs.google.com/open?id = 0B5MtsIuVfrsYT2F1OGZUdHdMSDg

ここに画像の説明を入力してください

4

1 に答える 1

0

問題は runas 動詞にあります。削除できます。代わりに、管理者として実行されていない場合はプログラムを終了する必要があります。この関数を使用して、アプリが管理者権限で実行されているかどうかをテストできます。

[DllImport("shell32.dll", SetLastError = True)]
return: MarshalAs(UnmanagedType.Bool)
static extern bool IsUserAnAdmin(void);

http://www.pinvoke.net/default.aspx/shell32.IsUserAnAdmin

よろしく、

于 2012-10-08T10:21:42.060 に答える