ユーザー/全員に自分のサービスへのアクセス許可を付与したい。subinaclを使用してそのようなアクセス許可を付与することはできますが、Installerクラスでコーディングする方法を使用していませんか?
また、コンプのすべてのユーザーに権限を付与したい場合、「Everyone」をユーザーとして使用できますか?
システムにはユーザーがいません。つまり、ユーザーがいないXPでは、同じように処理する方法です。
できるだけ早く助けてください。どんな助けでも大歓迎です。
編集: 許可を与えるために私はこれを見つけました:http ://ss64.com/nt/subinacl.html そしてこれ 。cmdを試してみましたが、うまくいきました。私はそれを実現するために次のように書いた:
WshShell shell = new WshShellClass();
object wf = IWshRuntimeLibrary.WshWindowStyle.WshHide;
//object ws = IWshRuntimeLibrary.
if (allusers)
shell.Run("subinacl /SERVICE \"OpenVPNService\" /Grant=Everyone=TO", ref wf, true);
else
shell.Run("subinacl /SERVICE \"OpenVPNService\" /Grant="+ Environment.UserName +"=TO", ref wf, true);
shell = null;
最後のパラメータは問題を与えています。refobjのみを渡す必要があります。そして、それはウィンドウを表示するかどうかを表します。ここをチェックしてくださいエラー「引数3:「bool」から「refobject」に変換できません。3番目のパラメータで何を指定するかはわかりません。