Toon posts:

[VB .NET] De goeie oude DLportIO ???

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben sinds 2 dagen in het bezit van Visual Studio .NET en het is voor mij (natuurlijk) de bedoeling om de ontwikkeling van PowerLCD verder door te voeren onder het .NET platform.

Het eerst waar ik dus mee gestart ben was vooral bij microsoft op de website allerhande tekst te lezen over de verschillende de nieuwigheden enzo, want op programmeervlak ben ik nog nie zo lang actief (1,5 jaar ongeveer). Ik begin na 2 dagen de verschillen wel te begrijpen, maar het eerst grote probleem dat ik niet kan oplossen was het aansturen van de oude vertrouwde "DLportIO" (om dus toegang te krijgen tot de LPT poort onder Win2k en hoger).

Wat ik dus gedaan heb is mijn oude Class omgezet naar .NET de functies hier en daar wat aangepast natuurlijk en dan een klein fomruliertje eraan die gewoon een tekstje op mijn grafisch LCD zou moeten zetten.

Ik krijg dus nix op het scherm en vraag me gewoon af, of de driver eigenlijk wel aangesproken word ?

code:
1
2
Public Declare Sub DlPortWritePortUshort Lib "dlportio.dll"_
(ByVal Port As Long, ByVal value As Integer)


Deze code is dus de basis om de driver aan te spreken zoals het moest in VB6, normaal is dat in VB.NET hetzelfde (dacht ik)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Public Shared Function WriteData(ByVal data As Integer)
        DlPortWritePortUshort(CtrlPort, &HC)
        DlPortWritePortUshort(CtrlPort, &H8)
        DlPortWritePortUshort(DataPort, data)
        DlPortWritePortUshort(CtrlPort, &H9)

        DlPortWritePortUshort(CtrlPort, &H8)
        DlPortWritePortUshort(CtrlPort, &HC)
End Function

Public Shared Function WriteCommand(ByVal command As Integer)
        DlPortWritePortUshort(CtrlPort, &H4)
        DlPortWritePortUshort(CtrlPort, &H0)
        DlPortWritePortUshort(DataPort, command)
        DlPortWritePortUshort(CtrlPort, &H1)

        DlPortWritePortUshort(CtrlPort, &H0)
        DlPortWritePortUshort(CtrlPort, &HC)
End Function


en deze functies zijn de basis van alle andere die ik gebruik in mij programma en gebruiken de eerst code. De status van de poorten word goed gezet om uiteindelijk de gegevens door te sturen en de poort terug "vrij" te laten.

De functies werken wel (al heel lang zelfs), maar uiteindelijk zie ik nix op mijn LCD'tje ;) Kan ik deze driver gewoon niet op dezelfde manier gebruiken ? of zie ik meer over het hoofd, want ik ben natuurlijk een complete nOOb in VB.NET ...

[ Voor 0% gewijzigd door Verwijderd op 24-08-2002 11:10 . Reden: layout was TE erg verneukt ... ]


Verwijderd

Je ziet meer over het hoofd, ze hebben namelijk de data types veranderd, de int die je in vb6 kon was 'n 16bit singed thingy , hier is ie 32bits singed, de long was 32 bits nu 64 bits ect kortom je rost 'n veel te groot getal (in bits) naar die dlportio driver toe die echt geen idee heeft hoe ie daar mee om moet gaan.

Verwijderd

Topicstarter
:D f*cked
had ik idd moeten aan denken, heb het wel 10 keer gelezen dat de data types verandert zijn.
Dus eigenlijk als je naar DlPortWritePortUshort een long moest sturen, dan stuur ik nu een integer ?
vroeger long => integer
vroeger integer => short ?

*zoek overzichtje in de help ;) *

edit : het werkt ... pfff ... wat voel ik me nOOb om daar een dag achter te zoeken. Maar goed ik zal het niet meer vergeten nu denk ik
en nogmaals bedankt Yarvieh :)

[ Voor 0% gewijzigd door Verwijderd op 24-08-2002 12:31 . Reden: foutje in types ]