Anwendungen

Automatischer Redirect bei Firefox

10. März 2018 · Anwendungen · andreas · Kein Kommentar

Im lokalen Netz werkelt eine virutelle Linux-Spielkiste, welche auf Grund ihres Einsatzzwecks auf den Namen “sandbox” hört. Der auf dieser Maschine laufende Webserver ist aus dem lokalen Netz über die Adresse “http://sandbox” erreichbar.

Wenn die Kiste ausgeschaltet ist, führt ein Versuch, die URL in Google Chrome zu öffnen wie erwartet zu einer Fehlerseite mit dem Hinweis

Die Server-IP-Adresse von sandbox wurde nicht gefunden.

Firefox hingegen versucht ebenfalls - logischerweise ergebnislos - die URL zu öffnen und führt den verdutzten Anwender letztendlich zur Adresse “http://www.rotoworld.com/?ref=sandbox”, eine Vorgehensweise, welche auf den ersten Blick unschöne Methoden wie DNS-Hijacking (oder Schlimmeres) als Ursache vermuten lässt, letztendlich aber einen trivialen Grund hat, welcher bereits vor rund 7 Jahren Thema des Beitrags “Firefox fügt automatisch ‘www.’ und ‘.com’ an” war:

Wenn Firefox zu einer eingegebenen URL keine Verbindung bekommt, beginnt ein Verwirrspiel durch Anhängen einer Domainendung - in diesem Fall der Endung .“com”, die aus der ursprünglichen Adresse “http://sandbox” dann “http://sandbox.com” macht - welche zum gleichen Betreiber wie “http://www.rotoworld.com” gehört und letztendlich den Redirect erklärt.

Manchmal frage ich mich ernsthaft, was sich ein Programmierer bei der Implementierung solch sinnbefreiter Automatismen denkt: Wegen jedem Krimskrams wird irgendwo eine Leiste eingeblendet, die darauf hinweist, daß Firefox dieses, jenes oder noch was ganz viel tolleres könnte. Und bei sowas? Da wäre ein Hinweis “Address not found - redirecting to potentially unwanted site” wirklich hilfreich.


UltraEdit-Alternativen

29. Januar 2018 · Anwendungen · andreas · 1 Kommentar

Nachdem es bei UltraEdit zu einer für den Kunden alles andere als vorteilhaften Umstellung des Lizenzmodells kam, stellt sich die Frage, welche Alternative(n) in Frage kommen. Die Wahl eines Editors hängt hierbei extrem vom jeweiligen Anforderungsprofil ab, den richtigen Editor für jedermann kann und wird es nicht geben.

Wer die Anwendung morgens einmal startet, um den ganzen Tag kontinuierlich an einem Projekt zu arbeiten, für den spielen andere Kriterien eine Rolle wie für einen Systemadministrator, der öfter ein paar Änderungen an einem Skript oder einer Konfigurationsdatei vornehmen muss - das vielfältige Spektrum möglicher Vor- und Nachteile erstreckt sich von der reinen Startzeit über integrierte Funktionalitäten wie GitHub oder einen Debugger.

Neben der Wikipedia-Liste der Texteditoren bieten sich insbesondere die Developer Survey Results 2017 von stackoverflow als Grundlage für die Auswahl der Testkandidaten an.

Weiterlesen


UltraEdit-Lizenzierung

20. Dezember 2017 · Anwendungen · andreas · Kein Kommentar

Eine Neuinstallation des Betriebssystems ist in der Regel eine willkommene Möglichkeit, die täglich benutzten Werkzeuge auf aktuellen Stand zu bringen. Also kurz die im Februar verlängerte UltraEdit-Lizenz überprüft

===================================================== UltraEdit License Key ===================================================== UltraEdit Key - Your license is for version v24.x (Windows) and will work with the Windows, Mac, and Linux versions.

anschließend die aktuelle Version von UltraEdit (24.20.0.51) heruntergeladen und installiert. Leider folgte beim Klick auf “Aktivieren” eine unangenehme Überraschung:

Mit dem Lizenzschlüssel, der lt. E-Mail für die Version “v24.x” gültig ist, lässt sich die Version “v24.20” nicht aktivieren.

Eine kurze Nachfrage beim Hersteller IDM Software brachte Klarheit, daß es sich hierbei um ein Feature und nicht um einen Bug handelt:

This purchase included an upgrade to the latest version and the next release free, however it did not include 1 year of free upgrades. This license is eligible to run v24.10 of UltraEdit.

Tatsächlich hat sich wohl bei der Verlängerung der Lizenzen etwas geändert, ohne daß man als Kunde explizit darauf aufmerksam gemacht wurde. Sowohl auf der Website als auch in der Lizenzierungs-E-Mail steht neuerdings

Upgrades: 1 free upgrade to next release (standard)

wohingegen in früheren Lizenz-E-Mails

Upgrades: 1 Year (standard)

angegeben war.

Letztendlich scheint sich “next release” tatsächlich auch auf “Minor release” zu beziehen (also die Zahl nach dem Komma), wodurch aus meiner Sicht die Angabe “v24.x” zwar falsch ist, auf explizite Nachfrage vom Support aber so bestätigt wurde:

Next release means the next version that is released for the product. For example, if you purchase a license for v24.00, then the next version that was released after that would have been v24.10. A free upgrade to the next release does include major and minor releases. While the upgrade may be a minor release, all our releases include new features and enhancements that benefit the user.

Als zahlender Kunde kann man hier nur verständnislos den Kopf schütteln, hat die Lizenzverlängerung (die mit immerhin rund 50€ zu Buche schlägt) für gerade einmal 9 Monate “gereicht”.

