Problemas com CACHE Windows x Arquivos/DBFs
Moderador: Moderadores
Problemas com CACHE Windows x Arquivos/DBFs
Olá pessoal,
Tenho alguns sistemas q são DBFs/CDX e trabalho com o ACBr
Sempre tenho alguns problemas, q aparentam ser estranhos e pelo tipo de conversa, já pergunto para meu técnico... vc conferiu se o CACHE do HD esta desativado? Ai ele confere e responde q estava ATIVADO, ai após desativar para os problemas...
Isto pq o Cache do Windows atrapalha fazermos a leitura tipo IF File(...), deletar o arquivo, gravar... etc pq o CACHE meio q prende o arquivo e da um monte de problema.
Apesar do meu pessoal ser orientado a conferir, na correria do dia a dia, em clientes q estavam ok, mas ai trocou de HD ou formatou o micro ou micro novo etc, acabam esquecendo... gerando reclamação no cliente, perca de tempo da equipe técnica etc etc.
Pensei em uma forma de desativarmos o CACHE do HD via programação/sistema.
Pesquisando/fazendo testes em meu micro, ATIVANDO e DESATIVANDO o cache pude perceber q a chave q é alterada varia de HD pra HD dentro do registro do Windows e tb se o for 64 x 32.
Então antes de continuar a empreita gostaria de saber se alguém sabe alguma forma de resolver isto ou já tenha resolvido.
Caso não o q penso em fazer é:
- Via chamadas do programa q manipula o registro exportar o mesmo para um arquivo;
- Varrer o arquivo jogando num array as chaves q forem relativas ao CACHE do HD;
- Fazer testes desativando e sobrescrevendo as chaves para ver se resolve.
Bom é isso ai, continuo na batalha... abraço.
Tenho alguns sistemas q são DBFs/CDX e trabalho com o ACBr
Sempre tenho alguns problemas, q aparentam ser estranhos e pelo tipo de conversa, já pergunto para meu técnico... vc conferiu se o CACHE do HD esta desativado? Ai ele confere e responde q estava ATIVADO, ai após desativar para os problemas...
Isto pq o Cache do Windows atrapalha fazermos a leitura tipo IF File(...), deletar o arquivo, gravar... etc pq o CACHE meio q prende o arquivo e da um monte de problema.
Apesar do meu pessoal ser orientado a conferir, na correria do dia a dia, em clientes q estavam ok, mas ai trocou de HD ou formatou o micro ou micro novo etc, acabam esquecendo... gerando reclamação no cliente, perca de tempo da equipe técnica etc etc.
Pensei em uma forma de desativarmos o CACHE do HD via programação/sistema.
Pesquisando/fazendo testes em meu micro, ATIVANDO e DESATIVANDO o cache pude perceber q a chave q é alterada varia de HD pra HD dentro do registro do Windows e tb se o for 64 x 32.
Então antes de continuar a empreita gostaria de saber se alguém sabe alguma forma de resolver isto ou já tenha resolvido.
Caso não o q penso em fazer é:
- Via chamadas do programa q manipula o registro exportar o mesmo para um arquivo;
- Varrer o arquivo jogando num array as chaves q forem relativas ao CACHE do HD;
- Fazer testes desativando e sobrescrevendo as chaves para ver se resolve.
Bom é isso ai, continuo na batalha... abraço.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problemas com CACHE Windows x Arquivos/DBFs
O Harbour tem isso pronto.
win_OsNetRegOk()
win_OsNetRegOk()
Código: Selecionar todos
FUNCTION PCFGWIN()
// Politica de controle de conta de usuario para drives mapeados (UAC) que bloqueia acesso a pastas mapeadas
// Ao que parece, ate mesmo o administrador vira usuario comum para isso
// [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]"EnableLinkedConnections"=dword:00000001
IF win_OsNetRegOk()
MsgExclamation( "Windows já configurado" )
ELSE
IF MsgYesNo( "Windows não configurado corretamente para o JPA." + hb_eol() + "Configura agora?" + hb_eol() + ;
"Obs. Conforme versão do Windows, Só vai ser possivel configurar se JPA executado como administrador" )
IF win_OsNetRegOk( .T., .T. )
IF ! MsgYesNo( "Configuração necessária aplicada. Continua?" )
QUIT
ENDIF
ELSE
MsgStop( "Não foi possivel aplicar configuração." )
ENDIF
ENDIF
ENDIF
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/
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/
Problemas com CACHE Windows x Arquivos/DBFs
Mas isso é pro CACHE do HD?
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problemas com CACHE Windows x Arquivos/DBFs
É pra rede.
Esse que mencionou aqui nem aparece, nem mesmo pro SSD.
Esse que mencionou aqui nem aparece, nem mesmo pro SSD.
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/
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/
Problemas com CACHE Windows x Arquivos/DBFs
SSD não usa, mas pra SATA normal q é a grande maioria dos HDs Desktop tem essa opção q vem por defaul ATIVADA
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Problemas com CACHE Windows x Arquivos/DBFs
Ola!
Uso DBF, nunca me preocupei com isso.
Só uso o tal "WIN_OSNETREGOK(.T.,.T.)" que vem no harbour.
DBF não tem esse problema do CACHE ai que vc informa, que eu saiba. Desativar o cache do HD deixa o sistema extremamente lento.
Isso é um problema do WINDOWS(opportunistic locking) , no Linux não tem esse problema, não precisa disso.
http://www.superbase.com/service_tech_s ... locks.html Boa leitura em inglês.
https://support.microsoft.com/en-us/hel ... windows-nt
Saudações,
Itamar M. Lins Jr.
Uso DBF, nunca me preocupei com isso.
Só uso o tal "WIN_OSNETREGOK(.T.,.T.)" que vem no harbour.
DBF não tem esse problema do CACHE ai que vc informa, que eu saiba. Desativar o cache do HD deixa o sistema extremamente lento.
Isso é um problema do WINDOWS(opportunistic locking) , no Linux não tem esse problema, não precisa disso.
http://www.superbase.com/service_tech_s ... locks.html Boa leitura em inglês.
https://support.microsoft.com/en-us/hel ... windows-nt
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
Problemas com CACHE Windows x Arquivos/DBFs
Obrigado pela explicação, vou testar, agora uma duvida se eu habilitar essa sugestão com o CACHE do HD desativado tem algum problema?
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Problemas com CACHE Windows x Arquivos/DBFs
Olá Pessoal,
Mas ao usar essa função, o usuário atual passa a ter privilégios de administrador. E se o cliente não quiser isso pode dar problema.
Mas ao usar essa função, o usuário atual passa a ter privilégios de administrador. E se o cliente não quiser isso pode dar problema.
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)
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)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problemas com CACHE Windows x Arquivos/DBFs
Pra executar essa função e fazer alterações, precisa privilégios.
Depois de alterado, normal.
Depois de alterado, normal.
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/
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/
Problemas com CACHE Windows x Arquivos/DBFs
Bom dia,
Fiquei confuso. Concluí três coisas com esse tópico:
1) Com a "diretiva de gravação em cache" habilitada, o comando DbAppend() não grava os dados no HD e sim num cachê
2) A função Win_OsNetRegOk(.T.,.T.) não trata exatamente essa questão e não se sabe ao certo o que ela faz
3) Considerando que se acessa DBFs num servidor mapeado a partir de uma estação, na prática, a função
Win_OsNetRegOk(.T.,.T.) não fará efeito nenhum na rede, seja qual for o objetivo dessa função
Concluí correto, pesssoal ??
Fiquei confuso. Concluí três coisas com esse tópico:
1) Com a "diretiva de gravação em cache" habilitada, o comando DbAppend() não grava os dados no HD e sim num cachê
2) A função Win_OsNetRegOk(.T.,.T.) não trata exatamente essa questão e não se sabe ao certo o que ela faz
3) Considerando que se acessa DBFs num servidor mapeado a partir de uma estação, na prática, a função
Win_OsNetRegOk(.T.,.T.) não fará efeito nenhum na rede, seja qual for o objetivo dessa função
Concluí correto, pesssoal ??
lugab
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Problemas com CACHE Windows x Arquivos/DBFs
Pois é...
Mas um teste que pode ser feito é o seguinte:
1-Num computador que não tenha ainda sido rodado a Win_OsNetRegOk(.T.,.T.), saia para o prompt de comando;
2-Tente alterar a data e também a hora, você será barrado;
3-Rode a Win_OsNetRegOk(.T.,.T.);
4-Altere data e hora pelo prompt que fica liberado.
PS: Nos testes que fiz, ela apenas alterou sem pedir nada ou dar algum aviso.
O motivo de eu não ter adotado isso para permitir atualizar a data e hora via aplicativo foi essa questão, pois ela atribui privilégios de administrador, então preferi não usar. Mas como você disse, talvez falte mais informação, ou uma forma de após atualizar data e hora voltar o Windows no estado anterior.
Mas um teste que pode ser feito é o seguinte:
1-Num computador que não tenha ainda sido rodado a Win_OsNetRegOk(.T.,.T.), saia para o prompt de comando;
2-Tente alterar a data e também a hora, você será barrado;
3-Rode a Win_OsNetRegOk(.T.,.T.);
4-Altere data e hora pelo prompt que fica liberado.
PS: Nos testes que fiz, ela apenas alterou sem pedir nada ou dar algum aviso.
O motivo de eu não ter adotado isso para permitir atualizar a data e hora via aplicativo foi essa questão, pois ela atribui privilégios de administrador, então preferi não usar. Mas como você disse, talvez falte mais informação, ou uma forma de após atualizar data e hora voltar o Windows no estado anterior.
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)
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)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problemas com CACHE Windows x Arquivos/DBFs
É simples, só olhar o fonte pra ver o que a função faz.
https://github.com/vszakats/harbour-cor ... win_os.prg
https://github.com/vszakats/harbour-cor ... win_os.prg
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/
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/
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Problemas com CACHE Windows x Arquivos/DBFs
Ola!
A função é essa ai em baixo, evita de editar o registro do windows na unha.
O que eu entendo dessa função é não deixar o windows controlar o travamento/compartilhamento dos arquivos, deixa isso por conta do RDD(clipper/Harbour/Fox...) fazer o controle de acesso(flock,rlock...) porque se o windows trava/libera um DBF o nosso sistema não vai saber, uma vez que o RDD não comunica com os processos do windows, não sabe. Por isso os problemas.
Saudações,
Itamar M. Lins Jr.
Basta rodar uma vez só.E se o cliente não quiser isso pode dar problema.
Se sabe sim. É só ler as explicações e olhar o fonte da tal função....e não se sabe ao certo o que ela faz
Isso foi e é a principal causa do clipper/dbf ser exorcizado por gerentes de redes, mas temos o NETIO, LETODB, ADS e outros para resolver esse problema. Mapeamento = problemas, em qualquer OS. Imagine um DBF de 60Gb para lá e para cá na rede wifi ou cabeada é problema na certa. Melhor usar TS(terminal service/putty etc...)...num servidor mapeado...
A função é essa ai em baixo, evita de editar o registro do windows na unha.
O que eu entendo dessa função é não deixar o windows controlar o travamento/compartilhamento dos arquivos, deixa isso por conta do RDD(clipper/Harbour/Fox...) fazer o controle de acesso(flock,rlock...) porque se o windows trava/libera um DBF o nosso sistema não vai saber, uma vez que o RDD não comunica com os processos do windows, não sabe. Por isso os problemas.
Código: Selecionar todos
´/*
* Windows OS - safe LAN networking
*
* Copyright 2004 Peter Rees <peter@rees.co.nz> Rees Software and Systems Ltd
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this software; see the file COPYING.txt. If not, write to
* the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
* Boston, MA 02111-1307 USA (or visit the web site https://www.gnu.org/).
*
* As a special exception, the Harbour Project gives permission for
* additional uses of the text contained in its release of Harbour.
*
* The exception is that, if you link the Harbour libraries with other
* files to produce an executable, this does not by itself cause the
* resulting executable to be covered by the GNU General Public License.
* Your use of that executable is in no way restricted on account of
* linking the Harbour library code into it.
*
* This exception does not however invalidate any other reasons why
* the executable file might be covered by the GNU General Public License.
*
* This exception applies only to the code released by the Harbour
* Project under the name Harbour. If you copy code from other
* Harbour Project or Free Software Foundation releases into a copy of
* Harbour, as the General Public License permits, the exception does
* not apply to the code that you add in this way. To avoid misleading
* anyone as to the status of such modified files, you must delete
* this exception notice from them.
*
* If you write modifications of your own for Harbour, it is your choice
* whether to permit this exception to apply to your modifications.
* If you do not wish that, delete this exception notice.
*
*/
/* Function to check and set Windows Registry settings
* for safe networking - for all versions of Windows.
*
* Also includes check for buggy VREDIR.VXD under Win95
* and if the correct patch file is found.
*/
#include "directry.ch"
#include "hbwin.ch"
/* NOTE: To change any of these registry settings
Administrator rights are required by default in Windows. [vszakats] */
FUNCTION win_osNetRegOk( lSetIt, lDoVista )
LOCAL bRetVal := .T.
LOCAL cKeySrv
LOCAL cKeyWks
hb_default( @lSetIt, .F. )
IF ! hb_defaultValue( lDoVista, .T. ) .AND. hb_osIsWinVista()
/* do nothing */
ELSEIF hb_osIsWin9x()
bRetVal := win_regQuery( WIN_HKEY_LOCAL_MACHINE, "System\CurrentControlSet\Services\VxD\VREDIR", "DiscardCacheOnOpen", 1, lSetIt )
ELSE
cKeySrv := "System\CurrentControlSet\Services\LanmanServer\Parameters"
IF lSetIt
lSetIt := ! hb_osIsWinNT() .OR. wapi_IsUserAnAdmin()
ENDIF
IF hb_osIsWin7()
/* https://groups.google.com/forum/#!msg/harbour-users/RyjXKmlQqWw/QOYwIPS5BQAJ */
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeySrv, "DisableLeasing", 1, lSetIt )
ELSE
cKeyWks := "System\CurrentControlSet\Services\LanmanWorkStation\Parameters"
/* Server settings */
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeySrv, "CachedOpenLimit", 0, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeySrv, "EnableOpLocks", 0, lSetIt ) /* Q124916 */
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeySrv, "EnableOpLockForceClose", 1, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeySrv, "SharingViolationDelay", 0, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeySrv, "SharingViolationRetries", 0, lSetIt )
IF hb_osIsWinVista()
/* If SMB2 is enabled turning off oplocks does not work, so SMB2 is required to be turned off on Server. */
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeySrv, "SMB2", 0, lSetIt )
ENDIF
/* Workstation settings */
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeyWks, "UseOpportunisticLocking", 0, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeyWks, "EnableOpLocks", 0, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeyWks, "EnableOpLockForceClose", 1, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeyWks, "UtilizeNtCaching", 0, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeyWks, "UseLockReadUnlock", 0, lSetIt )
IF hb_osIsWinVista()
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeyWks, "FileInfoCacheLifetime", 0, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeyWks, "FileNotFoundCacheLifetime", 0, lSetIt )
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, cKeyWks, "DirectoryCacheLifetime", 0, lSetIt )
ENDIF
IF hb_osIsWin2K()
bRetVal := bRetVal .AND. win_regQuery( WIN_HKEY_LOCAL_MACHINE, "System\CurrentControlSet\Services\MRXSmb\Parameters", "OpLocksDisabled", 1, lSetIt )
ENDIF
ENDIF
ENDIF
RETURN bRetVal
FUNCTION win_osNetVRedirOk( /* @ */ nResult )
LOCAL aFiles
LOCAL nSize
LOCAL cTime
nResult := 0
/* Check for faulty files */
IF hb_osIsWin9x() .AND. ;
Len( aFiles := hb_vfDirectory( hb_GetEnv( "WINDIR", "C:\WINDOWS" ) + "\SYSTEM\VREDIR.VXD" ) ) >= 1
nSize := aFiles[ 1 ][ F_SIZE ]
cTime := aFiles[ 1 ][ F_TIME ]
DO CASE
CASE nSize == 156749 .AND. cTime == "11:11:10"
nResult := 1111
CASE nSize == 140343 .AND. cTime == "09:50:00"
nResult := 950
ENDCASE
ENDIF
RETURN nResult == 0
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
-
Marcio_Carneiro
- Usuário Nível 2

