keine Kommunikation über Druckerport trotz inpout32.dll

Gast #1597684
Lesenswert?

Hallo,

irgendwie hängt es gerade bei mir.
Ich versuche z.Z. Ein einfaches Programm (C++) auf einem alten Laptop 
zum laufen zu bekommen.
Am PC (Win XP) läuft es. Auf den Laptop (auch Win XP) nicht.

Was auch interesant ist, ist das alle Dateleitungen (D0...D7) am PC beim 
einschalten bis Windows hochgefahren ist, an sind und an bleiben.
Am Laptop werden beim einschalten alle ein geschaltet und ab einem 
bestimmten Punkt, zudem Windwos noch hoch fährt, leuchtet nur noch D1 
und der rest wird von Windows ausgeschalten.

Die inpout32.dll ist im system32 Ordner.

Ich habe auch schon alle Einstellungen im Bios versucht (Bidirectional, 
ECP, EPP, nur Output). Leider hat nichts bewirkt.
Irgendwie lässt mich Windows nicht mit der LPT Schnitstelle 
kommunizieren.

Ich wäre für jede Idee dankbar.

fG Rocco


Und hier der Code - ein einfaches Lauflicht:
1
#include <iostream>            //schreiben in C++ Sprache
2
#include <conio.h>            //_inp() und _outp() liegt hier drin
3
#include <windows.h>        //Sleep() liegt hier drin
4

5
using namespace std;        
6

7
#define DELAY 100
8
#define LPT1 0x378
9
#define VSS 0x01    //bit für LM75 Spannungsversorgung auf HIGH
10
#define SCL 0x02    //bit für LM75 serial clock auf HIGH
11
#define SDA 0x04    //bit für LM75 serial data auf HIGH
12

13
int main ()
14
{
15
    for(int i=0; i<8; i++)
16
    {
17
    _outp(LPT1, 0x01 );
18
    Sleep(DELAY);
19
    _outp(LPT1, 0x02 );
20
    Sleep(DELAY);
21
    _outp(LPT1, 0x04 );
22
    Sleep(DELAY);
23
    _outp(LPT1, 0x08 );
24
    Sleep(DELAY);
25
    _outp(LPT1, 0x16 );
26
    Sleep(DELAY);
27
    _outp(LPT1, 0x32 );
28
    Sleep(DELAY);
29
    _outp(LPT1, 0x64 );
30
    Sleep(DELAY);
31
    _outp(LPT1, 0x128 );
32
    Sleep(DELAY);
33
   
34
    cout << "ping";
35
   
36
    }
37

38
    return 0;
39
}

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren