פקודה להרצת קוד C# במנהל בצורה אוטומטית - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

פקודה להרצת קוד C# במנהל בצורה אוטומטית


Kirma

Recommended Posts

אני רוצה שהתוכנה תפעל כמנהל באופן אוטומטי, ברגע שמפעילים אותה היא תבקש אישור מנהל

ניסיתי עם mainfest ללא הצלחה, אין אפשרות להגדיר לו mainfest ב VS10

ניסיתי את זה

      ProcessStartInfo pi = new ProcessStartInfo();
pi.Verb = "runas";
pi.FileName = Application.ExecutablePath;
Process.Start(pi);

ניסיתי לשים אותו במקומות שונים, אבל יש לו כמה בעיות.

1.הוא נפתח פעמיים, פעם כמנהל ופעם לא.

2.הוא נפתח בלי סוף.

3.ברגע שמפעילים את התוכנה לאחר שאני מאשר לו הרשאת מנהל, התוכנה נעלמת ונפתחת מחדש כמנהל.

קישור לתוכן
שתף באתרים אחרים

ניסיתי את זה, אבל עדיין נפתח פעמיים

      WindowsPrincipal pricipal = new WindowsPrincipal(WindowsIdentity.GetCurrent());
bool hasAdministrativeRight = pricipal.IsInRole(WindowsBuiltInRole.Administrator);
if (!hasAdministrativeRight)
{
ProcessStartInfo pi = new ProcessStartInfo();
pi.Verb = "runas";
pi.FileName = Application.ExecutablePath;
Process.Start(pi);
}

עריכה: אופסס, טעות שלי. שאני מנסה עכשיו זה כן עובד

כניראה אתמול מיקמתי את זה במקום לא טוב xD

קישור לתוכן
שתף באתרים אחרים

משום מה זה עדיין לא עובד.

חשבתי שזה עבד בגלל שהגדרתי לו ב manifest שירוץ כמנהל וזה עבד

עד שגיליתי שברגע שמעבירים את הקובץ זה מתבטל.. משהו מוזר.

למישהו יש רעיון ? אני משתמש ב VS10

קישור לתוכן
שתף באתרים אחרים

למה להסתבך כ"כ במקום פשוט לשים תנאי בmain של האפליקציה?

אם מדובר במנהל, אז להקפיץ בקשה לאישור, אם לא, אז להקפיץ הודעת שגיאה ולסגור.

אם המנהל אישר, אז להריץ את שאר התוכנית.

אין צורך להתחיל להדליק פרוססים חדשים...

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...