Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo illustra come inviare informazioni alla porta seriale usando il controllo Mscomm32.ocx.
Versione originale del prodotto: Visual FoxPro
Numero KB originale: 139526
Riepilogo
Questo articolo descrive le impostazioni necessarie per inviare dati alla porta seriale usando Mscomm32.ocx. Mscomm32.ocx viene fornito con Microsoft Visual FoxPro Professional Edition. Può essere usato nei computer che eseguono Microsoft Windows 95 e versioni successive di Windows.
Ulteriori informazioni
Le proprietà usate più di frequente per inviare dati alla porta seriale usando il controllo mscomm sono le seguenti:
CommPort
La CommPort
proprietà specifica il numero di porta di comunicazione. Proprietà numerica che corrisponde alla porta Comm. Per impostazione predefinita, questa proprietà è impostata su 1 corrispondente a com1. I valori validi sono 1, 2, 3 o 4 a seconda delle porte seriali installate nel computer e della relativa configurazione.
Impostazione
La Settings
proprietà configura la velocità baud, la parità, i bit di dati e i bit di arresto per la porta seriale. La proprietà Settings è una stringa di caratteri che contiene singoli valori delimitati da virgole. Per impostazione predefinita, la proprietà Settings è la seguente: 9600,N,8,1 Questa proprietà corrisponde a 9600 baud, nessuna parità, 8 bit di dati e 1 bit di arresto.
I valori di velocità baud seguenti sono validi: 110, 300, 600, 1200, 2400, 4800, 9600 (impostazione predefinita), 14400, 19200, 28800, 38400, 56000, 57600, 115200, 128000, 256000.
PortOpen
La PortOpen
proprietà specifica un valore logico che controlla se la porta seriale è aperta e attiva. Dopo aver impostato le proprietà precedenti per iniziare a usare la porta seriale, è possibile impostare questa proprietà su true.
Risultato
Alla proprietà Output viene assegnata la stringa di caratteri da inviare alla porta seriale. Per restituire la stringa "Hello World" alla porta seriale dopo l'impostazione delle proprietà precedenti, usare il comando seguente:
myform.mycomm.output = "Hello World"
Altre proprietà che possono essere necessarie anche a seconda dell'applicazione sono le seguenti:
CommEvent
La CommEvent
proprietà contiene un valore che rappresenta l'evento o gli errori di comunicazione più recenti.
Soglia S
La Sthreshold
proprietà specifica il numero minimo di caratteri nel buffer di output inviato.
OutBufferCount
Il controllo OutBufferCount restituisce il numero di caratteri in attesa nel buffer di trasmissione. Deve essere sempre zero se la Sthreshold
proprietà è zero. L'impostazione della OutBufferCount
proprietà su zero cancella il buffer di trasmissione.
OutBufferSize
La OutBufferSize
proprietà specifica le dimensioni del buffer di trasmissione. Per impostazione predefinita, questo buffer è di 512 byte. Maggiore è il buffer di trasmissione, minore è la memoria disponibile per altre applicazioni. Velocità di baud lente e stringhe di testo di grandi dimensioni scritte nella porta seriale possono significare che è necessario aumentare questo valore.
Di seguito è riportato un esempio che mostra come configurare il controllo di comunicazione e comporre il numero di telefono 555-1234 usando i comandi standard del modem Hayes.
PUBLIC ComForm
ComForm = CREATEOBJECT('Form')
ComForm.AddObject("Testcom","Olecontrol","MSCOMMLib.MSComm")
ComForm.Testcom.CommPort = 2 && Use Comm2, The second Serial Port.
ComForm.Testcom.Settings = "14400,N,8,1" && 14.4 Kbaud, No Parity,
&& 8 data Bits, 1 Stop Bit
ComForm.Testcom.PortOpen = .T.
ComForm.Testcom.Output = "ATDT555-1234" + chr(13) && Dialing the number
* The chr(13) is needed to complete the modem command sequence
ComForm.Testcom.PortOpen = .F.
***** End Code *****
Annotazioni
Se si usa questa opzione in un'applicazione e quindi si distribuisce l'applicazione tramite l'installazione guidata di Visual FoxPro, è possibile che venga visualizzato l'errore seguente quando si esegue l'applicazione:
Errore del programma Codice di errore OLE 0x80040112: licenza appropriata per questa classe non trovata.