Poderiam me ajudar? Fiz um trabalho e vou disponibilizar para todos.
Porém gostaria de resolver duas coisas:
1- Dificultar um pouco as coisas para os espertinhos que copiam seu trabalho, dão uma ajeitada e postam também, reivindicando autoria. Tem um nome para isso, não lembro. Vai servir para evitar muitos.
2- São dez arquivos e somam por volta de 6gb. E desse modo faço um pequeno programa simples alterando somente a cadeia de caracteres do arquivo da máquina do interessado. Fica fácil, pouca coisa e não tenho que upar cópias inteiras enormes alteradas.
Então vendo algumas pequenos tutoriais, estou tentando escrever o programa em C e fiz uma bagunça.
Não sou programador e nunca programei nada. Vamos ver se pego o embalo e me aprofundo melhor em C ou C++.
#include<stdio.h>
FILE *AltData;
AltData = fopen("ArquivoA.bin", "rb"); // Abre ArquivoA.bin para leitura dos dados
if((AltData = fopen("ArquivoA.bin","rb" == NULL)
{
printf("Erro ao abrir arquivo!!!\n");
exit(-1); // Fecha se algum erro ao abrir ou não existe
}
AltData = fopen("ArquivoB.bin", "wb"); // Abre ArquivoB.bin para escrita.
if((AltData = fopen("ArquivoB.bin","wb" == NULL)
{
printf("Erro ao abrir arquivo!!!\n");
exit(-1);
}
fread(&id, sizeof(ArquivoA.bin), 1, ArquvoA.bin); // Lê e copia o ArquivoA inteiro
fwrite(&ArquivoB.bin, sizeof(315 75BF 315 791F), 1, ArquivoA.bin); //Grava todos dados de ArquivoA,
// no endereço 315 75BF até 315 791F do ArquivoB.bin
printf("\n\nDados salvos com sucesso!\n\n");
fflush(stdin); // Limpa o cache.
fclose(ArquivoA.bin); // Fecha primeiro arquivo.
fclose(ArquvoB.bin); // Fecha segundo arquivo.
return 0;
}
Nóossa! Deve estar uma beleza, não é? Me mostrem onde foi que não errei. E dicas para onde pisoteei.
Fico agradecido.
Erros na hora de compilar essa bagunça.
||=== Build: Debug in AltBin (compiler: GNU GCC Compiler) ===|
main.c|6|warning: data definition has no type or storage class [enabled by default]|
main.c|6|warning: type defaults to 'int' in declaration of 'AltData' [-Wimplicit-int]|
main.c|6|error: conflicting types for 'AltData'|
main.c|4|note: previous declaration of 'AltData' was here|
main.c|6|warning: initialization makes integer from pointer without a cast [enabled by default]|
main.c|6|error: initializer element is not constant|
main.c|8|error: expected identifier or '(' before 'if'|
main.c|14|warning: data definition has no type or storage class [enabled by default]|
main.c|14|warning: type defaults to 'int' in declaration of 'AltData' [-Wimplicit-int]|
main.c|14|error: conflicting types for 'AltData'|
main.c|4|note: previous declaration of 'AltData' was here|
main.c|14|warning: initialization makes integer from pointer without a cast [enabled by default]|
main.c|14|error: initializer element is not constant|
main.c|16|error: expected identifier or '(' before 'if'|
main.c|22|error: expected declaration specifiers or '...' before '&' token|
main.c|22|error: expected declaration specifiers or '...' before 'sizeof'|
main.c|22|error: expected declaration specifiers or '...' before numeric constant|
main.c|22|error: unknown type name 'ArquvoA'|
main.c|23|error: expected declaration specifiers or '...' before '&' token|
main.c|23|error: expected declaration specifiers or '...' before 'sizeof'|
main.c|23|error: invalid suffix "BF" on integer constant|
main.c|23|error: invalid suffix "F" on integer constant|
main.c|23|error: expected declaration specifiers or '...' before numeric constant|
main.c|23|error: unknown type name 'ArquivoA'|
main.c|25|error: expected declaration specifiers or '...' before string constant|
main.c|27|error: expected declaration specifiers or '...' before '(' token|
main.c|28|error: expected ')' before '.' token|
main.c|29|error: expected ')' before '.' token|
main.c|31|error: expected identifier or '(' before 'return'|
main.c|32|error: expected identifier or '(' before '}' token|
||=== Build failed: 22 error(s), 6 warning(s) (0 minute(s), 0 second(s)) ===|
Xíi Acho que começei mal, mas vamos ver se ajeito isso!!!
Porém gostaria de resolver duas coisas:
1- Dificultar um pouco as coisas para os espertinhos que copiam seu trabalho, dão uma ajeitada e postam também, reivindicando autoria. Tem um nome para isso, não lembro. Vai servir para evitar muitos.
2- São dez arquivos e somam por volta de 6gb. E desse modo faço um pequeno programa simples alterando somente a cadeia de caracteres do arquivo da máquina do interessado. Fica fácil, pouca coisa e não tenho que upar cópias inteiras enormes alteradas.
Então vendo algumas pequenos tutoriais, estou tentando escrever o programa em C e fiz uma bagunça.
Não sou programador e nunca programei nada. Vamos ver se pego o embalo e me aprofundo melhor em C ou C++.
#include<stdio.h>
FILE *AltData;
AltData = fopen("ArquivoA.bin", "rb"); // Abre ArquivoA.bin para leitura dos dados
if((AltData = fopen("ArquivoA.bin","rb" == NULL)
{
printf("Erro ao abrir arquivo!!!\n");
exit(-1); // Fecha se algum erro ao abrir ou não existe
}
AltData = fopen("ArquivoB.bin", "wb"); // Abre ArquivoB.bin para escrita.
if((AltData = fopen("ArquivoB.bin","wb" == NULL)
{
printf("Erro ao abrir arquivo!!!\n");
exit(-1);
}
fread(&id, sizeof(ArquivoA.bin), 1, ArquvoA.bin); // Lê e copia o ArquivoA inteiro
fwrite(&ArquivoB.bin, sizeof(315 75BF 315 791F), 1, ArquivoA.bin); //Grava todos dados de ArquivoA,
// no endereço 315 75BF até 315 791F do ArquivoB.bin
printf("\n\nDados salvos com sucesso!\n\n");
fflush(stdin); // Limpa o cache.
fclose(ArquivoA.bin); // Fecha primeiro arquivo.
fclose(ArquvoB.bin); // Fecha segundo arquivo.
return 0;
}
Nóossa! Deve estar uma beleza, não é? Me mostrem onde foi que não errei. E dicas para onde pisoteei.
Fico agradecido.
Erros na hora de compilar essa bagunça.
||=== Build: Debug in AltBin (compiler: GNU GCC Compiler) ===|
main.c|6|warning: data definition has no type or storage class [enabled by default]|
main.c|6|warning: type defaults to 'int' in declaration of 'AltData' [-Wimplicit-int]|
main.c|6|error: conflicting types for 'AltData'|
main.c|4|note: previous declaration of 'AltData' was here|
main.c|6|warning: initialization makes integer from pointer without a cast [enabled by default]|
main.c|6|error: initializer element is not constant|
main.c|8|error: expected identifier or '(' before 'if'|
main.c|14|warning: data definition has no type or storage class [enabled by default]|
main.c|14|warning: type defaults to 'int' in declaration of 'AltData' [-Wimplicit-int]|
main.c|14|error: conflicting types for 'AltData'|
main.c|4|note: previous declaration of 'AltData' was here|
main.c|14|warning: initialization makes integer from pointer without a cast [enabled by default]|
main.c|14|error: initializer element is not constant|
main.c|16|error: expected identifier or '(' before 'if'|
main.c|22|error: expected declaration specifiers or '...' before '&' token|
main.c|22|error: expected declaration specifiers or '...' before 'sizeof'|
main.c|22|error: expected declaration specifiers or '...' before numeric constant|
main.c|22|error: unknown type name 'ArquvoA'|
main.c|23|error: expected declaration specifiers or '...' before '&' token|
main.c|23|error: expected declaration specifiers or '...' before 'sizeof'|
main.c|23|error: invalid suffix "BF" on integer constant|
main.c|23|error: invalid suffix "F" on integer constant|
main.c|23|error: expected declaration specifiers or '...' before numeric constant|
main.c|23|error: unknown type name 'ArquivoA'|
main.c|25|error: expected declaration specifiers or '...' before string constant|
main.c|27|error: expected declaration specifiers or '...' before '(' token|
main.c|28|error: expected ')' before '.' token|
main.c|29|error: expected ')' before '.' token|
main.c|31|error: expected identifier or '(' before 'return'|
main.c|32|error: expected identifier or '(' before '}' token|
||=== Build failed: 22 error(s), 6 warning(s) (0 minute(s), 0 second(s)) ===|
Xíi Acho que começei mal, mas vamos ver se ajeito isso!!!