Systemsteuerung

Wer hätte das gedacht...

Obwohl ich schon gefühlte drölfzigtausendmal Windows installiert habe, das wusste ich noch nicht.

Es ist ja immer die Ersteinrichtung und ggf. später noch die Wartung des Systems. Ich vermute mal jeder war schon mal in der Systemsteuerung. Seit Vista (oder war es XP?) ist diese ja gruppiert. Gut, kann man ändern wenn man die Ansicht auf "Kleine Symbole" umstellt. Trotzdem...

Aber es gibt eine versteckte 2. Systemsteuerung. Der weg diese frei zu schalten ist mir aber neu gewesen. Befehle wie "regedit.exe", "gpedit.msc", ... sind wohl den meisten bekannt. Hier ist es etwas anders.

Erstellt einfach einen neuen Ordner auf dem Desktop (oder wo anders, tut nichts zur Sache) und nennt ihn "Systemsteuerung2.{ED7BA470-8E54-465E-825C-99712043E01C}". Das was vor dem . steht ist frei wählbar, der Rest ist wichtig. Das Symbol ändert sich und wenn ihr per Doppelklick in den "Ordner" gehen wollt öffnet sich die 2. Systemsteuerung.

Das war's schon. Ganz einfach, wenn man es weiß.

Via:


Aus irgend einem Grund…

… ich weiß nicht warum. Aber zumindest bei einem frisch installiertem Windows 7 klappt es nicht mehr statt Windows Updates auf Microsoft Updates umzuschalten. Letzteres würde auch Updates für Office, SQL Server und weitere beziehen.

Hätte ich gerne. Aber das Aktivieren geht nicht mehr. (Absicht?) Erst nach der Installation (und erstmaligem Starten) von Office funktioniert es.

Daher habe ich gesucht und ein kleines VBScript im Netz gefunden was ich leicht angepasst habe. Dadurch werden die Microsoft Updates aktiviert. Hier aber als startbare Datei, weil benutzerfreundlicher.

Edit 08.06.2016:
Wichtig: Der PC muss über eine Internet Verbindung verfügen, sonst funktioniert es nicht. Warum? Keine Ahnung. Ist einfach so.

Quelltext und Download:

Quelltext:

Wieder recht klein, aber erfolgreich. Da es aus VBS kommt is nich mit Option Strict. Egal, ist zwar unschön, aber geht auch so.

Friend Module App

        Friend Sub Main()

                Dim ServiceManager = CreateObject("Microsoft.Update.ServiceManager")
                ServiceManager.ClientApplicationID = "ActivateMSUpdates"
                Dim NewUpdateService = ServiceManager.AddService2("7971f918-a847-4430-9279-4a52d1efe18d", 7, "")

        End Sub

End Module

Projekttyp VB.Net, Framework 2, Konsolenanwendung, Starttyp Sub Main.

Download:

ActivateMSUpdates.exe (7,50 kb)


Man muss sich nur zu helfen wissen…

… so heißt es. Die Windows UAC hat mich heute geärgert. Kann mal vorkommen bei älterer Software die dem Betriebssystem nicht mitteilt dass sie Admin Rechte braucht. Fazit: Die Installation schlägt fehl.

Häufig reicht es dann eine Befehlszeile (cmd) als Admin zu öffnen und die Anwendung oder Befehle darin zu starten. Aber das ist mit Tipperei verbunden und für manche Leute unzumutbar. In meinem Fall hat mich das Microsoft SQL Server 2005 Management Studio geärgert.

Man könnte jetzt sagen, ja, Rechtsklick und „als Administrator starten“. Klar. Geht bei .msi Dateien aber nicht ;)

Da ich primär nach universell nutzbaren Lösungen suche die auch Nutzerfreundlich sind habe ich mal ein kleines Programm geschrieben was im Endeffekt nichts Anderes macht als zu verlangen dass es als Admin gestartet wird und dann die Datei startet die im Dateinamen steht.

Beispiel und Verwendung:

Wenn die Datei „RunAsAdmin_test.exe.exe“ heißt würde sie die Datei „test.exe“ ausführen. Ein einfaches Umbenennen reicht also. Alle Parameter und Rückgabewert wird weiter geleitet. Das ganze funktioniert mit allen startbaren Dateien, wie .exe, .bat, .msi, …

Quelltext und Download:

Quelltext:

Der Quelltext ist so klein, da lohnt sich NoPaste nicht:

Friend Module App

        Friend Function Main(ByVal Args As String()) As Integer

                Using p As New Diagnostics.Process
                        p.StartInfo.Arguments = String.Join(" ", Args)
                        p.StartInfo.FileName = IO.Path.GetFileNameWithoutExtension(Environment.CommandLine.Trim.Trim(""""c)).Substring(11)
                        p.Start()
                        p.WaitForExit()
                        Main = p.ExitCode
                End Using

        End Function

End Module

Das wars schon. … Naja, fast. In den Projekteigenschaften muss noch festgelegt werden dass die Anwendung Admin Rechte benötigt. VB.Net, Framework 2.0, Starttyp Sub Main, Konsolenanwendung.

Alternativ hier der Download:

RunAsAdmin_test.exe.exe (7,50 kb)

Es sind manchmal eben auch die kleinen Dinge die die Welt begeistern ;)