PRB: Erro tempo de execução 8015 se você tentar abrir a porta serial com o Microsoft Comm Control

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 318832
Sintomas
Se você tentar abrir a porta serial com Microsoft Comm Control, você receberá a seguinte mensagem de erro:
Erro em tempo de execução '8015': não foi possível definir estado de comunicação, pode haver um ou mais parâmetros de comunicação inválido.
Causa
Esse comportamento pode ocorrer se um driver de impressora serial estiver usando a porta serial que você está tentando abrir.
Resolução
Para resolver esse comportamento, desative a impressora serial ou anexá-lo a outra porta. Se você estiver usando o Microsoft Windows 2000 ou Microsoft Windows XP, crie uma porta virtual.
Situação
Esse comportamento pode ocorrer se o driver de impressora serial não está funcionando corretamente e não é um problema com o controle MSComm32.
Mais Informações
Para contornar esse comportamento, criar uma nova porta virtual e usá-lo em vez de COM1.

Aviso : se qualquer outra coisa imprime na impressora anexada ao COM1, seu programa não pode funcionar como esperado.
  1. Adicione o seguinte código à seção General Declarations do Form1:
            Private Declare Function DefineDosDevice Lib "kernel32" Alias _            "DefineDosDeviceA" (ByVal dwFlags As Long, ByVal lpDeviceName _            As String, ByVal lpTargetPath As String) As Long        Const DDD_RAW_TARGET_PATH = &H1					
  2. Adicione outro botão de comando ao Form1.
  3. Adicione o seguinte código no evento Click Command2:
    DefineDosDevice DDD_RAW_TARGET_PATH, "COM5", "\Device\Serial0"					
  4. Alterar o código no Command1 para abrir COM5:
    MSComm1.CommPort = 5					
  5. Execute o programa, clique em Command2 e em seguida, clique em Command1 .

Passos para reproduzir o problema

  1. Instalar uma impressora de texto genérico e, em seguida, conecte-o para COM1 em vez de LPT1.
  2. Inicie um novo projeto Standard EXE no Microsoft Visual Basic. Por padrão, é criado o Form1.
  3. Adicione o controle de comunicação do Microsoft ao projeto.
  4. Adicione um novo controle MSComm1 no Form1.
  5. Adicionar um novo botão de comando no Form1 e, em seguida, insira o código a seguir no evento Click :
    MSComm1.CommPort = 1MSComm1.Settings = "9600,N,8,1"MSComm1.Handshaking = comNoneMSComm1.InBufferSize = 1024MSComm1.OutBufferSize = 512MSComm1.RThreshold = 0MSComm1.SThreshold = 0MSComm1.InputLen = 0MSComm1.PortOpen = True					
  6. Execute o programa e, em seguida, clique em Command1 .
Referências
Para obter mais informações, consulte a documentação de função DefineDosDevice na (MSDN) no SDK.
Porta serial erro não especificado

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 318832 - Última Revisão: 11/03/2003 17:32:45 - Revisão: 2.0

Microsoft Visual Basic Enterprise Edition for Windows 6.0

  • kbmt kberrmsg kbmodem kbprb kbserial KB318832 KbMtpt
Comentários