none
Porta Serie - RRS feed

  • Pergunta

  • Boa tarde,

    Estou a fazer um programa que faz o interface entre uma balança (serie - RS232) e o PC.

    No PC tenho instalado WinXP Pro sp2 que está ligado a um domínio do Win2003 Svr.

    Acontece que quando faço a tentativa de ler a porta rs232 como administrador do computador não tenho qualquer problema, quando faço login ao dominio apesar do utilizador localmente estar definido como Administrador do computador, o programa feito em VB 2005 Express passa a mensagem que não tenho permissão para aceder à porta COM1.

    Aguém pode dar uma mãozinha?

    Obirgado

    Miguel Pinheiro

    sábado, 19 de agosto de 2006 13:40

Respostas

  • Miguel,

    Se nao me engano eu obtive este erro quando tentei abrir uma porta COM que já estava em uso, por exemplo pelo modem ou mouse serial, tente mudar para COM2, COM3 ou COM4.

    Sds,

    Diego

    sábado, 19 de agosto de 2006 16:00

Todas as Respostas

  • Estranho Miguel, eu acesso porta serial com meu usuário nao privilegiado na faculdade sem problema algum com o C# 2.0. Talvez seja questao de vc falar com o administrador da rede, talvez ele tenha definido alguma diretiva impedindo este acesso.

    Sds,

    Diego

    • Sugerido como Resposta Fernando L Silva segunda-feira, 9 de fevereiro de 2009 15:26
    sábado, 19 de agosto de 2006 14:48
  • Miguel,

    Mas você está executando o aplicativo a partir da rede ou está executando ele na própria máquina? Se estiver executando a partir da rede você entra em uma outra zona de segurança no .Net que é mais restrita do que a de aplicativos que rodam localmente.

    Abraços,
    Francisco
    OK, Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

    sábado, 19 de agosto de 2006 14:54
    Moderador
  • Boa tarde,

    Estou a utilizar na própria máquina.

    Também já verifiquei e não há nenhuma directiva a impedir o acesso à porta serie.

    Obrigado.

    Cmpts

    Miguel Pinheiro

    sábado, 19 de agosto de 2006 14:58
  • Você pode colar a exception completa (incluindo o stack trace) aqui no forum?
    sábado, 19 de agosto de 2006 15:06
  • Aqui vai Diego;

     

    System.UnauthorizedAccessException was unhandled
      Message="Access to the port 'COM1' is denied."
      Source="System"
      StackTrace:
           at System.IO.Ports.InternalResources.WinIOError(Int32 errorCode, String str)
           at System.IO.Ports.SerialStream..ctor(String portName, Int32 baudRate, Parity parity, Int32 dataBits, StopBits stopBits, Int32 readTimeout, Int32 writeTimeout, Handshake handshake, Boolean dtrEnable, Boolean rtsEnable, Boolean discardNull, Byte parityReplace)
           at System.IO.Ports.SerialPort.Open()
           at WindowsApplication1.Form1.Button1_Click(Object sender, EventArgs e) in C:\Documents and Settings\Joaquim\Definições locais\Application Data\Temporary Projects\WindowsApplication1\Form1.vb:line 4
           at System.Windows.Forms.Control.OnClick(EventArgs e)
           at System.Windows.Forms.Button.OnClick(EventArgs e)
           at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
           at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
           at System.Windows.Forms.Control.WndProc(Message& m)
           at System.Windows.Forms.ButtonBase.WndProc(Message& m)
           at System.Windows.Forms.Button.WndProc(Message& m)
           at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
           at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
           at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
           at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
           at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
           at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
           at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
           at System.Windows.Forms.Application.Run(ApplicationContext context)
           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
           at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
           at WindowsApplication1.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:line 81
           at System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
           at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
           at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
           at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
           at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
           at System.Threading.ThreadHelper.ThreadStart()

    Obrigado

    Cmpts

    Miguel Pinheiro

    sábado, 19 de agosto de 2006 15:39
  • Miguel,

    Se nao me engano eu obtive este erro quando tentei abrir uma porta COM que já estava em uso, por exemplo pelo modem ou mouse serial, tente mudar para COM2, COM3 ou COM4.

    Sds,

    Diego

    sábado, 19 de agosto de 2006 16:00
  • Obrigado Diego,

    O que se passava é que o ActiveSync estava a ocupar a porta Com1.

    Problema resolvido,

    Cmpts

    Miguel Pinheiro

    sábado, 19 de agosto de 2006 17:23