Autor Tema: Rutina lectura nº serie disco duro en VC++  (Leído 3655 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado planeta9999

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3520
    • Pinballsp
Rutina lectura nº serie disco duro en VC++
« 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

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Rutina lectura nº serie disco duro en VC++
« Respuesta #1 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.

Desconectado planeta9999

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3520
    • Pinballsp
Re: Rutina lectura nº serie disco duro en VC++
« Respuesta #2 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:




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.







salu2
« Última modificación: 06 de Abril de 2014, 14:18:43 por planeta9999 »


 

anything