gildo.rj Posted December 10, 2003 Report Share Posted December 10, 2003 Meus Reis, tive um problema em um cliente que tem um funcionário meio xereta que conhece um pouquinho do Dbase e anda editando os dbfs e fazendo besteiras, agora pergunto eu, existe alguma função para deixar os dbfs disponiveis somente para o programa executavel? caso existam são confiaveis ? gildo de oliveira Quote Link to comment Share on other sites More sharing options...
vagner Posted December 10, 2003 Report Share Posted December 10, 2003 citação:Meus Reis, tive um problema em um cliente que tem um funcionário meio xereta que conhece um pouquinho do Dbase e anda editando os dbfs e fazendo besteiras, agora pergunto eu, existe alguma função para deixar os dbfs disponiveis somente para o programa executavel? caso existam são confiaveis ? gildo de oliveira id=quote>id=quote>Bom antigamente eu alterava o cabaçalho do arquivo, porém não aconselho para rede (heheh) Abraços Vagner Wirts São Paulo-Brasil Quote Link to comment Share on other sites More sharing options...
mou321 Posted December 10, 2003 Report Share Posted December 10, 2003 Caro Amigo Gildo estou te Mandando uma LIB que tem uma funcao Assim : a Funcao é EDBF() Se Quizer proteger o ARQCLI.DBF EDBF("ARQCLI.DBF",.T.) Se Quizer proteger o ARQCLI.DBF EDBF("ARQCLI.DBF",.F.) se usar a funcao assim ret = EDBF("ARQCLI.DBF") retornara verdadeiro se pode usar o modo interativo retornara falso se estiver bloqueado para este acesso ok qual o seu e-mail Quote Link to comment Share on other sites More sharing options...
gildo.rj Posted December 10, 2003 Author Report Share Posted December 10, 2003 gildo.rj@click21.com.br gildo de oliveira Quote Link to comment Share on other sites More sharing options...
karinha Posted December 10, 2003 Report Share Posted December 10, 2003 // ------------------------------------------------------------------ // Programa ..: PROTEGER.PRG // Descricao..: Protege um arquivo DBF/DBT para que nao possa ser lido // por uma ferramenta externa. Para isto trocar o 1§. // byte do arquivo incluindo-le 1. // Autores ...: Grupo Eidos - libraria ABRAXAS // ------------------------------------------------------------------ //#Include "FiveWin.Ch" // Para Clipper Puro, Comente Este Arquivo #Include "FileIO.Ch" #Define SOLODBF 3 // Se trata de um arquivo DBF sem DBT associado #Define DBFDBT 131 // Se trata de um arquivo DBF com DBT associado // ------------------------------------------------------------------ // Funcao ....: Proteger // Descricao..: Protege um arquivo DBF/DBT // Parametros : cFichero -> Nome do arquivo com extensao. // Devolve ...: .T. ou .F. // Notas .....: Executar a funcao antes de abrir o Arquivo para // desproteger, e depois fechar para proteger. // Em caso de nao poder abrir, executar 2 vezes a funcao. // ------------------------------------------------------------------ FUNCTION Proteger( cFichero ) LOCAL nHandle := 0 LOCAL cByte := " " LOCAL nByte := 0 // Controle erros parametros IF ValType( cFichero ) != "C" RETURN .F. ENDIF // Abrir, se tem erro devolver .F. IF ( nHandle := fOpen( cFichero, FO_READWRITE ) ) = -1 RETURN .F. ENDIF // Ler, se tem erro devolver .F. IF fRead( nhandle, @cByte, 1 ) != 1 RETURN .F. ELSE fSeek( nHandle, 0 ) ENDIF nByte := Asc( cByte ) DO CASE CASE nByte = SOLODBF // 3 IF fWrite( nHandle, Chr( SOLODBF + 1 ) ) != 1 RETURN .F. ENDIF CASE nByte = SOLODBF + 1 // 3 + 1 IF fWrite( nHandle, Chr( SOLODBF ) ) != 1 RETURN .F. ENDIF CASE nByte = DBFDBT // 131 IF fWrite( nHandle, Chr( DBFDBT + 1 ) ) != 1 RETURN .F. ENDIF CASE nByte = DBFDBT + 1 // 131 + 1 IF fWrite( nHandle, Chr( DBFDBT ) ) != 1 RETURN .F. ENDIF ENDCASE RETURN fClose( nHandle ) // ------------------------------------------------------------------ // chame assim para proteger // Proteger( "BANCO.DBF" ) // protegemos // Desproteger Arquivo DBF -------------------------------------------- // Proteger( "BANCO.DBF" ) Proteger( "BANCO.DBF" ) // Primeiro desprotegemos USE BANCO IF lPack = .T. PACK ENDIF INDEX ON Field->NOME TO BANCO dbCloseArea() Proteger( "BANCO.DBF" ) // Logo protegemos // --------------------------------------------------------------------- // Outro exemplo em CLIPPER puro... /* Função de proteção de arquivos de dados contra acessos indevidos. Em todos os sistemas desenvolvidos há um grande dilema, como proteger os arquivos .DBF ? Entre os usuários finais sempre há aquele curioso que acessa o banco de dados e acabam danificando ou alterando os dados. Como esta função estes problemas sao todos resolvidos, os arquivos são totalmente protegidos contra qualquer acesso indevido, eles ficam disponÃveis somente para o executável. Autor: Emerson Borges dos Santos Fone: 041-961-5884 Compilação Clipper Protege.prg Linkedição Blinker Protege.obj Ps: É recomendavel a utilização da função SETCALCEL(.F.), um cancelamento em sua aplicativo usando o ALT+C causará problemas, visto que os arquivos encontram-se desprotegidos, causando erros na próxima chamada do programa executavel. */ CLS // Nome de seus bancos de dados, Dbase, fox, Dbu, nao abre nem a PAU! // Troque os nomes sim? Coloque os nomes dos seus bancos. PROT("ALUGADAS.DBF") PROT("AVULSO.DBF") PROT("CADCLI.DBF") PROT("CADETIQ.DBF") PROT("CAIXA.DBF") PROT("CAIXA2.DBF") PROT("CALCULA.DBF") PROT("CONTROL1.DBF") PROT("CONTROL2.DBF") PROT("COPIA.DBF") PROT("ENDER.DBF") PROT("ENDERECO.DBF") PROT("FP_PROV.DBF") PROT("FUNC.DBF") PROT("MENSA.DBF") PROT("MENSA2.DBF") PROT("MENSA3.DBF") PROT("MENSA4.DBF") PROT("MESA.DBF") PROT("NASC.DBF") PROT("NASCETIQ.DBF") PROT("NOME.DBF") PROT("NTICKET.DBF") PROT("PERSON.DBF") PROT("PRECOS.DBF") PROT("PROD.DBF") PROT("PROVIS.DBF") PROT("TAB_PROV.DBF") PROT("TAB_RESP.DBF") PROT("TROCO.DBF") @ 10,15 SAY "Os arquivos estão Protegidos, para desprotege-los execute" @ 11,15 SAY " novamente este programa !!" INKEY(0) FUNCTION PROT() PARAMETERS FILE PRIVATE READ_BYTES, WRITE_BYTES, HANDLE, BUFFER HANDLE = FOPEN(FILE,2) IF HANDLE = -1 RETURN(.F.) ENDIF BUFFER = SPACE(01) READ_BYTES=FREAD(HANDLE,@BUFFER,1) IF READ_BYTES !=1 RETURN(.F.) ENDIF BUFFER=IIF(ASC(BUFFER)=3,CHR(4),IIF(ASC(BUFFER)=4,CHR(3),BUFFER)) BUFFER=IIF(ASC(BUFFER)=131,CHR(132),IIF(ASC(BUFFER)=131,CHR(132),BUFFER)) FSEEK(HANDLE,0,0) WRITE_BYTES = FWRITE(HANDLE,BUFFER,1) IF WRITE_BYTES !=1 RETURN(.F.) ENDIF FCLOSE(HANDLE) RETURN(.T.) // Veja no \samples TESTCRC.PRG e TEST14.PRG Modifique-os // Espero tê-lo ajudado. Abraços. João Santos São Paulo-Brasil (11) 3106-2832 a Noite karinhannah@ubbi.com.br Quote Link to comment Share on other sites More sharing options...
gildo.rj Posted December 11, 2003 Author Report Share Posted December 11, 2003 só uma perguntinha essas funções não tem o risco de travarem os dbfs, inclusive pro sistema que as chama? gildo de oliveira Quote Link to comment Share on other sites More sharing options...
mou321 Posted December 11, 2003 Report Share Posted December 11, 2003 Nao tem perigo nao inclusive Para redes. vou te mandar um arquivo NG da biblioteca ai vc ler entendera melhor ok Mauricio (RJ) Quote Link to comment Share on other sites More sharing options...
evandro Posted December 11, 2003 Report Share Posted December 11, 2003 Olá, MaurÃcio, gostaria de receber esta lib também, inclusive com o NG. Se puder me envie. Melhor ainda seria se postasse em "Dicas", assim todos teriam acesso. []s, Evandro G. de Paula Curvelo - MG evandro@skillnet.com.br (Escr. - na Cidade) imortal@skillnet.com.br (Res. - na Roça) Quote Link to comment Share on other sites More sharing options...
gildo.rj Posted December 11, 2003 Author Report Share Posted December 11, 2003 isso ai evandro, to contigo, valeu tbm mauricio c é campeão, só mais um detalhe pro mauricio, c tá indo ai pra sampa, c encontrar com os amigos, agora quando voltar vamos organizar um encontro nosso aki no Rio, precisamos nos unir ok. gildo de oliveira Quote Link to comment Share on other sites More sharing options...
mou321 Posted December 11, 2003 Report Share Posted December 11, 2003 So nao posso postar em dicas a lib depois vai entender. Quanto ao encontro gildo e so marcar sexta que vem valeu Mauricio (RJ) Quote Link to comment Share on other sites More sharing options...
gildo.rj Posted December 12, 2003 Author Report Share Posted December 12, 2003 Fechado Mauricio, agora quero convocar a galera do Rio e os manos de Sampa que queiram e que possam vir tomar umas conosco. gildo de oliveira Quote Link to comment Share on other sites More sharing options...
karinha Posted December 12, 2003 Report Share Posted December 12, 2003 Excelente Idéia Gildo. Tem meu total apoio. Abraços. João Santos São Paulo-Brasil (11) 3106-2832 a Noite karinhannah@ubbi.com.br Quote Link to comment Share on other sites More sharing options...
gildo.rj Posted December 12, 2003 Author Report Share Posted December 12, 2003 Valeu o apoio bad boy, acho que toda tentativa de união é valida porque a união faz açucar a força quem faz é o peão (he he he he), espero voce aki . Grande Mauricio, já tinha houvido falar desta lib, testei e deu tudo certo, muito obrigado irmão agora quero ver como se comporta em redes. Abraços gildo de oliveira Quote Link to comment Share on other sites More sharing options...
evandro Posted December 12, 2003 Report Share Posted December 12, 2003 Olá, citação: agora quero convocar a galera do Rio e os manos de Sampa que queiram e que possam vir tomar umas conosco.id=quote>id=quote>Quanta discriminação hem? O pessoal de Minas e de outros estados, se puderem, não podem querer? (brincadeira) citação:agora quero ver como se comporta em redes. id=quote>id=quote>Logo que testar, poste o resultado, para podermos acompanhar. Se conseguir fazer este teste antes, postarei aqui. []s, Evandro G. de Paula Curvelo - MG evandro@skillnet.com.br (Escr. - na Cidade) imortal@skillnet.com.br (Res. - na Roça) Quote Link to comment Share on other sites More sharing options...
gildo.rj Posted December 12, 2003 Author Report Share Posted December 12, 2003 Desculpe a falha gravissima evandro, é logico que estão todos convidos, quem puder pode vir, falha nossa gildo de oliveira Quote Link to comment Share on other sites More sharing options...
qiinfo Posted December 12, 2003 Report Share Posted December 12, 2003 Boa tarde Mauricio, Se for possivel mande para mim tambem esta lib, eu ainda trabalho do velho e bom DOS, mas seria muito importante para mim trabalhar com banco de dados cliptografado. Abraços, Rossine. Meu e-mail: qiinfo@ig.com.br Quote Link to comment Share on other sites More sharing options...
eajunior Posted December 12, 2003 Report Share Posted December 12, 2003 Ola Mauricio se puder mandar para meu email, fico agradecido Elias Abrão Júnior Fone : (0**19) 3825-0812 Indaiatuba - SP eajunior.fw@terra.com.br Quote Link to comment Share on other sites More sharing options...
ppedroso Posted December 15, 2003 Report Share Posted December 15, 2003 Olá Mauricio. Poderia me mandar por e-mail também, desde já agradeço pela sua atenção, abraços. Paulo ppap@uol.com.br Quote Link to comment Share on other sites More sharing options...
mou321 Posted December 15, 2003 Report Share Posted December 15, 2003 Caros amigos sei que poderia resolver oi problema postando a tal LIB mas nao posso no e-mail explico por que. Vou Mandar Para Todos. Mauricio (RJ) Quote Link to comment Share on other sites More sharing options...
mou321 Posted December 15, 2003 Report Share Posted December 15, 2003 Caros Amigos esqueci de citar um detalhe para rede tem que usar uma combinacao com o fopen use o fopen para abrir o arquivo em modo exclusivo se falhar e porque algum outro terminal ja desprotegeu ok a mesma coisa para proteger ao final do processo deixe sempre para o ultimo terminal Abracos Mauricio (RJ) Quote Link to comment Share on other sites More sharing options...
Tatoo Posted August 7, 2004 Report Share Posted August 7, 2004 Ola Mauricio se puder mandar para meu email, fico agradecido tatoo_el_angel_rubio@yahoo.com.ar Quote Link to comment Share on other sites More sharing options...
jef2_tim Posted August 9, 2004 Report Share Posted August 9, 2004 Égua (Expressao paraense de espanto e euforia) :D:D: tbm quero poxa... manda pra eu esta lib amigao... jef2_tomber@hotmail.com um clipper abracaum ae Quote Link to comment Share on other sites More sharing options...
HERGON Posted August 9, 2004 Report Share Posted August 9, 2004 Olá, Tambem gostaria de receber esta lib. herberson@ponteware.com.br Obrigado Quote Link to comment Share on other sites More sharing options...
elitenet Posted August 9, 2004 Report Share Posted August 9, 2004 Olá, Se puder manda para o meu e-mail também! elitenet@terra.com.br Marcelo Gomes dos Santos Quote Link to comment Share on other sites More sharing options...
evandro Posted August 9, 2004 Report Share Posted August 9, 2004 Olá, Só lembrando que a lib só vai funcionar em Clipper. Quem usa o [x]Harbour deve usar a rotina postada neste tópico. []s, Evandro G. de Paula Curvelo - MG evandro@skillnet.com.br (Escr. - na Cidade) imortal@skillnet.com.br (Res. - na Roça) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.