- Mensagens: 70
- Registrado em: 07 Abr 2008 15:37
- Localização: Santo Antônio de Pádua - RJ
Problemas com CACHE Windows x Arquivos/DBFs
Estou me deparando com isto em um único cliente.
O seu HD é SSD.
Seus arquivos principais tem o tamanho de 47 a 50 mb.
Sempre achei estranho pois se copiava um arquivo.dbf para outra pasta e abria via dbu, ás vezes não deixava executar uma função, mesmo abrindo somente no dbu, sem compartilhamento na rede,
ele acusava que o arquivo está lockado, isto é, não permitia acesso. Sempre achei estranho.
Será que se eu passar esse utilitário melhorar a perfomance?
O que os amigos recomendam?
Outra coisa estranha é que neste cliente ficam criando múltiplos arquivos, com nomes de sequencia de letras como: BGDAAOCI, BECOCIEL.
Qual seria a causa da criação destes arquivos?
Harbour, dbf com ntx, utilizando mapeamento para acessar os dados
O seu HD é SSD.
Seus arquivos principais tem o tamanho de 47 a 50 mb.
Sempre achei estranho pois se copiava um arquivo.dbf para outra pasta e abria via dbu, ás vezes não deixava executar uma função, mesmo abrindo somente no dbu, sem compartilhamento na rede,
ele acusava que o arquivo está lockado, isto é, não permitia acesso. Sempre achei estranho.
Será que se eu passar esse utilitário melhorar a perfomance?
O que os amigos recomendam?
Outra coisa estranha é que neste cliente ficam criando múltiplos arquivos, com nomes de sequencia de letras como: BGDAAOCI, BECOCIEL.
Qual seria a causa da criação destes arquivos?
Harbour, dbf com ntx, utilizando mapeamento para acessar os dados
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Problemas com CACHE Windows x Arquivos/DBFs
Só lembro desse tipo de arquivo em clipper.
Tem certeza de que trocou todos os programas em Clipper?
Tem certeza de que trocou todos os programas em Clipper?
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/
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/