Glücklicherweise gibt es eine große Anzahl an sinnvollen Alternativen - die Developer Survey Results 2017 von stackoverflow bieten für die Auswahl eine gute Grundlage.


Vorschau-Updates auf dem WSUS automatisch ablehnen

05. September 2017 · Anwendungen · andreas · 1 Kommentar

Leider hat Microsoft in der GUI des WSUS keine Möglichkeit vorgesehen, die monatlichen Vorschau-Updates beim Einsatz automatischer Genehmigungen über einen Filter ausschließen zu können.

Gelöst werden kann diese Problem mittels der Powershell bzw. eines Powershell-Skripts, das auch als Powershell-Laie mit einem guten Tutorial sowie Google in endlicher Zeit zusammengesucht- und kopiert werden kann.

Als erstes müssen die für WSUS notwendigen Assemblies geladen werden

[reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration") | Out-Null

Dann wird die Verbindung zum WSUS-Server hergestellt

$wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::getUpdateServer()

Sofern die Freigabe der Updates nicht für alle Computer, sondern nur für bestimmte Gruppen vorgenommen werden soll, kann die entsprechende Gruppe zur späteren Verwendung festgelegt und zur Kontrolle ausgegeben werden

$group = $wsus.GetComputerTargetGroups() | where {$_.Name -eq 'Update mit WSUS'} Write-Host ($group | Format-Table | Out-String)

Für die Freigabe bzw. das Ablehnen interessieren nur solche Updates, die zum einen noch nicht genehmigt (oder abgelehnt) wurden und auch erforderlich sind:

$updateScope = New-Object Microsoft.UpdateServices.Administration.UpdateScope $updateScope.ApprovedStates = [Microsoft.UpdateServices.Administration.ApprovedStates]::NotApproved $updateScope.IncludedInstallationStates = [Microsoft.UpdateServices.Administration.UpdateInstallationStates]::NotInstalled

Zu Informationszwecken kann die Menge an zu bearbeitenden Updates ausgegeben werden

$totalUpdateCount = $wsus.GetUpdateCount($updateScope) Write-Host "Updates to process:", $totalUpdateCount

Dann werden die Updates in einer Schleife abgearbeitet

$wsus.GetUpdates($updateScope) | ForEach { Write-Host $_.Title, "- " -NoNewline

Sofern im Titel kein “Preview of” vorkommt, soll das Update genehmigt werden. Die Titel werden in englischer Sprache verarbeitet, so daß nach “2017-05 Preview of Monthly Quality Rollup for Windows 7 for x86-based Systems (KB4019265)” statt “2017-05 Vorschau des monatlichen Qualitätsrollups für Windows 7 für x86-basierte Systeme” gesucht werden muss:

if (-not ($_.Title -like "*Preview of*")) {

Falls zur Installation eine Lizenzvereinbarung angenommen werden muss, kann dies ebenfalls über das Powershell-Skript erfolgen

if ($_.RequiresLicenseAgreementAcceptance) { $_.AcceptLicenseAgreement() }

Anschließend wird das Update zur Installation in der oben festgelegten Gruppe genehmigt:

$_.Approve("Install", $group) Write-Host "approved" -ForegroundColor green }

Sofern es sich um ein Vorschau-Update handelt, wird das Update stattdessen abgelehnt

else { $_.Decline() Write-Host "declined" -ForegroundColor red } }

Am Ende des Skripts erfogt dann noch die Ausgabe, daß das Skript tatsächlich am Ende angekommen ist

Write-Host "done."

AMD External Events Utility loswerden

02. September 2017 · Anwendungen · andreas · Kein Kommentar

Nach dem Wechsel von einer AMD zu einer NVIDIA-Graphikkarte blieb, trotz der Anweisung an den Uninstaller, bitte alles von AMD zu entfernen, noch das AMD External Events Utility als Dienst installiert, welches bei jedem Systemstart automatisch ausgeführt wurde. Leider ist unter “Programme und Funktionen” keine weitere Möglichkeit vorgesehen, den nicht mehr benötigten Dienst loszuwerden.

Der erste Weg sollte in die Dienst-Verwaltung von Windows führen, wo neben der Änderung des Starttyps auf “Deaktiviert” der Dienst auch direkt gestoppt werden kann.

Gleichzeitig kann aus diesem Dialog auch der interne Name des Dienstes (in diesem Fall identisch mit dem Anzeigenamen) sowie der Pfad zur ausführbaren Datei entnommen werden.

Die graphische Oberfläche bietet leider keine weiteren Möglichkeiten, einen Dienst aus dem System zu entfernen, dies kann aber über die Kommandozeile vorgenommen werden.

Nachdem man sich mit “query” nochmal vergewissert hat, auch den richtigen Dienst löschen zu wollen

C:\Windows\system32>sc query "AMD External Events Utility" SERVICE_NAME: AMD External Events Utility TYPE : 10 WIN32_OWN_PROCESS STATE : 1 STOPPED WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0

kann die eigentliche Löschung dann mittels dem Parameter “delete” der Dienst aus der Systemkonfiguration entfernt werden.

C:\Windows\system32>sc delete "AMD External Events Utility" [SC] DeleteService ERFOLG

Wer mutig ist noch weiter aufräumen möchte, kann anschließend noch eine Säuberung des “%SYSTEMROOT%\System32”-Verzeichnisses vornehmen, in dem aber neben der eigentlichen Dienstdatei “atiesrxx.exe” noch weitere 37 Dateien zu finden sind, welche alle mit “ati*” beginnen.