আমি জানি এটি পুরানো তবে আমি উত্তর খুঁজতে গিয়ে এটিকে হোঁচট খেয়েছি। আমার ক্ষেত্রে, আমি প্রকাশিত ফাংশনটি ব্যবহার করছি এবং এটি ব্যবহার করা আমার দরকার need আমার অ্যাডমিন সক্ষমতার অ্যাক্সেসও প্রয়োজন। সুতরাং যে কারণে, উপরের উত্তরগুলির কোনওটিই আমার পক্ষে কার্যকর হয়নি।
আমি আমার অ্যাপ্লিকেশনটির একেবারে শুরুতে একটি পদ্ধতি যুক্ত করেছি যা এটি প্রশাসক হিসাবে চালিত হচ্ছে কিনা তা পরীক্ষা করে এবং যদি তা না হয় তবে নিজেকে অ্যাডমিন হিসাবে পুনরায় চালু করুন unch এটি করার জন্য, আপনাকে নিম্নলিখিত রেফারেন্স যুক্ত করতে হবে।
using System;
using System.Diagnostics;
using System.Reflection;
using System.Security.Principal;
তারপরে আপনার এটির এমন কোনও জায়গা রাখতে হবে যা আপনার মূল পদ্ধতিতে অ্যাক্সেসযোগ্য y আমি ডাব্লুপিএফ ব্যবহার করছি তাই আমি এটিকে মেইনওয়াইন্ডো.এক্স্যামল সি-এ যুক্ত করেছি তবে আপনি এটি আপনার কোডের প্রথম দিকে যেকোন জায়গায় যুক্ত করতে পারেন। আপনার যদি প্রয়োজন হয় তবে এই পদ্ধতিগুলিতে "স্থির" যুক্ত করতে মনে রাখবেন।
private void AdminRelauncher()
{
if (!IsRunAsAdmin())
{
ProcessStartInfo proc = new ProcessStartInfo();
proc.UseShellExecute = true;
proc.WorkingDirectory = Environment.CurrentDirectory;
proc.FileName = Assembly.GetEntryAssembly().CodeBase;
proc.Verb = "runas";
try
{
Process.Start(proc);
Application.Current.Shutdown();
}
catch(Exception ex)
{
Console.WriteLine("This program must be run as an administrator! \n\n" + ex.ToString());
}
}
}
private bool IsRunAsAdmin()
{
try
{
WindowsIdentity id = WindowsIdentity.GetCurrent();
WindowsPrincipal principal = new WindowsPrincipal(id);
return principal.IsInRole(WindowsBuiltInRole.Administrator);
}
catch (Exception)
{
return false;
}
}
শেষ অবধি, আপনার প্রোগ্রামের শুরুতে, পদ্ধতির একটি রেফারেন্স যুক্ত করুন। আমার ক্ষেত্রে, আমি এটিকে মেইন উইন্ডোতে যুক্ত করেছি তবে এটি মূল কাজের সাথে যুক্ত করে।
public MainWindow()
{
InitializeComponent();
AdminRelauncher();
}
আশাকরি এটা সাহায্য করবে!
requireAdministrator
অনুমতি এবং ClickOnce অভিযোগ এটি সমর্থন করে না শুরুrequireAdministrator
। সমস্যাটি অত্যন্ত স্পষ্ট হওয়া উচিত। ক্লিকঅনস আপনার ম্যানিফেস্টে উন্নয়নের প্রয়োজনীয়তা দেখছে (যা আপনার আবেদনের অংশ হয়ে যায়)। আপনার এখানে আরও কী প্রয়োজন তা আমি নিশ্চিত নই ...