Feedback

C# - Anwendung unter XP/Vista als Admin starten [Übersetzung]

Veröffentlicht von am 02.05.2008
(2 Bewertungen)
Die in C# übersetzte Version von diesem Snippet von Volker Steitz:
http://www.dotnet-snippets.de/dns/vbnet-anwendung-unter-xpvista-als-admin-starten-SID407.aspx


Folgender Code muss noch eingefügt werden:
Zu den Using-Anweisungen:
using System.Security;
In den Konstruktor:
txtUser.Text = System.Environment.UserName;
GFU-Schulungen  [Anzeige]

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

C# 2017/2015/2013 Grundlagen

Nach Abschluss des Kurses sind Ihnen die Datentypen und Klassenbibliotheken von C# bekannt. Außerdem sind Sie in der Lage, mit Variablen umzugehen und deren Typen zu konvertieren. Sie definieren Namespaces und setzen diese ein, Sie erstellen eigene Klassen  und bauen Trouble Shooting ein.

        private System.Diagnostics.Process StartNewProcessWithAdminCredentials(string executablePathAndName, string sUsername, string startArguments)
        {
            System.Diagnostics.ProcessStartInfo newProcessStartUpInfo;
            try
            {
                if (startArguments != null)
                {
                    newProcessStartUpInfo = new System.Diagnostics.ProcessStartInfo(executablePathAndName, startArguments);
                }
                else
                {
                    newProcessStartUpInfo = new System.Diagnostics.ProcessStartInfo(executablePathAndName);
                }
                // Betriebsystem prüfen: XP oder höher (Vista = 6)
                if (System.Environment.OSVersion.Version.Major >= 5)
                {
                    newProcessStartUpInfo.Verb = "runas";
                    newProcessStartUpInfo.UseShellExecute = false;
                    newProcessStartUpInfo.Password = password;
                    newProcessStartUpInfo.UserName = sUsername;
                    return System.Diagnostics.Process.Start(newProcessStartUpInfo);
                }
                else
                {
                    return System.Diagnostics.Process.Start(newProcessStartUpInfo);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return null;
            }
        }
        private void Button1_Click(object sender, EventArgs e)
        {
            this.StartNewProcessWithAdminCredentials(@"Pfad der zu startenden Anwendung", txtUser.Text, null);
        }

        private void txtPass_Enter(object sender, EventArgs e)
        {
            password.Clear();
        }

        private void txtPass_KeyPress(object sender, KeyPressEventArgs e)
        {
            password.AppendChar(e.KeyChar);
        }

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!