FAQ


 
Oft gestellte Fragen - hier die Antworten
FAQ steht für "frequently asked questions"

  Zurück zur Übersicht



Karten-Treiber

Unterstützt der 32 Bit KlibDrv-Treiber auch 64 Bit Betriebssysteme?

Es gibt zwei KLibDrv.DLLs die 32- oder 64-Bit Windows-Systeme unterstützen. Die Trennung erfolgt erst anschließend über den 32- oder 64-Bit SYS-Treiber. Somit sind alle DLL-Funktionen bei beiden Plattformen identisch. Ältere 32-Bit Programme können (so lange diese x64-Bit konform sind) mit dem neuen SYS-Treiber auf x64-Bit Plattformen mit WOW weiter genutzt werden. In vielen Fällen ist nicht einmal eine Anpassung im Quellcode notwendig. Weitere Infos unter: http://msdn.microsoft.com/en-us/library/ff563897

Beispiel:

A) 32Bit: Anwendung.EXE -> KLibDrv.DLL (52KB) -> KLibDrv.SYS
B) 64Bit: Anwendung.EXE -> KLibDrv.DLL (168KB) -> TVicHW64.SYS

Wie kann der x64-Bit KLibDrv (mit TVicHW64.SYS) am einfachsten installiert werden?

- Nach dem Einstecken der PCI-Karte meldet Windows 64Bit als erstes: "Die Gerätetreibersoftware wurde nicht installiert". Das ist o.k. 
- Öffnen Sie den Gerätemanager. Dort befindet sich im oberen Teil "Andere" ein gelbes Ausrufzeichen -> Doppel-Klick auf diesen Eintrag
- Klicken Sie nun auf Treiber aktualisieren
- Klicken Sie unter Punkt 2 jetzt -> "Auf dem Computer nach Treibersoftware suchen"...
- Geben Sie den richtigen Pfad auf der Treiber-CD ein: ...CDROM...\Drivers\PC-Karten\WIN_ALL64
- Auf "Weiter" klicken 
- Windows meldet: "Treibersoftware wird installiert"  und öffnet ein weiteres Fenster zur Auswahl/Abfrage 
- Klicken Sie nur den unteren Teil an: "Diese Treibersoftware trotzdem installieren
- Jetzt ca. 1 min. abwarten, bis der Treiber eingebunden wurde. Klicken Sie nichts anderes an während der Treiber installiert wird !!!
- Windows meldet danach: "Treibersoftware wurde erfolgreich installiert"  PCI-NAME-DER-KARTE
- Klicken Sie auf "Schließen" 
- Prüfen Sie im Gerätemanager-Hauptfenster unter "Multifunktionsadapter" den Eintrag der Karte, ob Ressourcen vergeben wurden
- Schließen Sie jetzt alle Fenster und starten Sie den Rechner neu !!! 
- Fertig 

Wieviele PCI-Busse unterstützt der KLibDrv-Treiber (x64 Bit Version) ?

Die neue DLL unterstützt bei x64 insgesamt 255 PCI-Busse. Den Treiber finden Sie unter: Download

Gibt es eine gemeinsame DLL für 32- und 64-Bit-Windows ?

Ja. Wenn Sie z.B. die gleiche Anwendung (ungeändert) unter 32 und 64 Bit Windows weiter nutzen möchten -> siehe Download

Wieso benötigt man einen anderen Treiber unter 64-Bit OS ?

Bei der 64-Bit Version werden andere System-Treiber verwendet, da 32- und 64 Bit Anwendungen bzw. Betriebssysteme nicht kompatibel sind. Die DLL-Funktionen sind in den Aufrufen und im Handling zwar identisch, die neue DLL (nebst TVICHW64.SYS) müssen dennoch ersetzt werden. Die Installation ist hier auf der FAQ Webseite ausführlich beschrieben und wird über das Setup64.INF während der Treibersuche vorgenommen. Bitte den Treiber über den Pfad manuell installieren (nicht automatisch über den Assistenten). Die 64-Bit-DLL trägt den GLEICHEN Namen (= KLibDrv.DLL), damit man ggf. den Quellcode leichter anpassen kann. 

Unterstützt der x64-Bit Treiber auch echte/native x64-Bit Anwendungen ?

Nein. Die neue DLL koordiniert alle bisherigen Funktionsaufrufe von 32-Bit Anwendungen auf einen 64-Bit SYS-Kernel-Treiber um. Dazu wird die Windows WOW64 Subsystemfunktion genutzt. Somit ist eine leichte Migration von bestehenden Anwendungen auf 64-Bit BS i.d.R. ohne weitere Änderungen des Source Code möglich ! 

Weitere Info finden Sie unter: 
http://www.planet3dnow.de/artikel/diverses/wow64/
http://www.windows-64bit-software.de/index.php?artikel=3
 

Welche Funktionen werden in erster Linie vom KlibDrv-Treiber unterstützt?

  • direct port I/O access
  • access to PCI configuration data allowing enumeration of Kolter-PCI devices
  • PCI-Bus Infomationen
Wie öffne ich den KlibDrv-Treiber um einen handle zu generieren?

#include "Klibdrv32.h"
HANDLE  HwCtrl=NULL;
...
HwCtrl = OpenTVicHW32(HwCtrl,"KLIBDRV","KLIBDevice0");
...
Siehe Code auf der Treiber-CD: ..\Sourcen\visual-c\portctest\portctestDlg.cpp

Wo findet man weitere Code-Beispiele zum Treiber-handling? 

Hier:  faq003-a.html

Wieviele Busse unterstützt der KLibDrv-Treiber (32Bit)?

Der alte Treiber unterstützte insgesamt 16 PCI-Busse, bzw. Bus-Nummer 0...15. Höhere Busse (beispielsweise bei speziellen Exoten) wurden hier noch nicht unterstützt. Sollte dennoch mit dem Treiber auf höhere Busse zugegriffen werden, musste die aktuelle I/O-Adresse der Karte im Quelltext eingegeben und neu compiliert werden. Die aktuelle Base-Adresse konnte beispielsweise aus dem Gerätemanager unter "Ressourcen" entnommen werden. Die neue DLL (aus WIN_ALL32) unterstützt jetzt PCI-Bus 0...31. Somit dürften die alten Zuteilungsprobleme allesamt gelöst sein. 
 

Wie kann man unter Windows (32Bit) eine PCI-Karte erkennen?

Entweder mit dem Windows-Gerätemanager im Ordner "Multifunktionskarten...", mit HWTxxx.EXE, oder mit dem Tool: PCITree.

Was muss im Windows-Gerätemanager eingetragen sein ?
Wie erkenne ich eine gültige Installation des Karten-Treibers ?

Nachdem Setup.INF über den Assistenen (mit manueller Pfadangabe) den Treiber installiert hat, werden insgesamt 4 Treiber im Gerätemanager angezeigt. Der Dienst wird als PortIODriver mit KLibDrv.SYS in der Windows-Verwaltung angemeldet. Jeder Zugriff erfolgt anschließend über die KLibDrv.DLL, welcher mit KLibDrv.SYS (kernel-Treiber) korrespondiert. Man erkennt bereits eine erfolgreiche Treiber-Einbindung daran, wenn gültige E/A-Ressourcen (hier DC00-DCFF) für das Device vergeben werden. Hier ein Beispiel für die PCI1616 Karte:

Woran erkennt man, ob der Treiber geladen wurde?

Die Windows-Systeminformation zeigt an, ob Anwendung und Treiber richtig gestartet wurden. Beispiel hier: PCIIO3.EXE

Die Windows-Systeminformation "Softwareumgebung..." zeigt an, ob die DLL (geladene Module) und der KLibDrv-Treiber mit dem PortIODriver richtig gestartet wurde: siehe TREIBER-START_01.jpg

Genügt es die neuen KLibDrv.sys unter ..\System32\drivers  sowie die DLL KlibDrv.dll im Root der Anwendungs-EXE auszutauschen?

Ja und nein. Neuere KLibDrv-Treiber lassen sich zwar so einfach ersetzen, ohne die gesamte Prozedur der Deinstallation/Neuinstallation wiederholt durchführen zu müssen, es sollte jedoch besser immer eine komplette Neuinstallation des WIN_ALLxx - Treibers durchgeführt werden. Falls Sie mehrere Projekt-Verzeichnisse mit EXE-Anwendungen zum Treiber unterhalten, muss auch dort die DLL ersetzt werden. Bei älteren Projekten (insbesonders auf alten CDs) befinden sich die KLibDrv.SYS-Dateien noch zusätzlich im Anwendungsverzeichnis. Die alten SYS-Files müssen hier gelöscht werden, damit alle Anwendungen anschließend nur noch auf eine KLibDrv.SYS-Datei unter ..\System32\drivers zugreifen.

Muss der KLIBDRV.VXD unter Windows 2000, XP, 7... weiter berücksichtigt und/oder installiert werden?

Dieser 16-Bit Treiber ist lediglich für Windows 9x/ME relevant, wird aber beim Setup.INF aus Gründen der Windows-Vielfalt sicherheitshalber immer noch mitinstalliert. Der Treiber stört nicht weiter - sollte aber auch nicht gelöscht werden, da sonst die Installation der .INF fehlschlagen kann.

Was macht der PortIODriver ?

Die KLibDRV-Treiber (DLL + SYS) sind die eigentlichen I/O-Treiber, womit Hardware-Befehle im System behandelt werden. Der PortIoDriver.SYS dient lediglich zur Anmeldung an den Windows-Gerätemanager (Dienst), damit die Karte unter "Multifunktionskarten" richtig eingetragen - und Ressourcen entsprechend zugewiesen werden. Die E/A-Kommunikation wird nach erfolgreicher Installation immer vom KLibDrv-Treiber behandelt.

Wieso ist die Adress-Vergabe beim Umstecken einer PCI-Karte in einen anderen Slot unterschiedlich? 

Die seltsame Vergabe von Ressourcen wird durch das jeweilige PCI-BIOS des Mainboards vorgenommen. Je nach umstecken einer Karte in einen anderen Slot, können Ressourcen der Slot-Reihenfolge nach (oder auch umgekehrt) neu vergeben werden, sodass sich alle Adressen verschieben. Eine feste Vergabe ist bei PCI grundsätzlich nicht erlaubt, da PnP (plug-and-play) immer eine dynamische Verteilung selbsttätig zu den jeweiligen Einheiten (während des low-level Bootens) unternimmt. PnP sollte ursprünglich dem Anwender helfen, Doppelvergaben und Überschneidungen zu vermeiden, verursacht aber in vielen Fällen mehr Chaos, als das es hilfreich wäre. Der PnP-Mechanismus wurde durch die PCI-SIG®  festgelegt.

Kann man eine PCI-Karte auf eine Basis-Adresse grundsätzlich (also permanent - so wie früher bei ISA) festlegen ?

Nein. Lt. PCISIG bzw. Spezifikation ist PCI PnP (plug-and-pray) orientiert. Eine feste Vergabe von Ressourcen ist mit PCI daher nicht erlaubt. Die Zuteilung von Ressourcen erfolgt (herstellerabhänig) im jeweiligen BIOS des Rechners, welcher je nach Slot-Reihenfolge eine automatische Verteilung von freien Adressen und weiteren Ressourcen individuell vornimmt. Die Tabelle wird dynamisch im ESCD-RAM hinterlegt, woraus sich das Betriebssystem entsprechende Informationen zu den augenblicklich verwendeten Geräten einholen kann (aber nicht muss). Zum Teil werden zugeweisene Ressourcen auf den Geräten hinterlegt. Manche Windows-Versionen verwenden hier ihre eigene Poll-Routinen, deren Daten mit den Inhalten der ESCD-Tabelle lediglich gegenverifiziert werden.

Die Windows-Systeminformation "Hardwareressourcen-E/A" zeigt an, ob die Karte eine richtige (valid) Adresse besitzt:

Hier wurde die PCI1616-Karte erkannt und für den I/O-Adressraum 0xDC00 - 0xDCFF (hex) zugewiesen.
Der Kartenzugriff kann nun über die KLibDrv.DLL erfolgen.

Wo finde ich eine Anleitung, wie der neue KLibDrv-Treiber installiert werden muss?

Genaugenommen muss man nur darauf achten, das der richtige Installationspfad zum Treiber angegeben wird, da eine automatisierte Installation durch den Windows-Assistenten eventuell fehlschlagen kann. Denn wenn es wider Erwarten doch einmal im Windows klemmt, kann man damit die Geräte-Eintragung auch zwangsweise vorgeben. Der Windows-Assistent ist scheinbar immer noch nicht in der Lage, verschiedene Treiberversionen für unterschiedliche Geräte und Windows-Platformen auf einem Datenträger selbsttätig zu unterscheiden. Neben dieser Eingabe kann man die Karte auch direkt als Multifunktionsadapter festlegen, damit die Eintragung für den Gerätemanager auch wirklich übereinstimmt.

Gibt es eine Möglichkeit, den alten 32-Bit Treiber zu deinstallieren?

Ja. "XP_uninst.BAT" macht dazu folgendes in einer DOS-Box:

  • Eingetragene Treiber-Schlüssel in der Registry vollständig löschen
  • KLibDrv-Treiber SYS im ..\system32\drivers... löschen
  • Alle oemxxx Dateien im Windows-INF-Verzeichnis löschen VORSICHT !!!

WICHTIGE HINWEISE:

Nur für Windows 2000, 2003 und Windows XP
Wenn nach "XP_uninst.BAT" anschließend im Windows-Gerätemanager mit dem rechten Maus-Klick die Karte deinstalliert wird, ist das System wieder befreit. Nach einem neuen booten (richtiger RESET) wird die eingebaute Karte selbsttätig von Windows erkannt und nach Treibern gefragt. Geben Sie nun das Verzeichnis an, wo der neue KLibDrv-Treiber hinterlegt ist und bestätigen Sie im Assistenten manuell , damit Setup.INF die Treiberinstallation übernimmt. Nach einem Neustart des Systems, ist die Karte per Registry und Dienst mit dem Treiber verbunden. Wenn Treiber und Karte erfolgreich eingebunden wurden, meldet Windows, dass jetzt auf das neue Gerät/Device zugegriffen werden kann. Anschließend erfolgt die Programmierung über die neue KLibDrv.DLL, welche im Anwenderverzeichnis (BeispielAnwendung.EXE) liegen muss. Alle alten DLLs müssen gegen die neue KLibDrv.DLL ersetzt werden, da SYS und DLL explizit aufeinander abgestimmt sind.

Nur für Windows Vista, 7...
Bei Windows-Vista und Windows 7(8) ist die Deinstallation des Treibers direkt über die Deinstallion der Karte im Gerätemanager möglich.
Hier muss bzw. darf  "XP_uninst.BAT" nicht angewendet werden. Falls noch OEMxxx-Files mit Treiberfragmenten bestehen, müssen diese ggf. manuell gelöscht werden.
 

Gibt es für den Device-Treiber TVicHW32 eine eigene FAQ? 

Ja, hier: http://www.entechtaiwan.com/dev/hw32/faq.shtm

Gibt es auch eine deutschsprachige Hilfe-Seite zum Treiber?

Ja, hier: http://www.entechtaiwan.com/dev/hw32/german.shtm

Wie muss ich den Device-Treiber installieren, wenn ich eine ISA-Karte verwende?

Kopieren Sie einfach folgende Dateien von unserer Treiber-CD ...\Drivers\PC-Karten\Win_x64Bit:
KLibDrv.SYS und TVicHW64.SYS nach -> C:\Windows\System32\drivers
sowie KLibDrv.DLL in das -> EXE-Anwenderverzeichnis, von wo aus das Programm später gestartet wird.

Anmerkung zu ISA: 
ISA-Karten nutzen keine PnP-Mechanissmen (PnP = engl. plug-and-play). Daher werden ISA-Karten i.d.R. nicht im Gerätemanager angezeigt.
Die Adressierung erfolgt über fest vergebene I/O-Ressourcen, die man auf der Karte einstellen kann bzw. lt.Hersteller vorgegeben wurden.

Die Treiber-Installation unter Windows bemängelt das ein Fehler in der digitalen Signatur vorliegt. 
Was ist falsch? 

Nichts ist falsch. Manche Windows-Versionen verlangen das Vorliegen einer digitalen Signatur (Zertifikat-Datei), wenn Treiber installiert werden. Diese Mitteilung wird häufig als eine Fehlermeldung mißverstanden. Tatsächlich ist es aber nur eine warnende Mitteilung, dass kein aktuelles Zertifikat zum Treiber vorliegt. Diese Treiber haben den "Test" desshalb "nicht bestanden", weil sie von den Herstellern nicht bei Microsoft® zur kostenpflichtigen Prüfung vorgelegt wurden. Für diesen Prozess muss man zusätzlich bei GlobalSign jährlich hohe Lizenzgebühren zahlen. An solch sonderbaren Geschäftsmethoden beteiligen wir uns grundsätzlich nicht.



Wählen Sie hier die untere Auswahl: "Diese Treibersoftware trotzdem installieren"...

Wie kann ich unter Windows XP die Treiberüberprüfung ausschalten?

Die oft überflüssigen Hinweise und Warnungen über nichtsignierte Treiber von Windows kosten unnötig Zeit und sind nervig. Sie können die Informationsbox "Nicht signierte Treiber" über die Systemeigenschaften im Ordner "System" in der Systemsteuerung nachträglich blockieren. Öffnen Sie dazu über Systemeigenschaften den Menuepunkt "Hardware". Über die Schaltfläche "Treibersignierung" unterbinden Sie dann die Warnmeldung.


Als Standard markieren: Das ständige Prüfen kann auch dauerhaft ignoriert werden.

Ich erhalte in meinem neuen Rechner keinen Zugriff auf die PCI-Karte bzw. keinen gültigen I/O-Adressraum. 
Ist die Karte oder der Treiber defekt?

Nein. Möglicherweise sucht die Config-Scan-Routine nur nicht tief genug jeden verfügbaren PCI-Bus Ihres Rechners ab, sodass keine Ressourcen gefunden werden. Es gibt neue Rechner, die intern über kaskadierte PCI-Brücken verfügen, sodass ein Scan von PCI-Bussen beispielsweise Geräte einfach übersieht. Um dies zu umgehen, müssen Sie den Quellcode entsprechend anpassen und neu compilieren.

Gibt es eine ausführlichere Beschreibung, wie Treiber grundsätzlich funktionieren?

Ja, hier: http://www.pci-card.com/driver.html

Unter welchem Windows-Betriebssystem läuft der KlibDrv-Treiber am stabilsten, bzw. gibt es am wenigsten Stress mit Hardware oder anderen Inkompatibilitäten?

Der KlibDrv-Treiber funktioniert unter Windows 95/98/98SE/ME/NT4/2000/200x/XP/Vista/7... gleichermaßen. Ich persönlich bevorzuge jedoch den Einsatz unter Windows 98SE, 2000, XP und 7. Windows 95, ME, NT4, und Vista sind ehr ungeeignet.

Wir möchten Ihre PCI-Karte mit Visual-BASIC programmieren. Haben Sie hierzu weitere Informationen?

Ja, jedoch nicht online. Zu allen unseren PCI-Karten ist ein genereller Device-Treiber zugefügt, mit dem unter Windows 9x/ME/NT4/2000/XP/7.. eine Programmierung möglich ist. Hierzu ist i.d.R. jeweils ein kleiner Delphi Quellcode veröffentlicht, der die Einbindung der KlibDrv-Funktionen (DLL) offenlegt und die Hardware an Hand der genutzen Funktionen kurz erklärt. Optional steht ein VB Quellcode zur Verfügung, der die gleiche Aufgabe über ein BAS-Modul erfüllt. Dieser Quellcode ist aus Lizenztechnischen Gründen leider kostenpflichtig. Weitere Informationen oder Auszüge werden zum Quellcode daher nicht im Internet vorveröffentlicht. Die Treiber-Einbindung unter VB6 können Sie aber bereits mit der funktionsähnlichen Demo vortesten bzw. einsehen. Unser KlibDrv-Treiber setzt auf diesem Modell auf. Die Nutzung des KlibDrv-Treibers ist jedoch nur mit unserer Hardware (Vendor-ID 0x1001h) erlaubt. Bei Fragen bezügl. den DLL-Funktionen oder möglicher, weiterer Lizensierung können Sie den Hersteller auch gerne direkt kontaktieren, oder sich eigene Treiber speziell anfertigen lassen.

Kann ich mit dem KlibDrv-Treiber auch ISA-Karten direkt ansteuern?

Selbstverständlich. Bei ISA-Karten können Sie PCI-Spezifischen Befehle wie 'GetPciDeviceInfo' einfach ignorieren. Befehle wie OpenTVicHW32() müssen Sie natürlich weiter verwenden, um einen handle zu erzeugen. Anschliessend können Sie mit 'SetPortByte(HANDLE, Adresse, Data) oder GetPortByte(HANDLE, Adresse)' auf ISA-Karten direkt schreiben/lesen, wobei die jeweilige I/O-Adresse der Karte bzw. des Ports direkt (statisch) verwendet wird. Manche Karten die einen PPI-Controller verwenden (bsp. RELAIS-1, OPTO-1, AD12LC...) müssen initialisiert werden, bevor man auf den Port schreiben/lesen kann. Hierzu werden verschiedene Kommandowörter benötigt, um die nachfolgende Betriebsart (input, output...) festzulegen. Die entsprechenden Register sowie Kommandowörter sollten hinreichend bekannt sein und können im Zweifelsfall dem 8255-Datenblatt entnommen werden. Wir verwenden bei allen ISA-Karten mit 8255 die 'Einfache Ein-/Ausgabe' der Betriebsart 0.

Warum kann ich nicht mit NT-Systemen direkt auf I/O-Ports (mit Inp/Out wie unter DOS oder Win9x) zugreifen?

Weil das Microsoft-OS ab Windows ME "aus Sicherheitsgründen" alles verbietet. 
Bitte lesen Sie hier: http://www.tecchannel.de/entwicklung/grundlagen/402223/index24.html

Muss ich etwas besonders beachten, wenn ISA-Karten mit dem KlibDrv-Treiber verwendet werden?

Nein, eigentlich nicht. Im Gegensatz zu PCI-Karten werden zwar keine Eintragungen in den Windows-Gerätemanager vollzogen, dennoch kann der Treiber auf diese Karten direkt zugreifen, wenn sie physikalisch auf dem ISA-Bus präsent sind. Wichtig ist nur, dass Sie genau wissen, auf welchen I/O-Adressen sich diese Karte befindet bzw. ansprechen lässt. Nach Einfügen der Karte in den Rechner installieren Sie den Device-Treiber einfach nur manuell mit Setup.INF aus dem entsprechenden Treiber-Verzeichnis (passend zu Ihrem Betriebssystem), oder kopieren den KlibDrv.SYS in das '..\WINNT\SYSTEM32\driver' Verzeichnis und starten neu, damit der Dienst des Treibers aktiviert wird, wenn darauf zugegriffen wird. Bei älteren NT-Systemen ist es teilweise erforderlich (Service-Pack-abhängig), dass der Treiber von Hand auf 'automatisches starten' gestellt wird. Die KlibDrv.DLL benötigen Sie anschliessend in dem Verzeichnis, von wo aus Ihr Anwendungsprogramm gestartet wird.

Warum kommt die Meldung: "Treiber konnte nicht geladen werden" während der Installation?

Es wurde versucht, die Treiber-Installation ohne Admin-Rechte durchzuführen (das passiert am häufigsten), oder es wurde ein unpassender  Treiber-Pfad für ein anderes Betriebssystem angegeben.

Ich habe ein Problem. Warum muß der KlibDrv-Treiber nach jedem Neustart manuell gestartet werden?

Wahrscheinlich haben Sie denn Treiber nicht vollständig installiert (bsp. falsche Pfadangaben oder Abbruch), oder einen 32-Bit Treiber auf einem 64-Bit System installiert (bzw. umgekehrt). Unser KlibDrv Treibermodell ist ein Non-PnP-Treiber, daher kann er unter Windows 95/98/98SE/ME und Windows NT4/2k/XP/Vista/7... gleichermassen eingesetzt werden, ohne den Quellcode abändern zu müssen. Die Unterscheidung wird mit der VXD- und der SYS-Datei vollzogen und über einen INF-File installiert. Der Grund, wesshalb bei jedem Neustart der Treiber wieder gestartet werden muss, liegt in der Startart des SYS-Treibers. Diese steht in diesem Fall noch auf "manuell" (on-demand), da Sie wahrscheinlich nur die SYS-Datei in das Treiberverzeichnis kopiert haben und nun die Registy-Einträge für die Startvorgabe fehlen. Wenn Sie die Einstellungen ändern möchten wählen Sie die Startart "automatisch" (=1) und starten Sie Ihr System neu. Sie können aber auch unser Setup.INF aus dem jeweiligen Treiberverzeichnis mit der rechten Maustaste anklicken und auf "Installieren" klicken. Dann werden alle unsere Treiber richtig installiert und auf automatische Startart gestellt. Alternativ können Sie auch die Registry-Patches verwenden, oder gleich den Schlüssel abändern.

Wie kann ich unter Windows-NT sehen, dass der KlibDrv-Treiber richtig gestartet wurde?

Klicken Sie auf Start > Programme > Verwaltung (allgemein) > Windows NT-Diagnose > Dienste > Geräte und suchen Sie in der Liste nach dem KlibDrv-Eintrag. Mit einem Doppelklick auf 'KlibDrv' gelangen Sie in ein neues Fenster, dass Ihnen die Startart mitteilt. 

Kann man mehrere Anwendungen gleichzeitig über den KlibDrv-Treiber laufen lassen?

Nein. Das scheitert daran, dass jeder Treiber nur einmal unter Windows gestartet werden darf. Windows quittiert den Versuch sonst mit einem Error. Andererseits macht es auch keinen Sinn, da damit die Hardware von einer anderen Anwendung den Bezug zur ersten Anwendung verlieren würde und somit keine Sicherheit mehr gewährleistet wäre. Laufende Programme, die man in die Windows-Taskleiste schiebt, sind ebenfalls noch aktiv. Es kann dazu keine weitere Anwendung zusätzlich aufgerufen werden, solange die noch laufende Anwendung nicht richtig beendet ist.

Kann ich alle PCI-Karten mit nur einem Treiber verwenden?

Ja.

Ich habe noch eine alte 16-bit Anwendung die ich unter Windows-NT weiter verwenden möchte. Gibt es ein Treiber-Tool,
dass die I/Os unter Windows-NT wieder zulässt, ohne das ich den Quellcode/EXE abändern muss?

Ja, sowas gibt es. Sehen Sie hier: http://www.entechtaiwan.com/tvicnt16.htm

Darf ich den KlibDrv-Treiber für meine eigenen Projekte weiterverwenden?

Ja, wenn Sie unsere Karten nutzen, und nein, wenn Sie den Treiber für andere Produkte einsetzen möchten. In diesem Fall müssen Sie sich beim Hersteller: http://www.entechtaiwan.com registrieren lassen. 

Gibt es einen Unterschied zwischen KlibDrv und TVicHW32?

Nein. Beide Treiber verfügen über den gleichen Befehlsvorrat. Die Namen unterscheiden nur sich aus lizenztechnischen Gründen.

Wo kann ich den Treiber registrieren lassen?

Bei Entechtaiwan. Bitte lesen Sie dazu: http://www.pci-card.com/License_klibdrv.txt

Wie kann ich direkt unter Windows NT/2k/XP/Vista/7 auf andere Hardware-Ports zugreifen?

Siehe hier: http://www.b-kainka.de/portnt.htm

Gibt es noch andere Info-Seiten zu I/O- und Kernel-Treiber?

Ja, hier: http://www.lvr.com/parport.htm

Wieso gab es mit den alten Windows-Versionen Probleme?

