anoniem Geplaatst: 27 oktober 2005 Delen Geplaatst: 27 oktober 2005 Na een lange tijd ben ik weer aan de slag met VB Dim Time As Integer Private Sub Form_Load() Private Sub Form_Unload(Cancel As Integer) CLOSEi = OPENCOM("COM2,1200,N,8,1") If i = 0 Then i = OPENCOM("COM1,1200,N,8,1") Option1.Value = True End If If i = 0 Then MsgBox ("COM Interface Error") TXD 0 RTS 0 DTR 0 Time = 0 End SubCOM End Sub Private Sub HScroll1_Change() Timer1.Interval = HScroll1.Value End Sub Private Sub Option1_Click() i = OPENCOM("COM1,1200,N,8,1") If i = 0 Then MsgBox ("COM1 not available") TXD 1 RTS 1 DTR 1 End Sub Private Sub Option2_Click() i = OPENCOM("COM2,1200,N,8,1") If i = 0 Then MsgBox ("COM2 not available") TXD 1 RTS 1 DTR 1 End Sub Private Sub Timer1_Timer() Time = Time + 1 If Time = 1 Then RTS 1 DTR 0 End If If Time = 2 Then RTS 0 DTR 1 End If If Time = 2 Then Time = 0 End Sub Dit is een stukje programma van Elektronnica en VB maar ik krijg steeds de melding COMPILE ERROR SUB OR FUNCTION NOT DEFINED ik heb dit probleem eerder gehad maar ik weet het nu even niet meer. Alvast bedankt Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 Welke regel geeft de foutmelding? Ik zie wel dat "Private Sub Form_Load()" niet wordt afgesloten met "End Sub". Kopieer foutje? Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 Hij ( VB ) verwijst naar het eerste stuk pragramma Private Sub Form_Load() dit wordt geel met een pijl er voor. Het schukje programma wat je hier boven ziet komt van een CD-ROM wat bij een boek hoort. Grt HAn Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 En END SUB is een COPY FOUT Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 [quote:be295d2373="mr.Crash"]En END SUB is een COPY FOUT[/quote:be295d2373]Dacht ik al :wink:. Als het goed is, wordt er ook iets (blauw) geselecteerd. Welke regel is dat? Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 OPENCOM dat dan vet gedrukt en met de melding COMPILE ERROR SUB OR FUNCTION NOT DEFINE Grt Han Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 En het is de eerste regel Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 Ik heb even zitten zoeken, maar volgens mij wordt de functie OPENCOM niet meer ondersteund in Windows versies vanaf 2000. Je zal dus op een andere manier met je COM-poorten moeten communiceren. Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 Ik zit met WIN98 SE dus het moet lukken. Maar anders ga ik wel even met een ander stukje Programma aan de slag. Bedankt GRt Han Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 [quote:c05f96aa60="mr.Crash"]Ik zit met WIN98 SE dus het moet lukken. Maar anders ga ik wel even met een ander stukje Programma aan de slag. Bedankt GRt Han[/quote:c05f96aa60] Invalletje: heb je dit wel ergens staan? [code:1:c05f96aa60]Declare Function OPENCOM Lib "Port" (ByVal A$) As Integer[/code:1:c05f96aa60] Het is een API-call, en die moet je wel declareren. Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 Hi wat jij schrijft gaat even boven mijn PET. Het is een hele tijd geleden dat ik hier mee aan de gang was. Maar om op jou idee door te denken , het boek schrijft over het declaratier ten behoeven van PORT.dll Ik moet dan wel even weten waar ik die neer moet zetten. en ze hebben het ook nog over PORTS.BAS Ik zie het even niet grt han Quote Link naar reactie
anoniem Geplaatst: 27 oktober 2005 Auteur Delen Geplaatst: 27 oktober 2005 [quote:0e53f92a54="mr.Crash"] Ik moet dan wel even weten waar ik die neer moet zetten. [/quote:0e53f92a54] Als je alleen maar code in je formulier hebt staan (dus waar Sub Form_Load() staat enzo), dan moet je de declare bovenin de code zetten, [b:0e53f92a54]buiten alle subs en functions om![/b:0e53f92a54] Je moet dan de declare zo plaatsen: [code:1:0e53f92a54]Private Declare Function OPENCOM Lib "Port" (ByVal A$) As Integer Private Sub Form_Load() <etc> [/code:1:0e53f92a54] Vergeet vooral "Private" niet, anders gaat VB daarover zeuren. [quote:0e53f92a54="mr.Crash"] en ze hebben het ook nog over PORTS.BAS Ik zie het even niet grt han[/quote:0e53f92a54] Ports.bas zal een module zijn die je moet gebruiken/maken. Ik ken het boek niet wat je gebruikt. Misschien staat het wel op de cdrom? Het zou helemaal kunnen zijn dat je alle code met betrekking tot de communicatie met je poorten in deze module moet stoppen. Maar dat staat vast in je boek. Quote Link naar reactie
anoniem Geplaatst: 28 oktober 2005 Auteur Delen Geplaatst: 28 oktober 2005 Zoals ik al eerder schreef ben ik hier een tijd geleden ook al een keer mee aan de gang geweest. En er staat me bij dat ik die port.bas altijd nodig heb . Dus ik moet nu even zien als ik een stukje programma schrijf hoe ik die port.bas er bij in krijg. Maar dat gaat me denk ik wel lukken ED bedankt voor het mee denken Grt Han Quote Link naar reactie
anoniem Geplaatst: 28 oktober 2005 Auteur Delen Geplaatst: 28 oktober 2005 Graag gedaan en succes. Mocht het toch niet lukken, dan moet je het maar laten weten... Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen