Arquivo de Tags: windows

Ao tentar subir um serviço no Windows, pode aparecer uma mensagem indicando que o serviço iniciou e parou, e que muitos serviços fazem isso por não terem tarefas a realizar naquele momento. Não se deixe enganar por esse engano estúpido de tratamento de erro do Windows.

Vá ao event log e procure pelo erro ao subir o serviço. Se encontrar algo desse tipo:

Service cannot be started. System.Configuration.ConfigurationErrorsException: Configuration system failed to initialize —> System.Configuration.ConfigurationErrorsException: Invalid character in the given encoding. Line 4, position 33. (C:\path\to\service\config.exe.config line 4) —> System.Xml.XmlException: Invalid character in the given encoding. Line 4, position 33.
at System.Xml.XmlTextReaderImpl.Throw(Exception e)
at System.Xml.XmlTextReaderImpl.Throw(String res, String arg)
at System.Xml.XmlTextReaderImpl.InvalidCharRecovery(Int32& bytesCount, Int32& charsCount)
at System.Xml.XmlTextReaderImpl.GetChars(Int32 maxCharsCount)
at System.Xml.XmlTextReaderImpl.ReadData()
at System.Xml.XmlTextReaderImpl.ParseCDataOrComment(XmlNodeType type, Int32& outStartPos, Int32& outEndPos)
at System.Xml.XmlTextReaderImpl.ParseCDataOrComment(XmlNodeType type)
at System.Xml.XmlTextReaderImpl.ParseComment()
at System.Xml.XmlTextReaderImpl.ParseElementContent()
at System.Xml.XmlTextReaderImpl…

Trata-se certamente do encoding do arquivo de configuração em questão (ou qualquer outro arquivo envolvido no processo). Talvez você tenha alterado o encoding acidentalmente ao editar o arquivo, ou então algum desenvolvedor já tenha repassado o artigo pra você com o encoding incorreto.

Enfim, basta que você altere o encoding do(s) arquivo(s) (nesse caso, utilizei o encoding UTF-8, que deve funcionar na maioria das vezes) e voilá.

Service started successfully.

Particularmente eu gosto de usar o ActiveState Komodo para esta tarefa, mas existem montes de aplicativos para se fazer isso.

See ya

O IIS tem, por padrão, o tamanho de 200k para qualquer requisição feita por páginas ASP. Uma requisição de upload por exemplo, pode facilmente ultrapassar esse valor. Sendo assim, é possível configurar o IIS para utilizar outros valores.

Para tanto basta entrar, via prompt do DOS na pasta aInetPubAdminScripts e rodar o seguinte comando:

adsutil set w3svc/AspMaxRequestEntityAllowed 1024000

O valor 1024000 representa o limite de 1MB para a requisição. A resposta no prompt deve ser:

AspMaxRequestEntityAllowed : (INTEGER) 1024000

See ya

PS: ok, esse é mais um post de teste do que qualquer outra coisa. Colocar logo de cara um post de windows é foda, eu sei.