Internet Explorer will sich nicht automatisch an Website anmelden

Gestern dank der Hilfe eines sehr sympathischen Kunden ein Issue bei einem anderen sehr sympathischen Kunden gelöst 🙂

Wir haben einen Webserver (Windows 2003, IIS 6) neu aufgesetzt und NTLM-Authentifizierung aktiviert, anonyme Anmeldung deaktiviert.

Wenn wir uns mit dem Client (IE 9) verbunden hatten, jedes mal der Anmeldedialog (Benutzername, Kennwort) im Internet Explorer, obwohl sowohl Client als auch Server in derselben Domäne waren.

Ein Telefonat später war die Lösung da:

Die Lösung war, dass zunächst die IP-Adresse/Name des Servers im IE-Client in eine definierte Zone gelegt wurde.

Anschließend konnten wir auf dieser Zone dann die Anmelde-Einstellungen (siehe erstes Bild oben) anpassen. Wir haben in unserem Fall einfach alles zugelassen (niedrigste Sicherheitsstufe).

Dann hat alles wie gewünscht funktioniert: Die Anmeldung an der IIS-6-Website funktionierte automatisch ohne extra Anmeldedialog.

Herzlichen Dank für den coolen Tipp!

Fehlermeldung „Column does not belong to table“

Bei mir trat/tritt von Zeit-zu-Zeit die Fehlermeldung „Column does not belong to table“ auf, jeweils mit einer angegebenen Spalte, z.B.

Column ‚TestPlanID‘ does not belong to table

Oder

Column ‚ParentID‘ does not belong to table

Bzw. auf Deutsch

Spalte ‚RunnableTestCaseID‘ gehört nicht zu Tabelle

Da das nur teilweise auftritt und nur bei manchen Kunden und nur wenn viele SQL-Anfragen hintereinander ausgeführt werden, hat mir dieser Blogpost hier geholfen.

Der Autor dort geht davon aus, dass er ggf. Connections nicht rechtzeitig schließt. Als er das beseitigt hatte und der Fehler immer noch auftrat, hat er folgende Schlussfolgerungen/Aktionen daraus gezogen:

  1. Use „iisreset“ command every time you stop the IIS server.
  2. Walk through your code and make sure you are closing connection properly.
  3. Use „Connection Lifetime“ property of connection pool if required.
  4. Try to use ClearAllPools/ClearPool in appropriate application event.

Bei mir hat das teilweise geholfen, ggf. ist das ja doch irgend ein .NET-Bug, der irgendwann mal mit den neuesten Treibern für Microsoft SQL Server beseitigt sind.

Ergänzung 1:

Gerade heute bekomme ich wieder eine ähnliche Meldung bei einem Oracle-Projekt:

Column „FACH“ does not belong to table

Ich deute das so, dass das auch beim Oracle-Treiber so ein Issue ist. Es handelt sich hier um eine ASP.NET-4.0-Webanwendung. Andere sprechen auch darüber, dass es bei Ihnen auch bei Oracle auftritt. Vermutlich also ein Issue in ADO.NET. Einer schreibt:

We had this exact problem and we solved it.

Using static (C#) or shared (VB) .Net data classes on a multi-processor server will cause this error. The data class and its objects, e.g. DataTable, get resused across threads for some reason. So when when two requests come in at the same time, the second request overwrote the DataTable object variable with its own results, causing the first request to fail when it went looking for its tables, columns, etc.

This problem only occurred on multi-processor servers and went away when we declared our data classes without static or shared.

Wobei ich ihm das nicht ganz glaube. der Oracle provider hat auch eine Funktion ClearAllPools/ClearPool, diese werde ich jetzt mal aufrufen.

Ergänzung 2:

Den Fehler konnte ich jetzt beim Oracle erfolgreich beseitigen, indem ich meinen (eigenen) Cache deaktiviert habe. Eventuell hängt es mit dem Background-Cache-Aufräumen zusammen oder mit zu vielen Elementen im Cache.

Ergänzung 3 (2013-04-22):

Hatte jetzt erneut so einen Fall, den ich durch Cache-Deaktivieren lösen konnte.

Eventuell ist es ja sinnvoll, wenn eine DataTable aus dem Cache geholt wird, diese zu clonen, so dass nur die gleiche, nicht jedoch dieselbe DataTable genutzt wird und es so nicht zu Concurrency-Issues kommen kann. (Habe das jetzt probiert, hat in meinen Tests keine Änderung gebracht, leider).

Export all Queries of a Microsoft Access MDB Database to Files

Exporting all QueryDefs contained within a Microsoft Access Database file (MDB) to single files is straightforward, once you know how.

The following VBA function does just this:

Public Sub ExportAllQueriesToFile()
    Dim qdf As QueryDef
    Dim strFileName As String

    For Each qdf In CurrentDb.QueryDefs
        If Left(qdf.Name, 1) <> "~" Then
            strFileName = qdf.Name & ".SQL"

            Set fs = CreateObject("Scripting.FileSystemObject")
            Set destinationFile = _
                fs.CreateTextFile("c:\" & strFileName, True)

            destinationFile.WriteLine "-----------"
            destinationFile.WriteLine qdf.Name
            destinationFile.WriteLine "-----------"
            destinationFile.WriteLine ""
            destinationFile.WriteLine qdf.sql

            destinationFile.Close
        End If
    Next qdf

    MsgBox "Done"
End Sub

Simply create a new VBA module inside the MDB file where you want to export the queries from and execute the function.

Optionally, adjust the destination folder path.

Exporting other objects like Reports or Forms

To export other objects, use the function ExportDatabaseObjects described in this forum posting.

This function exports

  • Tables definitions
  • Form definitions
  • Report definitions
  • Script definitions
  • Module definitions
  • Query definitions

from a given Microsoft Office Access MDB or ACCDB database file.

IIS-Fehlermeldung beim SSL-Zertifikat-Abschließen

Folgende Fehlermeldung trat bei mir auf, als ich eine Zertifikatsanforderung (CSR) mit einem von Thawte ausgestellten Zertifikat abschließen wollte:

—————————
Zertifikatanforderung abschließen
—————————
Die dieser Zertifikatdatei zugeordnete Zertifikatanforderung kann nicht gefunden werden. Zertifikatanforderungen müssen auf dem Computer abgeschlossen werden, auf dem sie erstellt wurden.
—————————
OK
—————————

Nach langem Suchen war die Lösung ganz einfach:

Die Fehlermeldung ist in Wirklichkeit eine Erfolgsmeldung, der Entwickler des Import-Assistenten hat hier wohl was durcheinander gebracht.

Also Meldung einfach ignorieren, das Zertifikat wurde erfolgreich importiert.

„ORA-12514: TNS: Listener kann in Connect-Deskriptor angegebenen Service aktuell nicht auflösen“

Fehlermeldung

Oracle-Fehlermeldung

ORA-12514: TNS: Listener kann in Connect-Deskriptor angegebenen Service aktuell nicht auflösen

Beim Zugriff auf eine Oracle Express Edition, die auf einem Windows-Server läuft.

Tritt auf nach

Neustart des Windows-Servers.

Genaue Ursache leider unbekannt.

Lösung

Bei mir hat geholfen, das Setup-Paket (OracleXE.exe) von Oracle Express Edition herunter zu laden, auszuführen und „Reparieren“ (bzw. „Wiederherstellen“, wie es hier heißt) auszuwählen.

Sofort nachdem der Setup-Aufruf beendet ist kann ohne Rechner-Neustart weiter gearbeitet werden.

LÖSUNG 2

Was in einem anderen Fall geholfen hat war, den (laufenden) Dienst „OracleServiceXE“ einfach nochmals neu zu starten. In diesem Fall war kein Setup notwendig.

Restart a Network Interface Card NIC programmatically via a Batch command file

Since my network card seems to misbehave recently, I wrote a short script to fix it by restarting the NIC automatically:

@REM ========================================================================
@REM Restarts the NIC if a ping is unsucessful.
@REM
@REM See http://itcookbook.net/blog/enabling-and-disabling-nics-commandline-windows
@REM
@REM To find out NIC number, use "wmic nic get name, index" once and change it.
@REM In this file below, it is "7".
@REM
@REM Written 2011-01-23 by Uwe Keim.
@REM http://www.zeta-uploader.com
@REM ========================================================================

@cls

ping www.google.com | find "Bytes="
if errorlevel 1 goto :mustrestart

@echo ---NOT RESTARTING NIC.
goto :eof

:mustrestart

@echo ---RESTARTING NIC.
wmic path win32_networkadapter where index=7 call disable
wmic path win32_networkadapter where index=7 call enable

:eof

I let Windows Task Scheduler call this script every 10 minutes and have a temporary workaround for my „broken“ NIC.

Important note: If you configure Task Scheduler, be sure to uncheck the option „Run only when a network connection is available“.

„Der Provider ist mit der Version des Oracle-Clients nicht kompatibel“

Fehlerbeschreibung

Ohne bewusste Änderung, erhalte ich auf einmal bei einem seit mehreren Monaten funktionierenden Visual-Studio-2010-Projekt einer ASP.NET-Website (4.0) die Fehlermeldung

Der Provider ist mit der Version des Oracle-Clients nicht kompatibel

beim Zugriff auf eine Oracle-Datenbank.

Ich habe keine Oracle-Komponenten geändert und auch auf dem Server keine Installationen vorgenommen. Trotzdem die Meldung.

Ursache

Nach einer Recherche, habe ich festgestellt, dass ich selbst Schuld dran war:

Vor ein paar Tagen, habe ich auf meiner Festplatte einen ominösen Ordner „C:\app“ gefunden. Da ich diesen nicht einordnen konnte, habe ich ihn vorsichtshalber mal gelöscht.

Lösung

Ich habe einfach den Ordner aus dem Papierkorb von Windows 7 wieder hergestellt, mein System neu gestartet und danach ging es wieder.