Sonntag, 8. August 2021

A dll required for this install to complete could not be run - surprising solution!

When trying to install a new program on my Win 10 PC, the setup aborted with an error message that was not very informative. In essence it said: "A dll required for this install to complete could not be run". And now? Which library (dll) should it be, what do I have to do to make it work? If you google this problem, a few million finds are displayed - so that's definitely not just my problem. There are many offers of help (which, as is so often the case, have copied from each other) and essentially amount to a lack of rights, missing updates or system repairs. All very time-consuming and - mostly completely useless, as I could see from the many frustrated comments in the forums. In any case, none of this helped me.

So I was now looking for a way to have a log written during the installation, in which the disturbing DLL will hopefully appear with its full name, so that I can replace it or provide it with rights if necessary. There is actually a command prompt that does just that:

msiexec.exe / i "The MSI-file To install (full path)" / L * vx "The log-file to write.txt (will be created / overwritten)"

The command prompt MUST run with administrator rights!

I quickly created a batch file with the above command and placed it on the desktop. I could then simply start it as admin with a right click. And now the highlight: the setup ran in this way without any further problems, the program was installed without errors. The log was also generated and was full of entries that I did not understand. Anyway, the DLL problem was solved!

P.S: Maybe the cracks at Microsoft should think hard about why it works this way and not the 'normal' way?

Montag, 13. April 2015

Event von Web-Usercontrol als Repeater-Element auslösen

Wenn man ein Usercontrol als Listen-Element in einem Repeater einsetzt, will man wahrscheinlich auf Klicks innerhalb des Controls im Repeater reagieren. Eigentlich kein Problem, man muss nur im selbstgebauten Control ein Public Event definieren und beim passenden Klick das Event auslösen. Außerdem muss das Event natürlich im Repeater registriert werden, um darauf zu reagieren.

In VB .NET sähe das so aus:

Z.B. im Usercontrol:

Public Event Changed(sender As Objecte As EventArgs)

Dann in der Klick-Routine:

RaiseEvent Changed(MeNew EventArgs)

Und im Repeater wird dieses Event so registriert:

AddHandler <Usercontrol>.ChangedAddressOf <Subroutine>

Soweit so gut.

Die Frage ist allerdings, wann registriere ich den Eventhandler? Ich habe das zunächst innerhalb des ItemDataBound-Ereignisses im Repeater gemacht. Was mir deshalb logisch erschien, weil zu dem Zeitpunkt das Usercontrol vorhanden sein muss. Doch, wie ich nach etlichen Versuchen feststellte, es wird dann nie ausgelöst, bzw. es wird im Usercontrol ausgelöst aber kommt nie im Repeater an. Echt frustrierend.

Die Lösung ist, wie immer einfach, wenn man's weiß: das Event muss unbedingt im ItemCreated-Ereignisses des Repeaters registriert werden! Denn dies Event wird bei jedem Aufruf der Seite, auch bei Postbacks aufgerufen!

Sonntag, 5. April 2015

Stylesheet in ASP. NET Mastersite funktioniert nur mit runat=“server“ Attribut!

Hat mich eine gute Stunde Websuche gekostet, bis ich herausgefunden hatte, warum bei allen Pages CSS nicht funktionierte, obwohl der Stylesheet-Link ordnungsgemäß im HEAD-Tag der Masterseite stand. Diesen Link trägt Microsoft bzw. Visual Studio selbst ein, sobald man der Seite einen Stil zuordnet. Das sieht dann so aus:

   <link href="../<Ordner>/<style>.css" rel="stylesheet" type="text/css" />

Scheinbar alles okay, funktioniert auch super im Designmodus der Masterpage. Aber eben nicht auf den zugeordneten Pages. Ich hab es dann damit versucht, den Style-Link auf jeder Page zusätzlich einzutragen – ohne Erfolg. Schließlich hatte ich die Lösung im Netz gefunden (nachdem alle möglichen Vorschläge nicht funktionierten, z.B. den DOCTYPE zu ändern, oder die css-Datei im Root-Ordner zu speichern). Es fehlt lediglich ein runat-Attribut und der Pfad muss mit der Tilde ‚~' beginnen (das media-Attribut ist optional). Also:

   <link href="~/<Ordner>/<style>.css" rel="stylesheet" type="text/css" runat="server" media="screen" />

Und schon läuft es wie geschmiert. – Allerdings nicht bei UserControls. Da muss ich noch eine Lösung finden, wie dort das CSS auch im Design angezeigt wird.

Freitag, 30. Januar 2015

Was mich ärgert - Rundfunkbeitrag

Rundfunkbeitrag. Schon das Wort ist gelogen. Unter Beitrag versteht doch jeder, dass man etwas freiwillig gibt. Den Rundfunkbeitrag muss aber jeder Haushalt zahlen, egal ob er die Öffentlich-Rechtlichen nutzt oder nicht. Sogar Blinde, Taube und Demente. Die korrekte Bezeichnung wäre also Rundfunkabgabe, oder am besten gleich Rundfunksteuer. 210 Euro pro Jahr muss jeder Haushalt berappen, damit ARD, ZDF & Co uns rund um die Uhr mit einem Programm versorgen, das kaum jemanden interessiert. Da kommen satte 7 ½ Milliarden Euro zusammen, das entspricht ungefähr dem Bruttoinlandsprodukt von Malta. Ein Haufen Geld. Die Malteser wären sicher ganz aus dem Häuschen, wenn sie alles, was sie im Jahr erwirtschaftet haben, gegen so etwas Schönes wie ‚die Küchenschlacht' oder ‚Das Quizduell' tauschen dürften.

Die Rundfunksteuer wurde eingerichtet, damit das System gerechter wird, sagen die Politiker. Tatsächlich ging es wohl eher darum, die wachsenden Probleme mit der Rundfunkgebühr und den Methoden der GEZ durch eine staatliche Lösung zu beseitigen. Klagen dagegen wurden bisher konsequent abgeschmettert, vor allem mit der Begründung, dass ein unabhängiger Journalismus für eine Demokratie unverzichtbar sei. Unabhängig? Wie unabhängig können Sender wohl sein, deren Existenz komplett vom Goodwill der Politiker abhängt? Jeder Festangestellte der Öffentlich-Rechtlichen hat quasi Beamtenstatus und kann sorgenfrei seine Zukunft planen, ganz im Gegensatz zu denen, die diesen Status finanzieren müssen, nämlich wir! Und mal ehrlich, wer würde schon diesen wunderbaren Zustand aufs Spiel setzen, indem er sich kritisch mit der Regierung und unserem politischen System auseinandersetzt?

Es gibt einen Rundfunkstaatsvertrag, indem festgelegt wurde, was genau die Aufgaben von ARD & Co sind, aber es gibt auch findige Juristen, die die Paragrafen solange dehnen, bis die ‚Helene Fischer Show' ein kulturelles Ereignis von nationalem Rang ist. Nichts gegen Helene Fischer oder ihre Fans; aber nach meiner Erfahrung kommen auf jeden, der die Künstlerin sehen will, mindestens neun andere, die gut darauf verzichten können. Nun, mittlerweile heiligt die Einschaltquote jede noch so dümmliche Show zur Hauptsendezeit. Dabei steht kein Wort von irgendwelchen Quoten im Staatsvertrag, allerdings eine Menge über den Informations-, Bildungs-, Kulturauftrag. Um aber ein hochwertiges Programm in diesen Bereichen zu machen, braucht man Zeit und Geld und Leute, die ihr Handwerk gelernt haben.

Gründliche Recherche bei mindestens zwei unabhängige Quellen – wozu? Man kann doch viel bequemer ungeprüft senden, was der News-Markt so hergibt. Schönes Beispiel dafür war der angebliche Marsch von 50 Staatsoberhäuptern in vorderster Front bei der ‚Je suis Charlie'- Demo in Paris. Tatsächlich hatten sich Merkel & Co nur für ein paar Minuten untergehakt und sind 100 Meter unter strengster Bewachung weit entfernt von den Bürgern gegangen um anschließend in ihre Staatskarossen zu steigen und abzuhauen. Auf allen Kanälen waren danach hübsche Schnittbilder zu sehen, Hunderttausend Demonstranten, angeführt von den mutigen Politikern und dazu gab es jubelnde Kommentare. So etwas nennt man Manipulation und devote Hofberichterstattung. Auch dafür zahlen wir 210 Euro im Jahr.

Man mag es bei 7 ½ Milliarden Euro kaum glauben, aber das Geld für hochwertige, akribisch überprüfte politische Beiträge fehlt, weil es vor allem für Sportlizenzen, Fernsehshows und externe Produktionsfirmen gebraucht wird, die uns etwa mit diesen wunderbaren Talkshows versorgen, in denen die immer gleichen Köpfe sattsam Bekanntes von sich geben dürfen. Wie im Karussell tauchen diese Sprechautomaten nacheinander bei Illner, Jauch, Will, Maischberger auf und versorgen uns mit Platituden und BlaBla, Hauptsache, es kommt nicht zu einer ernsthaften Diskussion über echte gesellschaftliche Probleme oder gar das politische Personal. Auch dafür zahlen wir den Rundfunkbeitrag, ob wir wollen oder nicht. Wo bleiben die kritischen Beiträge zu TTIP, Billionenankäufe der EZB, zum Wachstumswahn, zur Verarmung in Deutschland, über die Macht der Lobbyisten und die Ohnmacht der Bürger; warum überträgt man wieder live die Tour de France, obwohl man doch weiß, dass die Mehrheit der Fahrer nach wie vor gedopt ist, wo bleiben die investigativen Berichte über Korruption bei Banken, Industrie und Politik. Stattdessen bekommen wir nur eine weitere seichte Trivialserie mit Frau Berben, Hörbiger oder Neubauer in der Hauptrolle. Das alles zum Preis eines Mittelklassewagens – pro Minute, versteht sich.

