Pergunta

I recebendo o seguinte erro quando eu tento ligar para o meu aplicativo de servidor usando comunicação remota:

Um problema parece ter ocorrido enquanto a conexão com o servidor remoto:
Servidor encontrou um erro interno. Para mais informações, desligue customErrors no arquivo .config do servidor.

Este é o código no meu aplicativo de servidor:

TcpChannel tcpChannel = new TcpChannel(999);
MyRemoteObject remObj = new MyRemoteObject (this);
RemotingServices.Marshal(remObj, "MyUri");
ChannelServices.RegisterChannel(tcpChannel);

Parece que funciona pela primeira vez, mas a menos que o aplicativo servidor for reiniciado o erro ocorre.

Eu acho que algo não está sendo limpo corretamente, mas eu não tenho certeza do que como o customError ainda está ligado.

Todas as ideias onde eu começar. Obrigado.

[EDIT] - Graças a Gulzar, eu modifiquei meu código acima para o seguinte e agora os erros são mostrados:

RemotingConfiguration.CustomErrorsMode = CustomErrorsModes.Off;
TcpChannel tcpChannel = new TcpChannel(999);
MyRemoteObject remObj = new MyRemoteObject (this);
RemotingServices.Marshal(remObj, "MyUri");
ChannelServices.RegisterChannel(tcpChannel);
Foi útil?

Solução

Para .Net 1.0 / 1.1, você precisa de um arquivo de configuração para servidor remoto

Se você não tem um arquivo <ServerEXE>.config, crie uma e têm este nele:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <system.runtime.remoting>    
      <customErrors mode="off" />
   </system.runtime.remoting>
</configuration>

Para Net 2.0, você pode usar RemotingConfiguration.CustomErrorsMode propriedade

Outras dicas

No arquivo do servidor, use:

RemotingConfiguration.CustomErrorsEnabled(bool);

Para desligar customErrors, abra o web.config file no servidor. Se houver um tag customErrors, alterá-lo. Se não houver um, adicioná-lo.

Deve ser <customErrors mode="Off"/> para esta finalidade.

Se você está realmente usando uma página de erro personalizada, você vai querer alterar esta definição, uma vez que você encontrou o seu problema.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top