EFM01 läuft nicht mehr unter Windows XP (SP3)

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • EFM01 läuft nicht mehr unter Windows XP (SP3)

      Hallo,

      mein EFM01 Modul läuft nicht mehr unter Windows XP (32 bit, SP3). Man kann den Treiber installieren (UDK2.1.0.0), das Modul wird auch korrekt erkannt und im Geraetemanager angezeigt. Wenn ich nun auf das Modul zugreifen will, dann bekomme ich folgende Exception:

      Failure in enumeration (DeviceIoControl(IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME) failed) SystemError: 0x00000002 => Das System kann die angegebene Datei nicht finden..

      Das passiert auch, wenn man die im UDK mitgelieferten Executables ausfuehrt, z. B. udkapitest. Vor ca. 1 bis 2 Jahren hat es auf demselben PC noch unter Windows XP funktioniert. Ich habe es weiterhin auf einer frischen Windows XP (SP3) Installation auf einem anderen PC probiert. Das Ergebnis ist dasselbe, es funktioniert nicht.

      Es gibt keinerlei Probleme unter Windows 7 (32 und 64 Bit).

      Ich bin inzwischen etwas ratlos und würde mich freuen, wenn mir jemand einen Tip geben könnte.

      Viele Grüsse, Torsten
    • Ich hatte kuerzlich mal wieder Zeit, etwas tiefer in das Problem
      einzusteigen. Auf dem einen Rechner gibt es ein Geraet ohne Treiber. Ich
      habe es mal deaktiviert, das hat aber nichts gebracht. Auf dem anderen
      Testrechner sind alle Geraete mit Treibern versehen und funktionieren
      problemlos. Das allein kann also nicht die Ursache sein.



      Ich habe allerdings inzwischen fuer die UDK2.1.0.0 einen Workaround
      gefunden. Ich habe in der Prozedur "void ceUSBHubScanner::Scan()"
      (usbwin.cpp) den Anweisungsteil in folgender IF-Abfrage:



      if(0 == DeviceIoControl(

      hFile,

      IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME,

      pName,

      1024,

      pName,

      1024,

      &dwR,

      0))

      {

      ..... throw exception ....

      }



      durch ein "continue" ersetzt. Damit wird der Fehler immer ignoriert. Das
      ist zwar eigentlich kein guter Stil, aber in meinem Fall funktioniert
      die UDK nun auch wieder auf Windows XP. Ich habe bisher keine negativen
      Auswirkungen festgestellt. Ich habe den veraenderten Code auf mehreren
      Rechner (Win7 und WinXP) ausprobiert. Daher kann ich bis auf weiteres
      mit diesem Workaround gut leben.



      Viele Gruesse, Torsten
    • Hallo,

      wir hatten die gleiche Problematik bei der Entwicklung unseres neuesten Gerätes auf einem Testrechner. Es liegt daran, das hier versucht wird, den Namen des Treibers abzufragen, was bei Geräten ohne Treiber mit Fehler beantwortet wird. Sie haben auf jeden Fall an der richtigen Stelle berichtigt. Diese Änderung wird im nächten UDK-Release mit einfließen.
      Thomas
      Software development
      Cesys GmbH