Duda acerca de CRC

Aquí puedes preguntar o compartir tus dudas y conocimientos acerca del programa
Hola buenas, quería saber si alguien sabe como funciona más o menos lo del CRC, ya que quiero hacer uso de el pero con io.open(file, "rb"); en vez de con el CRC que hay en el AMS y la verdad es que todo lo que he visto no me funciona nada, me piden librerías y cosas varias que no encuentro tampoco...

Gracias anticipadas y saludos!!!
Que tal, una vez lo use en un proyecto para comprobar si dos archivos son identicos. Lo que puedo hacer es recomendarte esta pagina
http://es.wikipedia.org/wiki/Comprobaci ... C3%ADclica
Pienso que lo unico que tienes que hacer es una del .DLL que te manipule en modo BIT los archivos. Ya que el CRC es para comprobar la Redundancia Ciclica a modo Binario.

Espero te sirva un poco.
Gracias compi por la página, la echaré un vistazo haber si consigo enterarme de como va, además hay archivos fuente del C++, si lo consigo descifrar lo mismo lo puedo portar.
Puedes bajarte un módulo que ví para el cálculo de CRC:

http://luamemcached.googlecode.com/svn/trunk/CRC32.lua

La implementación de dicho módulo en una función que se pueda usar con io.open sería:
CRC = require('CRC32');
function GetCRC(sFile)
	local sH = (type(sFile)=="userdata") and sFile or io.open(sFile, "rb");
	if sH then
		sH:seek("set");
		return CRC.Hash(sH:read("*a"));
	else
		return -1;
	end
end
Dialog.Message("", GetCRC(_SourceFolder.."\\t.lua"));
La función retornará siempre un número (-1 en caso de fallo) y en el argumento puedes enviarle el manejador de un archivo previamente abierto con io.open ó el path completo a un archivo a leer.
Gracias webultra ;) le voy a echar un vistazo en cuanto tenga tiempo y a lo mejor saco algo bueno de todo jejeje.
esta muy chulo!! :D
Creo que lo voy a dejar mejor y lo hago con el CRC check del AMS... porque es un poco lenta la función y me puedo tirar una eternidad comprobando el archivo... he puesto 10KB y me ha tardado como 3 segundos, así que si el archivo es de 1GB... Sin embargo el AMS tarda menos en hacer 20MB con su función.
Puedes modificar el módulo para que haga menos operaciones xD
Puff, todavía no me entero ni de la mitad de lo que pone el módulo este así que todavía no soy apto para modificarlo :lol: