Problema: Harbour e DBFs em rede Windows

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

Problema: Harbour e DBFs em rede Windows

Mensagem por JoséQuintas »

Um problema muito, mas muito estranho com Harbour, DBFs, e rede Windows.
Ocorrendo em redes com servidor XP, WIndows 7 e Windows 8.
Talvez estes dois problemas estejam relacionados, mas um deles eu nunca vi.

Problema 1:
Arquivo ficando preso.
Nenhum usuário utilizando o sistema, e acusa que o DBF está em uso.

Problema 2:
Este é o mais fdp, estava lá no cliente e vi pessoalmente.
Ao atualizar versão, o sistema acusou DOS ERROR 2, DBF não encontrado, nas estações, mas não no servidor.
O sistema cria automaticamente os DBFs que não existem, e este era um arquivo novo.
Olhando no servidor pelo prompt:

DIR ARQUIVO.DBF
ok, o arquivo está lá.

DIR A*.DBF
Mostra todos, menos o arquivo.dbf

attrib arquivo.dbf
tá lá, somente o atributo A de arquivo

COPY *.DBF TEMP
Copia todos, menos o arquivo.dbf

Pelo Explorer, não aparece o arquivo.

No servidor, fazendo a reindexação, voltou tudo ao normal.
Minha reindexação cria um novo arquivo com os registros, apaga o original e renomeia.

Direitos de acesso ou algo parecido eu descarto, porque tudo foi feito pelo mesmo usuário diretamente no servidor.
Problemas de cabeamento idem.
A mesma máquina e mesmo usuário criaram o arquivo da primeira vez, e também na reindexação.

Harbour 3.2, gtwvg e multithread.
Tomei o cuidado de incluir toda a configuração em cada thread (SIXCDX, filecase, etc).
Apesar do multithread, ainda não liberei várias janelas abertas ao mesmo tempo, apenas está compilado com multithread.

Não sei exatamente quando começou o problema, mas de diferente nos últimos tempos que passei a usar foram: gtwvg, multithread, e a API do windows pra arquivos temporários. Como a API do Windows não se limita a apenas fornecer o nome, também inclui na lista de suspeitos.

Alguém já passou por isto?
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
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Problema: Harbour e DBFs em rede Windows

Mensagem por asimoes »

José,

Você tentou fazer um teste de gerar esse arquivo no drive local?
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Problema: Harbour e DBFs em rede Windows

Mensagem por JoséQuintas »

Acho que não entendeu.
Tudo isso foi diretamente no servidor, em drive local.
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
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Problema: Harbour e DBFs em rede Windows

Mensagem por asimoes »

Ok. entendi.

Será algo relacionado a anti-virus ou cache do windows?
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Problema: Harbour e DBFs em rede Windows

Mensagem por JoséQuintas »

Por enquanto nenhuma idéia.
Mas muito preocupado, porque não poder usar o sistema em rede pode ser o fim.
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
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Problema: Harbour e DBFs em rede Windows

Mensagem por Itamar M. Lins Jr. »

Ola!
32 ou 64 ?
Eu não uso mais o drive nativo do Harbour em rede, uso o letodb, nunca tive problemas.
Outra coisa não fico criando e apagando arquivo dbf o tempo todo, nem indices, apenas os relatórios em disco.
Abro os dbf´s na hora que uso quando sai da telas de incluir/alterar/etc fecho tudo.
Depois que usei Linux o sistema de arquivos do ruindows NTFS agora me parece sempre suspeito.

Verifique se está tudo conforme o "Viktor Szakarts" ensinou.

Código: Selecionar todos

If !WIN_OSNETREGOK()
   If WIN_OSNETREGOK(.t.,.t.)
   Else
      hwg_Msginfo('Registro do windows não ajustado !')
   EndIf
EndIf

2010-10-22 17:49 UTC+0200 Viktor Szakats (harbour syenar.net)
  * contrib/hbwin/win_os.prg
    + WIN_OSNETREGOK() extended to disable some SMB2 internal caches,
      which if left on default might cause db corruption on Vista
      and above systems.
...
    + WIN_OSNETREGOK() extended to turn of SMB2 on Vista and upper systems.
    ! Fixed WIN_OSNETREGOK() to only attempt to change HKLM registry settings
      if run under admin account (on NT systems). This also fixes a typo
      in current xhb implementation.
    ; Adaptation of xhb addition by Peter Rees.
...
    ! Fixed WIN_OSNETREGOK() to also consider Win7 when second parameter is .T.

https://pctoledo.org/forum/viewto ... =4&t=11325

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Problema: Harbour e DBFs em rede Windows

Mensagem por JoséQuintas »

Eu não conhecia isso, e nunca fiz isso nem na minha máquina.
Acabo de alterar meu programa principal e inclui isto:

Código: Selecionar todos

   IF .NOT. win_OsNetRegOk()
      IF MsgYesNo( "Windows nao configurado corretamente. Configura?" + HB_EOL() + "Obs.Pra poder configurar, necessario executar como administrador" )
         IF win_OsNetRegOk( .t., .t. )
            MsgExclamation( "Configuracao necessaria aplicada" )
         ELSE
            MsgExclamation( "Nao foi possivel aplicar configuracao, provavelmente JPA nao foi executado como administrador" )
         ENDIF
      ENDIF
   ENDIF
Agora aguardar.

Obs. Antes eu abria só arquivos necessários, depois passei a abrir todos, depois voltei a abrir somente necessários, mas ainda falta ajustar alguns módulos. Só crio arquivos quando necessário, no caso eram novos 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
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Problema: Harbour e DBFs em rede Windows

