TODOPIC

Lenguajes de programación para PC => C, C#, C++ => Mensaje iniciado por: planeta9999 en 10 de Marzo de 2014, 14:47:48

Título: Rutina lectura nº serie disco duro en VC++
Publicado por: planeta9999 en 10 de Marzo de 2014, 14:47:48
Hola:


¿ Alguien tiene una rutina en VC++ para leer el nº de serie del disco duro ?

He estado buscando información por Google, y me encuentro con todo esto del WMI, estoy recopilando información al respecto, pero de momento me suena medio a chino, y además casi todo lo que hay es para C# y VB, no entiendo porque a los programadores en C++ nos dejan tan de lado en este tema.

A base de leer y probar, lo encontraré tarde o temprano, pero si alguien tuviera ya algo hecho o conoce alguna web donde lo expliquen con detalle, y me puede echar una mano, se lo agradecería.

Estoy implementando en algunos de mis programas en VC++, una activación de licencia, y he pensado en usar en la fórmula de cálculo del código, el nº de serie del disco duro y puede que algo más como el tipo de procesador, BIOS, placa base, etc...


Saludos
Título: Re: Rutina lectura nº serie disco duro en VC++
Publicado por: migsantiago en 06 de Abril de 2014, 13:28:07
Hola:


¿ Alguien tiene una rutina en VC++ para leer el nº de serie del disco duro ?

He estado buscando información por Google, y me encuentro con todo esto del WMI, estoy recopilando información al respecto, pero de momento me suena medio a chino, y además casi todo lo que hay es para C# y VB, no entiendo porque a los programadores en C++ nos dejan tan de lado en este tema.

A base de leer y probar, lo encontraré tarde o temprano, pero si alguien tuviera ya algo hecho o conoce alguna web donde lo expliquen con detalle, y me puede echar una mano, se lo agradecería.

Estoy implementando en algunos de mis programas en VC++, una activación de licencia, y he pensado en usar en la fórmula de cálculo del código, el nº de serie del disco duro y puede que algo más como el tipo de procesador, BIOS, placa base, etc...


Saludos

Hola, si no llegaras a encontrar algo decente en C++ podrías compilar una DLL en C# y llamarla de C++. Saludos.
Título: Re: Rutina lectura nº serie disco duro en VC++
Publicado por: planeta9999 en 06 de Abril de 2014, 14:03:53

Hola, si no llegaras a encontrar algo decente en C++ podrías compilar una DLL en C# y llamarla de C++. Saludos.


Ya lo resolví hace tiempo, en este enlace de Microsoft, está toda la información necesaria para hacerlo con WMI, incluso con ejemplos en C++.
Al final me curré una fórmula mezcla de un puñado de cosas (nº de serie de varios discos, hardware de los discos como cilindros y cabezales, procesador, placa base, BIOS, gráfica):  

http://msdn.microsoft.com/en-us/library/aa390423(v=vs.85).aspx


Mi software, ahora saca un mensaje de licencia no activada y un código ID calculado con una formulita en función del hardware:

(http://www.todopic.com.ar/foros/imgtiny/2drswgw.jpg)


Con el product ID, le doy al cliente un código que cálculo en base a ese ID, para que lo ponga en un archivo de texto, que lee el programa al arrancar, si coincide con el calculado se activa la licencia y desbloquea el botón para poder encriptar ficheros.

(http://www.todopic.com.ar/foros/imgtiny/sgj3i9.jpg)





salu2