Achso,
hm, debug doch mal und schau in welcher Zeile es genau passiert.
Ansonsten tippe ich einfach mal auf einen Fehler beim allocaten von DevNames.
Also quasi, dass er in der Zeile:
wDriverOffset := (Longint(Offset) - Longint(DevNames)) div 2;
beim Versuch Devnames.wDriverOffset etwas zuzuweisen ne
exception wirft?