Q64108: GET from COM1 or COM2 Fails to Get Correct Data – Use INPUT$
Article: Q64108 Product(s): See article Version(s): 7.00 7.10 | 7.00 7.10 Operating System(s): MS-DOS | OS/2 Keyword(s): ENDUSER | SR# S900710-87 buglist7.00 buglist7.10 | mspl13_basic Last Modified: 1-AUG-1990 The GET statement fails to read the correct information from a communications port (COM1, COM2) with Microsoft BASIC Professional Development System (PDS) version 7.00. Characters are removed from the buffer, but the values read in are not the correct values sent across the port. To work around this problem, use the INPUT$ function to read the data from the COM port. Microsoft has confirmed this to be a problem with Microsoft BASIC PDS versions 7.00 and 7.10 for MS-DOS and OS/2. We are researching this problem and will post new information here as it becomes available. This problem does NOT occur in Microsoft QuickBASIC version 4.50 or earlier or in Microsoft BASIC Compiler version 6.00b or earlier. Code Example ------------ The following program attempts to read characters from COM1 using both GET and INPUT$: DIM a AS STRING * 1, b AS STRING * 1 OPEN "COM1:300,n,8,1" FOR RANDOM AS #1 GET #1, , a b = INPUT$(1, 1) PRINT a, b END In QuickBASIC 4.50, both the GET and INPUT$ statements return the correct values, but in BASIC PDS 7.00 and 7.10, only INPUT$ returns the correct data while GET returns meaningless data.
THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.
Copyright Microsoft Corporation 1986-2002.