Mensagem por Itamar M. Lins Jr. »

Se precisar entender mais e ver o que faz esta função:
https://github.com/harbour/core/blob/ma ... win_os.prg

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Problema: Harbour e DBFs em rede Windows

Mensagem por JoséQuintas »

Tentei baixar esse letodb do sourceforge.
Diz que tem 2.61mb mas baixa somente 200kb e acusa arquivo corrompido.
Qual a outra opção?
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
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Problema: Harbour e DBFs em rede Windows

Mensagem por Itamar M. Lins Jr. »

Posso mandar para seu email ele já compilado.
Para quem usa o Harbour do GIT ou 3.2 funciona blz.
Melhor irei subir aqui mesmo no forum é bem pequeno.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Problema: Harbour e DBFs em rede Windows

Mensagem por Itamar M. Lins Jr. »

Pronto, esperando aprovação do moderador.

T+
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Problema: Harbour e DBFs em rede Windows

Mensagem por JoséQuintas »

Acabei chegando a este artigo:


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


Num site encontrei um texto mais ou menos assim:
"A Microsoft considera isso bom, porque evita o funcionamento de programas obsoletos"

Pesquisando outros sites, indicam que esse hotfix altera este parâmetro:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]"EnableLinkedConnections"=dword:00000001

Tem a ver com o tal UAC (Controle de Conta de Usuário), que surgiu no Vista e versões posteriores.
Ainda não comprovado na prática.

Seja o que for, nunca precisei configurar nenhum Windows antes, é algo recente.
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
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Problema: Harbour e DBFs em rede Windows

Mensagem por rochinha »

Amiguinho,

As vezes, raramente, tenho este problema de um arquivo ficar travado, mesmo sem um aplicativo estar por trás com ele aberto. Fica como um fantasma. Em se tratando de Windows e problema pode ser relacionado ao controle de cache.

O uso de LetoDB ou NetIO pode ser uma solução se a implementação for somente uma picada de agulha.

Se o seu caso de manipular o UAC do Windows veja e teste para Windows XP:

Código: Selecionar todos

...
 CATCH
   // Ajuda a instalar automaticamente a capicom.dll
   UAC( 0 )
   iif( file( "CAPICOM.DLL" ), RegisterServer( "CAPICOM.DLL" ), MsgStop( "Nao foi instalado CAPICOM.DLL" ) )
   UAC( 1 )
   //myrun("install.bat")
...
 CATCH
   // Ajuda a instalar automaticamente a capicom.dll
   UAC( 0 )
   iif( file( "CAPICOM.DLL" ), RegisterServer( "CAPICOM.DLL" ), MsgStop( "Nao foi instalado CAPICOM.DLL" ) )
   UAC( 1 )
   //myrun("install.bat")
   Return(aVETOR)
 END
END

FUNCTION UAC(nAtivar)
 *****************************************************
 * Grava o registro do aplicativo 
 *****************************************************
 LOCAL cRunName, cRunKey, cRegKey
 // EnableLUA
 // 0-Desativar
 // 1-Ativar
 cRegValue:= nAtivar
 cRegKey := "Software\Microsoft\Windows\CurrentVersion\Policies\System"
 cRegRoot := HKEY_LOCAL_MACHINE
 SETREGVAR( cRegRoot, cRegKey, "EnableLUA", cRegValue )
 RETURN 0

FUNCTION SETREGVAR(nKey, cRegKey, cSubKey, uValue)
 LOCAL oReg, cValue
 nKey := IF(nKey == NIL, HKEY_CURRENT_USER, nKey)
 uValue := IF(uValue == NIL, "", uValue)
 oReg := TReg32():Create(nKey, cRegKey)
 cValue := oReg:Set(cSubKey, uValue)
 oReg:Close()
 RETURN cValue
Para Windows Vista ou Seven a chave muda:

Código: Selecionar todos

FUNCTION UACV(nAtivar)
 *****************************************************
 * Grava o registro do aplicativo 
 *****************************************************
 LOCAL cRunName, cRunKey, cRegKey
 // EnableLUA
 // 0-Desativar
 // 1-Ativar
 cRegValue:= nAtivar
 cRegKey := "SOFTWARE\Microsoft\Security Center"
 cRegRoot := HKEY_LOCAL_MACHINE
 SETREGVAR( cRegRoot, cRegKey, "UACDisableNotify", cRegValue )
 RETURN 0
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Problema: Harbour e DBFs em rede Windows

Mensagem por Kapiaba »

Bom dia Rochinha, Pode me ajudar aqui porfa:

http://fivewin.com.br/index.php?/topic/ ... o-windows/

Obg. abs.
Marcio_Carneiro
Usuário Nível 2
Usuário Nível 2
Mensagens: 70
Registrado em: 07 Abr 2008 15:37
Localização: Santo Antônio de Pádua - RJ

Problema: Harbour e DBFs em rede Windows

Mensagem por Marcio_Carneiro »

Estou com um problema estranho.
Sistema antigo, migrado para harbour, rodando em rede a muitos anos.
De repente, começou a ficar lento:
Num terminal se abrir um prg (via atalho), é rápido, normal, realiza operações, e imprime.
Se abrirmos um outro terminal, fica tudo lento, a impressão chega a pausar na impressora.

Será que este procedimento relatado(Win_OsNetRegOk() poderia ser o caminho das pedras?

Um abraço Marcio

Harbour 3.02 - DBF COM NTX
Responder