BeneluxSpoor.net forum
Vraag en antwoord => Elektronica en analoog => Topic gestart door: olaf99 op 31 August 2016, 20:43:29
-
Hallo
Ik ben bezig met mijn modelbaan besturing. Ik wil mijn Atmel aansturen met een adres byte en een data byte. De software wil ik in Visual basic doen en ik gebruik de compoort.
De Atmel maakt alleen gebruik van de TXD en de RXD compoort lijn.
Mijn eigen programma kan ik niet aan de praat krijgen. Ben vervolgens gaan testen met het programma MicroRidge (compoort test programma) en daar kan ik mijn Atmel wel mee aansturen. Dus ik weet dat de hardware het wel doet.
De bedoeling is dus bij de atmel dat hij een adres (bijvoorbeeld 6 ) en de daarbij behorende data (bijvoorbeeld 4) krijgt. De Atmel schakelt dan het relais met de decimale waarde 4 aan. Tevens leest de Atmel de ingangen bij het geselecteerde adres in en stuurt die door naar de pc.
Met het compoort analyse programma PortMon zie ik wel verschillen.
Met mijn programma:
* decimaal 6 versturen = 36 met de HEX instelling in Portmon
* decimaal 6 versturen = 6 met de ASCII instelling in Portmon
Met Microridge:
* decimaal 6 versturen = 06 met de HEX instelling in Portmon
* decimaal 6 versturen = . met de ASCII instelling in Portmon
Hieronder het Visual basic programma:
(https://4.bp.blogspot.com/-eE4bIIwh2gQ/V8cgi--HcmI/AAAAAAAADb8/cjyzgDs1g4oTe2F1Cyt1EZWYcY0A8WAaQCPcB/s800/VBprog.jpg)
https://4.bp.blogspot.com/-eE4bIIwh2gQ/V8cgi--HcmI/AAAAAAAADb8/cjyzgDs1g4oTe2F1Cyt1EZWYcY0A8WAaQCPcB/s1600/VBprog.jpg
Hieronder een uitdraai van portmon. En je ziet dat ik meerdere bytes heb verzonden. :
compoorttest31-8-16 eigen programma werkt niet.
0.00006761 compoort-test29 IRP_MJ_CREATE Serial0 SUCCESS Options: Open
0.00000307 compoort-test29 IOCTL_SERIAL_GET_PROPERTIES Serial0 SUCCESS
0.00000363 compoort-test29 IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000810 compoort-test29 IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
0.00000391 compoort-test29 IOCTL_SERIAL_SET_RTS Serial0 SUCCESS
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000307 compoort-test29 IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
0.00000168 compoort-test29 IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:1a ERR:0 BRK:0 EVT:1a XON:11 XOFF:13
0.00000587 compoort-test29 IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:40 XonLimit:1024 XoffLimit:1024
0.00000140 compoort-test29 IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000838 compoort-test29 IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
0.00000419 compoort-test29 IOCTL_SERIAL_SET_RTS Serial0 SUCCESS
0.00000391 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000279 compoort-test29 IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
0.00000140 compoort-test29 IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:1a ERR:0 BRK:0 EVT:1a XON:11 XOFF:13
0.00000251 compoort-test29 IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:40 XonLimit:1024 XoffLimit:1024
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000140 compoort-test29 IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000112 compoort-test29 IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000782 compoort-test29 IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_RTS Serial0 SUCCESS
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000251 compoort-test29 IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
0.00000112 compoort-test29 IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:1a ERR:0 BRK:0 EVT:1a XON:11 XOFF:13
0.00000559 compoort-test29 IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:0 Replace:0 XonLimit:1024 XoffLimit:1024
0.00000419 compoort-test29 IOCTL_SERIAL_CLR_RTS Serial0 SUCCESS
0.00000168 compoort-test29 IOCTL_SERIAL_SET_TIMEOUTS Serial0 SUCCESS RI:-1 RM:-1 RC:-2 WM:0 WC:0
0.00000307 compoort-test29 IOCTL_SERIAL_SET_WAIT_MASK Serial0 SUCCESS Mask: RXCHAR RXFLAG CTS DSR RLSD BRK ERR RING
0.00000168 compoort-test29 IOCTL_SERIAL_SET_QUEUE_SIZE Serial0 SUCCESS InSize: 1000 OutSize: 1000
37.80507243 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00002235 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 36 <= portmon op HEX
0.00001956 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 34 <= portmon op HEX
0.00000391 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
11.97564551 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00003185 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6 <=portmon op ASCII
0.00002291 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 4 <=portmon op ASCII
0.00000419 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
13.64046883 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00002822 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 4 <=portmon op ASCII
0.00002989 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 2: 64 <=portmon op ASCII
0.00000391 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
4.86393829 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00002375 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 1: 6 <=portmon op ASCII
0.00000363 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.69714922 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00002989 compoort-test29 IRP_MJ_WRITE Serial0 SUCCESS Length 2: 15 <=portmon op ASCII
0.00000391 compoort-test29 IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
26.03316008 compoort-test29 IOCTL_SERIAL_WAIT_ON_MASK Serial0 SUCCESS
0.00000978 compoort-test29 IRP_MJ_FLUSH_BUFFERS Serial0 SUCCESS
0.00001537 compoort-test29 IOCTL_SERIAL_SET_WAIT_MASK Serial0 SUCCESS Mask:
0.00000475 compoort-test29 IOCTL_SERIAL_CLR_DTR Serial0 SUCCESS
0.00000168 compoort-test29 IRP_MJ_FLUSH_BUFFERS Serial0 SUCCESS
0.00000307 compoort-test29 IOCTL_SERIAL_PURGE Serial0 SUCCESS Purge: RXABORT RXCLEAR
0.00000168 compoort-test29 IOCTL_SERIAL_PURGE Serial0 SUCCESS Purge: TXABORT TXCLEAR
0.00000251 compoort-test29 IRP_MJ_CLEANUP Serial0 SUCCESS
0.00031037 compoort-test29 IRP_MJ_CLOSE Serial0 SUCCESS
**************************************************************************************************************************
*************************************************************************************************************************
MicroRidge **** met programma doet hij wel. ******
0.00006090 ComTestSerial.e IRP_MJ_CREATE Serial0 SUCCESS Options: Open
0.00000838 ComTestSerial.e IOCTL_SERIAL_SET_QUEUE_SIZE Serial0 SUCCESS InSize: 65536 OutSize: 65536
0.00000168 ComTestSerial.e IOCTL_SERIAL_SET_TIMEOUTS Serial0 SUCCESS RI:-1 RM:0 RC:0 WM:0 WC:0
0.00000112 ComTestSerial.e IOCTL_SERIAL_GET_BAUD_RATE Serial0 SUCCESS
0.00000112 ComTestSerial.e IOCTL_SERIAL_GET_LINE_CONTROL Serial0 SUCCESS
0.00000140 ComTestSerial.e IOCTL_SERIAL_GET_CHARS Serial0 SUCCESS
0.00000140 ComTestSerial.e IOCTL_SERIAL_GET_HANDFLOW Serial0 SUCCESS
0.00000838 ComTestSerial.e IOCTL_SERIAL_SET_BAUD_RATE Serial0 SUCCESS Rate: 9600
0.00000419 ComTestSerial.e IOCTL_SERIAL_SET_RTS Serial0 SUCCESS
0.00000447 ComTestSerial.e IOCTL_SERIAL_SET_DTR Serial0 SUCCESS
0.00000279 ComTestSerial.e IOCTL_SERIAL_SET_LINE_CONTROL Serial0 SUCCESS StopBits: 1 Parity: NONE WordLength: 8
0.00000168 ComTestSerial.e IOCTL_SERIAL_SET_CHAR Serial0 SUCCESS EOF:d ERR:ff BRK:ff EVT:ff XON:11 XOFF:13
0.00000838 ComTestSerial.e IOCTL_SERIAL_SET_HANDFLOW Serial0 SUCCESS Shake:1 Replace:80000040 XonLimit:100 XoffLimit:100
0.00000223 ComTestSerial.e IOCTL_SERIAL_SET_WAIT_MASK Serial0 SUCCESS Mask: RXCHAR TXEMPTY
0.00000363 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000475 ComTestSerial.e IOCTL_SERIAL_SET_DTR Serial0 SUCCESS
0.00000503 ComTestSerial.e IOCTL_SERIAL_SET_RTS Serial0 SUCCESS
0.00001006 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000196 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000279 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000698 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00002319 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: . <= portmon op ASCII
0.00000754 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000223 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00002067 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: . <= portmon op ASCII
0.00000419 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000223 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000196 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000419 ComTestSerial.e IRP_MJ_READ Serial0 SUCCESS Length 1: . <= portmon op ASCII
0.00000698 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000307 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000251 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000251 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00001928 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: 06 <= portmon op HEX
0.00000391 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000168 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00001983 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: 04 <= portmon op HEX
0.00000643 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000251 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000140 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000419 ComTestSerial.e IRP_MJ_READ Serial0 SUCCESS Length 1: 00 <= portmon op HEX
0.00000531 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000196 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00002179 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: 06 <= portmon op HEX
0.00000335 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000168 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00002011 ComTestSerial.e IRP_MJ_WRITE Serial0 SUCCESS Length 1: 02 <= portmon op HEX
0.00000391 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000168 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000140 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
0.00000307 ComTestSerial.e IRP_MJ_READ Serial0 SUCCESS Length 1: 00 <= portmon op HEX
0.00000391 ComTestSerial.e IOCTL_SERIAL_GET_MODEMSTATUS Serial0 SUCCESS
0.00000223 ComTestSerial.e IOCTL_SERIAL_GET_COMMSTATUS Serial0 SUCCESS
Dus zou iemand weten waardoor Microridge wel doet met het versturen van dezelfde decimale getallen als mijn programma?
Mijn dank zal groot zijn.
Olaf
-
Die write functie zonder overload (kent Visual Basic dat) is volgens mij puur string based...
https://msdn.microsoft.com/en-us/library/y2sxhat8(v=vs.110).aspx
Je zult even wat moeten prutsen met buffers zo te zien
https://msdn.microsoft.com/en-us/library/system.io.ports.serialport.write(v=vs.110).aspx
Ik wil mijn Atmel aansturen met een adres byte en een data byte.
En wat als je een karakter verliest om welke reden dan ook?
Zou een simple protocol maken, iets met STX / ETX en daartussen de data als ASCII verzenden...
Op de Atmel dan evt met s(s)canf (vreet wel geheugen) adres en data byte eruit halen...
Mvg
Robert
-
Zo te zien moet je die '6' dus als hex sturen en niet als decimaal zoals je nu doet.
Probeer dus eens:
Byte data = &H06
ipv Byte data = 6
En waarschijnlijk moet je het adres en de waarde in 1x sturen, dus maak een byte array zoals in dit voorbeeld:
Dim bytes() As Byte = { &H06, &H04 }
serialport.Write(bytes, 0, bytes.Length)
-
Die opmerking wilde ik ook maken. Er is nogal een verschil tussen de waarde 6 in een byte, de 2-bit en de 4-bit samen, en het getal of teken voor 6 dat je probeert te sturen en heel andere bits gaat geven.
Mvrgr
Koopmans
-
Iets als "decimaal sturen" bestaat dan ook helemaal niet. Als je echt de decimale waarde 6 verstuurt (wat in hex ook gewoon 6 is (vaak geschreven als 0x06), of 0b110 in binair). Maar het lijkt er inderdaad op dat niet de waarde 6 verstuurt wordt maar 6 als ASCII character waarde (54 decimaal ofwel 36 in hex).
Decimaal, binair, hexadecimaal, octaal etc zijn alleen verschillende schrijfwijzes van een getal.
ASCII is een ogelijke interpretatie van een waarde (en de standaard als het om tekst op een embedded systems gaat). Maar het zou net zo goed gewoon een getal kunnen zijn of een commando. Het is aan de programmeur de waarde goed te interpreteren :)
Timo
-
Je kan een byte array van een string maken, maar dan moet je wel naar ASCII converteren, anders krijg je UTF tekens over de lijn, waar je dan op de ontvanger weer problemen mee kan krijgen.
-
Hallo
Allemaal bedankt voor jullie input. (y)
Het werkt nu. :laugh: 15 naar kaart 4 en 64 naar kaart 6. Kaart telling trouwens van rechts naar links....
(https://s15.postimg.org/vwcx1tptn/IMG_5438.jpg)
Het lag dus aan mijn manier van declaratie noteren. Verder moeten ook die "()" en de "{}" toegevoegd worden anders werkt het niet. Ik had trouwens al met HEX een poging gedaan maar ik had dan de () en de {} vergeten.
enkele byte verzenden werkt wel met:
Dim data() As Byte = {&H4}
SerialPort2.Write(data, 0, 1)
werkt ook met:
Dim data() As Byte = {&H4}
SerialPort2.Write(data, 0, data.Length)
***************************************
2 bytes verzenden werkt met:
Dim bytes() As Byte = {&H6, &H4}
SerialPort2.Write(bytes, 0, bytes.Length)
***********************************
Zo nu kan ik eindelijk verder met programmeren.
Olaf
-
Google eens op visual basic arrays... en probeer wat meer van de taal te begrijpen. Nog beter, stap over op c# of vb.net...
Die schrijfwijze met accolades etc stelt een array voor, een "lijst" van bytes. Dat heb je nodig als je meerdere bytes in 1x wilt sturen.
Wat jij nu doet met:
Dim data() As Byte = {&H4}
is een array van 1 byte aanmaken... dat kan wel maar is niet zo zinvol. Kun je beter vervangen door:
Byte data = &H04
-
Hallo
Ik werk nu met vb.net => microsoft visual studio community 2015.
11 jaar geleden was ik dit project begonnen en toen heb ik gewerkt met visual basic 6 samen met het boek van de elektuur "elektronica en visual basic". Bij dat boek zat een cd met een dll file waarmee je de compoort mee kon aansturen. Gewoon met commando's zoals sendbyte en readbyte.
Dat project heeft dus jaren lang stil gelegen en nu heb ik een baan met meer rails dus pak ik het project weer op. Ik heb inderdaad nog veel te leren kwa programmeren. Ik merk ook dat er wel wat veranderd is kwa programmeer instructies. Op internet veel gezocht en ik kom veel voorbeelden tegen die stammen uit het visual basic 6 tijdperk.
Ik ga maar eens aan het programmeren. ;D
Bedankt voor je hulp.
Olaf
-
Ah ja nu zie ik het, ik was even onder de indruk dat je zelf ook nog met VB6 bezig was :)
-
UIt ervaring: Je kan een groot deel van de c# voorbeelden bijna rechtstreeks overnemen. VB.NET is een soort schil over de basis (c#)
-
Hallo
Bedankt voor je tip. Wellicht kan ik nog wat stukjes code gebruiken.
Olaf
-
Dat ziet er toch niet uit als Visual Basic, meer Visual Studio of .NET? Hoe zit dat nou? Ik heb Visual Basic 6.0 en kan daarmee zonder special DLL bestand geen USB poort aansturen.
Iemand enig idee hoe je dat met VB 6.0 kan doen?
-
Dit is dus de programmeertaal VB.Net. ".NET" is de naam v/h framework, "Visual Studio" is de naam van Microsoft voor een verzameling programmeertalen en tooling, om het maar even simpel te houden.
Mocht je nog met VB6 werken, ik zou daar mee ophouden en minstens overgaan op VB.NET (beter nog, C#). VB6 wordt niet meer ondersteund en is dramatisch ouderwetsch.
Voor VB6 heb je de MsComm Control component nodig: https://msdn.microsoft.com/en-us/library/aa259393(v=vs.60).aspx
-
Hallo Bert,
Stuur even een mail naar Mardec@ziggo.nl
Dan krijg je een zip file retour met een VB6 voorbeeldprojekt
(https://images.beneluxspoor.net/bnls/VB6Com.jpg) (https://images.beneluxspoor.net/bnls/VB6Com.jpg)
Nico
-
Ja jowi, kan wel ouderwets zijn, maar werkt nog steeds hardstikke goed met 64 bit hoor. Het heeft een heleboel tekortkomingen, maar ik heb geen geld om een volledige versie van VB.NET of C++ te kopen. :'(
Ik kan zo 1-2-3 niet eens een adres vinden waar deze te koop zijn. Gratis versies kan je niks mee compileren, is alleen om te leren. Wel gratis Windows 10 maar gratis developer tools, ho maar.
-
Het enige nadeel is dat de VB6 IDE niet werkt onder Windows Vista, 7, 8 en 10
Daarom gebruik ik een virtuele Windows XP (VMWare) waar VB6 in draait.
Nico
-
Eeeh nee VB werkt niet als 64 bits ;) dat het wel draait op een 64 bits OS is niet hetzelfde, maar dat is een technisch detail ;)
Overigens... Visual Studio Community 2015 Edition, met o.a. VB.NET, is gratis, en kun je gewoon compileren hoor, weet niet waar je dat vandaan hebt (y)
https://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx
-
Het enige nadeel is dat de VB6 IDE niet werkt onder Windows Vista, 7, 8 en 10
Oh jawel, dat werkt wel hoor!
Ik gebruik het heel af en toe voor legacy systemen hier. Gewoon onder Windows 8.
-
Oh jawel, dat werkt wel hoor!
Echt niet:
(https://images.beneluxspoor.net/bnls/VB6Win7.jpg) (https://images.beneluxspoor.net/bnls/VB6Win7.jpg)
Heb je soms een andere VB6?
-
Echt wel:
(https://images.beneluxspoor.net/bnls/vbwin8.jpg) (https://images.beneluxspoor.net/bnls/vbwin8.jpg)
-
Echt niet (windows 7)
(https://images.beneluxspoor.net/bnls/VB6setup.jpg) (https://images.beneluxspoor.net/bnls/VB6setup.jpg)
-
Tja je kan aan de gang blijven maar het kan dus wel werken. Ook onder Win7.
Google maar naar hoe je dat moet doen.
Hoe dan ook, beter de stap naar VB.Net maken als je zonodig in VB wilt blijven.
-
Hallo
Ter info: ik heb de titel even aangepast naar de juiste naam. ;)
Olaf
-
Het enige nadeel is dat de VB6 IDE niet werkt onder Windows Vista, 7, 8 en 10
Daarom gebruik ik een virtuele Windows XP (VMWare) waar VB6 in draait.
Nico
Nee hoor, ik gebruik VB 6.0 met XP, Vista en Win 7, geen enkel probleem. Werkt gewoon met 64-bit. (y) Windows 8 en 10 heb ik niet, dus kan ik niks over zeggen, maar aan andere posts te oordelen doet ie het ook met 8 en 10. Ik heb er een aantal grote projecten mee gedaan, werkt perfect. Ook geen problemen met compileren. Heb je mijn email nog ontvangen? Ben wel nieuwsgierig, je bent nooit te oud om te leren ;)
En ik ben hier weg, ik ga Olav's draadje niet verder vervuilen ;D
-
Als je op simpele wijze naar een echte exe wilt compilen kan je het beste sharpdevelop gebruiken, die kan de msbuild scripts genereren die je nodig hebt daarvoor.
Praktisch gezien heb je genoeg aan de Windows SDK en de commandoprompt, maar dat is voor complexere projecten nogal onhandig
-
Huh? Uit welk tijdperk kom jij? ;D raar verhaal, en zeker niet simpel... eerder bizar complex wat je voorstelt.
Gewoon de exe builden vanuit de IDE. Niks sharpdevelop en cmd prompts...
En dat kon ook al gewoon in VB6.
-
Hierboven beweert iemand dat hij geen release build kon maken... Dus vandaar de suggestie.
En commando regel builds is wel degelijk een deel van het officiële cursus materiaal. Maar misschien is dat er nu uitgehaald...
Ik heb het in het verleden een paar keer moeten doen...