Autor Beitrag
OeBe
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mo 10.02.20 11:08 
Habe zahlreiche Programm für Steuerungen über LPT und COM aus der Turbo Pascal-Zeit, die ich in virtuellen Boxen wiederbeleben möchte, und zwar mit eigener API-Programmierung. Bestehende DLLs wie InputOut32.dll, io.dll usw. sind mir bekannt und funktionieren auch.
Probleme habe ich mit der korrekten Verwendung von CreateFile, CreateFileW und DeviceIOControl, hierbei vor allem mit dem Gerätenamen. Die Verwendung von 'LPT1', '\\\\.\\LPT1' scheint nicht zu funktionieren. An der Schnittstelle hängt natürlich kein Drucker, sondern die notwendigen Pins mit dahinter liegenden Verstärkern usw.
Für Tipps bzw. Hinweise auf Sourcecodes der genannten DLLs wäre ich sehr dankbar.

OeBe
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mo 10.02.20 17:14 
Hallo und :welcome:

hast du mal versucht mittels EnumPorts die Schnittstellennamen zu ermitteln?
In C++ sieht dieser Code so aus (aus dem Internet kopiert):
ausblenden C++
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
PORT_INFO_1A pi[200];
DWORD bytes, size;

for (int i = 0; i < 200; i++)
  i[i].pName = "                     "; // Puffer bereitstellen (kein schöner Code!)

EnumPorts(NULL, 1, (LPBYTE)&pi, 200*sizeof(pi[0]), &bytes, &size);

for (DWORD i = 0; i < size; i++)
  std::cout << pi[i].pName << std::endl;

Es kann natürlich auch an der VM (bzw. dessen Konfiguration) liegen, daß die Schnittstellen nicht durchgereicht werden.
Verstehe ich das richtig (wegen den von dir angegebene Tags), daß du Win7 als Host und Win2000 als VM benutzt?
OeBe Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mo 10.02.20 18:39 
Hallo und danke.
Ich verwende einen alten PC, auf dem gerade noch Win2000 installiert werden kann, und der noch eine parallele Schnittstelle eingebaut hat.
Ebenso verwende ich PCs mit Windows 10 und Oracle- bzw. VMware-Boxen mit Windows 2000 bzw. Windows 7 als Clients mit USB-zu-LTP-Adaptern.
Leider kein Erfolgserlebnis, vermutlich weil die angeschlossenen Geräte (nur Elektronik) keine Windows-bekannten Geräte sind.
War unter Turbo Pascal alles kein Problem.
OeBe