Sicher, Fernsehen ist nicht das Wichtigste auf der Welt und im Grunde könnte es mir egal sein, welchen Müll ZDF & Co Tag für Tag in den Äther blasen, genauso, wie es mir bei RTL & Co tatsächlich wurscht ist. Aber für die Privaten müssen wir keine Zwangsabgaben leisten und sie machen auch kein Hehl daraus, dass sie am Gängelband der Industrie hängen. Jeder weiß, dass er durch das Anschauen der üppigen Werbeblöcke ihre Existenz sichert. Wenn keiner mehr guckt sind sie weg. Die öffentlich-rechtlichen aber eben nicht. Selbst wenn niemand mehr einschalten würde, wäre ihnen immer noch unser ‚Beitrag' sicher, 7 ½ Milliarden pro Jahr.

Apropos, was ist eigentlich mit Malta passiert, nachdem die Banken dort nach der ersten Hilfe der EU nach weiteren Milliarden riefen? Wurde gezahlt? Dazu hätte ich gern etwas in ARD, ZDF & Co gesehen.

Mittwoch, 11. Juli 2012

Win7 Domäne zurück zur Arbeitsgruppe

 

Wir haben einen neuen SMS Server im Keller eingerichtet und natürlich wollte ich die PCs nun auch in der Domäne anmelden und die Vorteile von ActiveDirectory nutzen.

Also habe ich den Computer von der Arbeitsgruppe XYZ auf die Domäne XYZ umgestellt und neu gestartet. Nun musste ich mich mit Strg+Alt+Entf anmelden, was mich etwas stutzig machte, aber okay, also Usernamen und PW angegeben und los ging’s. Alles okay, vertrauter Desktop und nun konnte ich im Netzwerk auch den Server sehen. Perfekt.

Aber die Anmeldung. Ich hatte vorher Autologin konfiguriert (z.B. so) und das wollte ich auch hier so haben. Also bin ich dieser Anleitung gefolgt:

REGISTRY
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon]
"AutoAdminLogon" = "1"
"ForceAutoLogon" = "1" – GEFÄHRLICH"!
"DefaultUserName" = "XXXX"
"DefaultPassword" = "xxxxx"
"DefaultDomainName" = "xxx"

Das habe ich gemacht, und es hat auch funktioniert. Doch nach dem Neustart hatte ich plötzlich einen fast jungfräulichen Windows-Desktop vor mir. Grund: der Server hat mein Desktop lokal gespeichert und liefert ihn auf Anmeldung an meinen Rechner aus.

Das war nicht, was ich wollte, schließlich müsste ich jetzt alle Programme wieder komplett neu konfigurieren. Also erst mal alles zurück. Ab in die Registry und Autologin zurücksetzen. Denkste Trauriges Smiley! Seit der Ummeldung bin ich nämlich kein Administrator mehr und darf solche Änderungen gar nicht vornehmen!

Gut, dann eben abmelden und als lokaler User wieder anmelden. – Das klappt nicht, denn "ForceAutoLogon" ist gesetzt und sorgt dafür, dass sofort wieder angemeldet wird. Und nun?

Nachdem ich zig Einstellungen am Server vorgenommen und etliche Foren ohne Erfolg durchstöbert habe, war mir klar, dass ich es schaffen müsste, mich wieder als lokaler User anzumelden, ansonsten würde nichts funktionieren.

Früher konnte man das Autologin durch Drücken der SHIFT-Taste unterbrechen, aber das funktionierte bei Win7 einfach nicht. Dann, nach längerer Suche fand ich den Tipp, BEIDE Shift-Tasten abwechselnd zu drücken, nachdem man 'Abmelden’ beim Computer gewählt hat. Und, siehe da, es funzt. Man kann nun wieder Strg-Alt-Entf drücken und bekommt den gewohnten Anmelde-Bildschirm. Einmal den Domäne-User und dann die Möglichkeit sich als anderer Benutzer anzumelden. Darauf klicken, den Namen des Computers und den lokalen User (“COMPUTER\USER”) und Passwort angeben, und – man ist wieder dort wo alles begann, und kann nun notfalls alles wieder zurücksetzen. Was für eine Erleichterung! 

Ich poste das hier, weil ich mal vermute, dass es einen Haufen Leute gibt, die genau vor demselben Problem stehen und schon kurz davor stehen, Windows neu zu installieren.

Samstag, 27. August 2011

IP(s) auf Server 2003 gezielt sperren

Hier gibt es ein sehr hilfreiches Step-By-Step Tutorial, wie man mithilfe des IP Security Policy Management einzelne IP-Adressen sperren kann. Z.B. bei anhaltenden brute force Attaken.

Dienstag, 2. August 2011

Liebe geht anders.: Bald geht's los

Liebe geht anders.: Bald geht's los: "Hallo liebe Besucher! Und willkommen in meinem Blog. Ich würde mich sehr freuen, wenn ihr mir ein bisschen Gesellschaft leistet, während ic..."

Endlich hat sich meine Tochter durchgerungen, das öffentlich und regelmäßig zu tun, was sie am besten kann - schreiben. Ihre Art, die Welt und das darauf agierende Ensemble zu beschreiben ist höchst amüsant und manchmal auch sehr berührend. Alle, die bisher etwas von ihr gelesen haben, wollten danach nur noch eins: mehr!