Was bisher geschah: Ab NT3 waren keine direkten Port-Zugiffe mehr erlaubt. Viele Treiber hatten noch Macken. Die PnP-Unterstützung war kaum vorhanden, oder grob fehlerhaft. Eine der Ursachen gründete sicher in den ständigen Veränderungen der PCI-Spezifikationen (siehe PCI-SIG®) die zum Teil bis zu 440 Seiten kryptische Änderungstexte umfasste. Parallel züchteten die Mainboard-Hersteller dazu immer schnellere Boards mit z.T. erheblichen BIOS- und Bus-Fehlern hoch (jeder wollte das schnellste Board haben). Ab Windows 2000 wurde es bei den Betriebssystemen besser. Die Treiberinstallation behandelten die Windows-ReVersionen dennoch unterschiedlich. Deshalb gab es quasi zu jeder Version ein anderes Setup, dass den Treiber bindet. Problematisch wurde es nur, wenn die automatische Installation durch den Assistenten beispielsweise einen Windows 98 Treiber auf ein Windows-XP System installiert. Daher empfehlen wir immer die manuelle Setup-Installation mit expliziter Pfad-Angabe, um bei der Erstinstallation wirklich den passenden Treiber zu laden. Hierbei sollte man sich keinen Fehler erlauben, da das nachträgliche auskernen des falschen Treibers je nach Betriebssystem sehr mühselig ist. Wer glaubt, das die neuen Busse sicherer sind oder weniger Probleme verursachen, unterliegt einem Irrtum. Bei PCIe ist das Kompatibilitätsproblem noch größer. Siehe: http://de.wikipedia.org/wiki/PCI_Express#Kompatibilit

Wieso funktionieren die DOS-Beispiele in GWBASIC nicht auf anhieb?

Jedes GWBasic-Beispiel muss noch auf die tatsächliche I/O-(Base)Adresse Ihrer Karte angepasst werden, da das PCI-BIOS die Ressourcenvergabe (enum) auf dem PCI-Bus dynamisch organisiert (PnP) und daher in jedem PC anders ausfällt. Um die richtige I/O-Adresse zu ermitteln, starten Sie bitte Sie auf unserer Treiber-CD: ...\PCI\Utils_PCI\DOS\PCIVIEW.EXE  oder PciAdr.EXE in einer realen DOS-Umgebung. Diesem DOS-Tool können Sie dann die Basisadresse entnehmen und im BASIC-Quellcode entsprechend umändern.

Wo finde ich weitere Informationen zum PCI-Bus ?

Hier : http://wiki.osdev.org/PCI

Was kann man tun, wenn das PCI-Device nicht unter Windows erkannt wird (unknown device)?

Siehe: http://www.pcwelt.de/ratgeber/Hardware-Schlauer-als-Windows-1220791.html
oder hier nachschauen: http://www.pcidatabase.com/search.php
oder: http://www.lowlevel.eu/wiki/Peripheral_Component_Interconnect#Zugriff_auf_den_Konfigurations-Adressraum
oder wer sich richtig in die Materie einarbeiten will: http://www.c-plusplus.de/forum/252512-full
oder erst den Windows-Gerätemaneger nutzen, bzw. links unten auf Start (bzw. Windows Symbol) klicken, 
dann im Feld “Programme/Dateien durchsuchen” msinfo32 eingeben und bei Hardware E/A suchen...
und wer keine Zeit hat, kann vieleicht  dieses Tool nutzen: http://www.zhangduo.com/udi.html 

Wo finde ich die Installationsbeschreibungen zu den alten Treibern?

Hier:
 
Installation Kurzanleitung Windows 2000 Windows 2000 Installation Kurzanleitung Windows XP Windows XP Installation Kurzanleitung Windows Vista Windows VISTA Installation Kurzanleitung Windows 7(8) Windows 7



KOLTER ELECTRONIC ist nicht für die Inhalte fremder Seiten verantwortlich.
Es gelten ausschließlich die AGB der Firma KOLTER ELECTRONIC.
Für die Richtigkeit der Angaben wird keine Gewähr übernommen.
Alle Preisangaben sind gewerblich. Das Zahlungsmittel ist EURO.
Alle Rechte vorbehalten.(c) copyright H.Kolter

[ Zur KOLTER ELECTRONIC® Hauptseite ]