Jump to content

Recommended Posts

  • Replies 43
  • Created
  • Last Reply

Top Posters In This Topic

Posted (edited)

como assim?

tipo:

FILE *ficheiro;
ficheiro=fopen("ficheirononevelho.txt","w+");
ficheiro=rename(ficheironomevelho,fhicheironnovo);

isto?

posso só meter:?

FILE *ficheiro;
ficheiro=fopen("ficheirononevelho.txt","w+");
rename(ficheironomevelho,fhicheironnovo);
Edited by seuqram
Posted

Não. Nas páginas que te indiquei existem exemplos de utilização das duas funções. Podes ver lá mas uma nota prévia: nunca tentes mudar o nome a um ficheiro aberto. Apenas chamas as funções e passas ponteiros para strings com os nomes requeridos pelas mesmas. O retorno das funções indica se a função foi bem sucedida.

  • 1 month later...
Posted (edited)

para eleminar posso utilizar: remove( "myfile.txt" )

não percebo porque há de estar dentro do if. só quero apagar, não saber se resultou ou não!

Edited by seuqram
Posted

para eleminar posso utilizar: remove( "myfile.txt" )

não percebo porque há de estar dentro do if. só quero apagar, não saber se resultou ou não!

isso é um erro muito comum ... uma pessoa tem SEMPRE de saber se a função resultou, seja esta ou outra qualquer !!

depois não digam que os programas estão cheiros de bugs

IRC : sim, é algo que ainda existe >> #p@p
Posted

isso é um erro muito comum ... uma pessoa tem SEMPRE de saber se a função resultou, seja esta ou outra qualquer !!

depois não digam que os programas estão cheiros de bugs

que tipo de bug pode haver? O.o

posso usar como quero ou n?

o programa é que vai escolher o ficheiro!

Posted

imagina que queres:

remover um ficheiro para poder criar o teu com o mesmo nome

se o ficheiro está a ser acedido por mais do que um processo, o sistema operativo impossibilita a remoção do ficheiro falhando o remove ou unlink.

pela mesma razão, caso tentes chamar o fopen com o parâmetro de abertura para criação do ficheiro também aqui irá falhar !!!

IRC : sim, é algo que ainda existe >> #p@p
Posted

E não deves apenas verificar na função de remover , deves também verificar quando crias um ficheiro, pois podes por vários motivos não poder criar, como por exemplo espaço insuficiente no disco ... Mas ai já testas com o NULL

Corrige um sábio e ele mais sábio ficará. Corrige um ignorante e um inimigo ganharás.

Posted

ok...

mas quando o remove, remove um ficheiro, ele nem vai prá reciclagem nem pra lado nenhum. é totalmente eleminado não é?

sinceramente não sei, mas porque não fazes um programa básico e testas? simples 👍

Corrige um sábio e ele mais sábio ficará. Corrige um ignorante e um inimigo ganharás.

Posted (edited)

resolvido xD

só uma pergunta que não tem nada a ver com este topico, como encriptar uma pasta? ou como junta-la ao executavel sem ser vista??? não quero ocultar a pasta porque o utilizador pode seleccionar todos os componentes da pasta principal e não seleccionar a oculta! só se ao selecionar o executavel selecionava automaticamente a pasta, como o fazer?

Edited by seuqram
Posted (edited)

olha, eu na minha pasta onde está o meu jogo tem uma pasta chamada memória, se eu encriptá la para que os utilizadores não fassam batota, eles podes substiruar ela por outra assim os arquivos vão para essa nova pasta não escriptada e eles já podem ir lá trocar uns valores! eu queria algo como, encriptado mas não pode ser eliminado nem substituído daquela pasta, só é eleminado quando a pasta principal(onde essa se situa)é eliminada.Ou não sei :/

Edited by seuqram
Posted

a razão porque existe sempre alguém que consegue jogar os jogos de computador das grandes empresas é porque, no final, é sempre possível dar a volta a esse tipo de preocupações.

a aplicação está no computador de uma pessoa, logo o programador não tem o poder de bloquear nada. por muitos processos de encriptação ou semelhantes que um programador possa fazer, existe sempre maneira de "fazer batota".

conclusão : ou tentas fazer algo semelhante do que a blizzard fez com o diablo 3 (que no entanto é só dar mais um tempo que se arranja maneira dar a volta também) ou mais vale nem pensar nisso. porque o jogo está completamente nas mãos do jogador, se ele faz batota, está deliberadamente a dizer que é burro o suficiente para não aproveitar a experiência que o programador lhe oferece com a aplicação que lhe é dada.

IRC : sim, é algo que ainda existe >> #p@p
Posted

Como o Hyppo disse, não te preocupes muito com isso. As grandes editoras gastam milhões a tentar inventar novos métodos e aparece sempre alguém que consegue dar a volta.

Se realmente quiseres um mínimo de segurança, o que tens a fazer é encriptar os ficheiros, e não as pastas. Mas o trabalho que te vai dar, provavelmente não te compensa.

Posted (edited)

obrigado pelos conselhos 👍

podem-me dar algum encripta-dor como o hippo me deu mas o download direto? algum que encripte musicas e imagens(ficheiros)!

Edited by seuqram
Posted (edited)

Podes usar a libcrypto, parte da Openssl, com um algoritmo estilo o blowfish:

openssl:http://www.openssl.o...l-1.0.1c.tar.gz

Documentação: http://www.openssl.o...pto/crypto.html

blowfish: http://www.openssl.o.../blowfish.html#

ou a que o Hyppo deu:ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.5.0.tar.bz2

Howto: http://www.dewinter....GMiniHowto.html

De qq forma acho que é trabalho a mais para o que queres... Além de que, provavelmente, vais ter dificuldades em fazê-lo sozinho.

Podes também implementar um algoritmo básico teu, como somar um X a cada byte ao gravar e subtrair o mesmo X ao ler (tendo sempre atenção aos overflows). Não resiste a uma análise aprofundada, mas desencoraja algum curioso.

Edited by Flinger

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.