dos error 64 rede windows server

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

dos error 64 rede windows server

Mensagem por JoséQuintas »

À primeira vista, parece que são os terminais que ficam parados com o sistema aberto.
Pelo que vi, dos error 64 é "nome de rede excluído".
Numa das vezes que isso aconteceu, a pasta dos DBFs do servidor não dava pra ser acessada, levou vários segundos para voltar ao normal.
Alguém já passou por esse problema?

José M. C. Quintas
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

dos error 64 rede windows server

Mensagem por JoséQuintas »

Esta alteração na errorsys vai ter o efeito que espero?
Aguardar 2 segundos e tentar novamente.

Código: Selecionar todos

   IF e:OsCode == 64
      wOpen( 10, 10, 20, 80, "Atenção" )
      @ 15, 15 SAY "Servidor sumiu. Tentar novamente em 2 segundos"
      Inkey(2)
      wClose()
      RETURN .T.
   ENDIF
Nota:
Provavelmente seria configurar o timeout no servidor, mas quando não se tem acesso, o jeito é tentar alternativas.
Pelo menos o sistema vai ficar mostrando a janelinha pro usuário, que deve cobrar solução do responsável.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
zazibr
Usuário Nível 2
Usuário Nível 2
Mensagens: 72
Registrado em: 11 Set 2004 17:07
Localização: Campo Grande/MS

dos error 64 rede windows server

Mensagem por zazibr »

ja verificou na configuração de hardware se esta habilitado para desligar se a maquina entrar em modo de economia de energia ?
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

dos error 64 rede windows server

Mensagem por Jairo Maia »

Olá José,

Mil perdões, não tenho nada em mão para indicar agora, mas no próprio site da Microsoft, sei que tem muita informação sobre isso. E igualmente confusa, a medida que são situações diversas que podem provocar a perda da conexão. Sem substimar sua capacidade de pesquisa, sei que entre outras coisas você irá encontrar desde incompatibilidade de hardware, e até mesmo orientação a usar o ping antes de tentar se conectar...

PS: Se você estiver usando *SQL, sei que os servidores (não sei a partir de qual versão do OS, mas o servidor ignora configuração de economia de energia), mas uma das razões pode inclusive ser essa questão.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

dos error 64 rede windows server

Mensagem por JoséQuintas »

Se considerar o texto da Microsoft, o Harbour é velho.

"É possível que alguns programas mais antigos não salvem ou acessem dados com a unidade desconectada. Porém, eles funcionam normalmente antes da unidade ser desconectada. "

Aí diz que o limite de tempo é de 15 minutos pra desconectar o terminal automaticamente.

http://support.microsoft.com/kb/297684

A informação contida neste artigo aplica-se a:
Microsoft Windows Server 2003, Standard Edition (32-bit x86)
Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
Microsoft Windows 2000 Server
Microsoft Windows 2000 Professional Edition
Microsoft Windows Small Business Server 2003 Premium Edition
Microsoft Windows Small Business Server 2003 Standard Edition
Microsoft Windows XP Home Edition
Microsoft Windows XP Professional
Service Pack 3 para Windows XP
Microsoft Windows XP Professional x64 Edition
Microsoft Windows Server 2003, Enterprise x64 Edition
Windows Vista Enterprise 64-bit edition
Windows Vista Enterprise
Windows Vista Home Basic
Windows Server 2008 R2 Enterprise
Windows Server 2008 Enterprise
Windows 7 Enterprise


1. Precisa um tempo pra reconectar
2. Não sei se ao reconectar, a conexão antiga ainda vale, a que está aberta no Harbour
3. Aquela alteração que mencionei seria uma tentativa de contornar isto.

Ok. Tendo acesso ao servidor dá pra alterar isso, mas se não tiver... complica
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

dos error 64 rede windows server

Mensagem por Jairo Maia »

Olá José,
JoséQuintas escreveu:Se considerar o texto da Microsoft, o Harbour é velho.
O Harbour não, mas aplicativos que precisam de mapeamento sim. Você ainda usa mapeamento com o Harbour?
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

dos error 64 rede windows server

Mensagem por JoséQuintas »

Sim, continuo usando a pasta do servidor mapeada como uma letra.
Mas no problema em questão some letra, pasta e tudo, porque o terminal foi desconectado e precisa tempo pra reconectar.
Mesmo que algum arquivo esteja aberto.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

dos error 64 rede windows server

Mensagem por Jairo Maia »

Talvez então você possa desativar este recurso via linha de comando como indica o artigo, algo como:

Código: Selecionar todos

Hb_Run( "net config server /autodisconnect:-1" )
Embora também possa ser feito via registro.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

dos error 64 rede windows server

Mensagem por JoséQuintas »

Não sei se a segurança do servidor vai deixar.
Tive uma idéia pra quebra galho: rodar uma rotina cada 5 minutos pra acessar a pasta, usando multithread.
Pelo menos vai manter a conexão ativa.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

dos error 64 rede windows server

Mensagem por Kapiaba »

Olá, Tive Problemas com windows 2003 server, e resolvi assim:

Código: Selecionar todos

    // Pego novamente o diretorio onde estao os .DBFs
    CHDIR(direxe)

    SET DEFAULT TO
Não sei se é o seu caso, mas não custa tentar.

Obg. abs.
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

dos error 64 rede windows server

Mensagem por Jairo Maia »

JoséQuintas escreveu:Tive uma idéia pra quebra galho: rodar uma rotina cada 5 minutos pra acessar a pasta, usando multithread.
Creio que resolva. Neste caso, pode ser assim também, só não sei se altera o consumo de CPU:

Código: Selecionar todos

nTempo := Seconds()+300

nTask := HB_BackGroundAdd( {|| If( Seconds() > nTempo, ChecaServ(), Nil ) } )

HB_IdleAdd( {|| HB_BackGroundRun( nTask ) } )

Function ChecaServ()
 nTempo := Seconds()+300
 /*
  codigo
 */
Return
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

dos error 64 rede windows server

Mensagem por JoséQuintas »

Eu criei esta classe pra esse tipo de coisa.
Repete a rotina a cada intervalo de tempo, enquanto o programa que chamou estiver sendo executado.
A rotina fica independente do programa, mas fechou o programa a rotina também fecha (com checagem a cada 1 segundo).
No caso de forçar fechamento, só alterar pra ::lExit := .T.

Nota:
É pra WVG. Apesar de não ter tela, é necessário criar o ambiente de trabalho com tela oculta.
AppInitSets() é minha função que inicializa meu ambiente de trabalho (pasta temporária, codepage, etc).

Código: Selecionar todos

oRun := RunWhileThreadClass():New()
oRun:nInterval := 300
oRun:bCode := { || Directory("*.*") }
hb_ThreadStart( { || oRun:Execute() } )

Código: Selecionar todos

CREATE CLASS RunWhileThreadClass
   VAR lExit        INIT .F.
   VAR nThreadId
   VAR nInterval    INIT 600
   VAR cWindowTitle INIT ""
   VAR bCode
   METHOD Init()
   METHOD Execute( bCode )
   END CLASS

METHOD Init() CLASS RunWhileThreadClass
   ::nThreadId := hb_ThreadSelf()
   RETURN NIL

METHOD Execute( bCode ) CLASS RunWhileThreadClass
   LOCAL nCont

   hb_gtReload( "WVG" )
   IF bCode != NIL
      ::bCode := bCode
   ENDIF
   AppInitSets()
   HB_GtInfo( HB_GTI_WINTITLE, ::cWindowTitle )
   wvgSetAppWindow():Hide()
   DO WHILE .NOT. ::lExit
      Eval( ::bCode )
      FOR nCont = 1 TO ::nInterval
         hb_ReleaseCPU()
         IF hb_ThreadWait( ::nThreadId, 0.1, .T. ) == 1
            ::lExit := .T.
         ENDIF
         Inkey(1)
         IF ::lExit
            EXIT
        ENDIF
      NEXT
   ENDDO
   RETURN NIL
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

dos error 64 rede windows server

Mensagem por Jairo Maia »

Ok! Eu estava curioso pra saber como você faria isso com MultiThread.

A única coisa que observei foi que se você acessa desta forma: oRun:bCode := { || Directory("*.*") }, não deveria ter o caminho da pasta do servidor para que o terminal acione a conexão?
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

dos error 64 rede windows server

Mensagem por JoséQuintas »

Para o aplicativo, a pasta atual é a pasta dos arquivos.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

dos error 64 rede windows server

Mensagem por JoséQuintas »

Por enquanto nenhum erro novo.
E por enquanto usando a primeira opção.

Código: Selecionar todos

STATIC FUNCTION DefError( e )
   LOCAL nCont, cMessage, aOptions, nChoice

   // by default, division by zero yields zero
   IF ( e:GenCode == EG_ZERODIV )
      RETURN ( 0 )
   ENDIF

   // Adicionado em 06/07/2014 pra forçar não dar erro 
   IF e:OsCode == 64
      wOpen( 10, 10, 20, 80, "Atenção" )
      @ 15, 15 SAY "Servidor sumiu. Tentar novamente em 2 segundos"
      Inkey(2)
      wClose()
      RETURN .T.
   ENDIF
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder