4. Portabilitätsaspekte

(Wechsel des Betriebssystems: Windows 95 / NT ?)
-> Kapselung betriebssystemabh. Komponenten
-> in mehreren Varianten anbieten
-> Richtlinien: Was ist bei Anschluß eines neuen OS zu tun?
 

16-Bit DLL in Win32-Programme einbinden (betrifft win488.dll)

- es existieren undokumentierte Win32-API Funktionen (nur unter Win95) die es ermöglichen,
  16-Bit DLLs in 32-Bit Programme einzubinden

Funktionen in kernel32.dll:

INT LoadLibrary16(LPSTR LibraryName) --> kernel32.dll Index 35

void FreeLibrary16(INT HInstance)    --> kernel32.dll Index 36

LPVOID GetProcAddress16(INT HInstance, LPSTR ProcName) --> kernel32.dll Index 37
 
 

Problem beim Portzugriff unter NT (betrifft TC_832)

( aus MSDN 6.0 Article ID: Q112298 )
 

Informationen zum Hardware Abstraction Layer (HAL) (betrifft NT-Portabilität)

( aus MSDN 6.0 Article ID: Q112298 )
 

Problemlösung bei Hardwarezugriffen unter Windows NT

Die Firma Kithara hat ein Tool entwickelt, das es ermöglicht, 16-Bit und auch 32-Bit-Programme auf die Hardware zugreifen zu lassen, ohne zusätzliche Hardware-Treiber für NT entwickeln zu müssen.

Alle wichtigen Hardwarezugriffe unseres Programms (Zugriff auf I/O-Ports der C832-Karte über inp(), outp() bzw. direkter Zugriff auf Dual-Port-RAM der C812-Karte) sind durch Das Kithara »Hardware Access Toolkit« (KHAT)
auch unter NT realisierbar.
 

zurück zur Übersicht