Numero serie HD
Publicado: Jue Abr 02, 2015 1:39 pm
Hola,
Andaba dándole vuelta a ver como podía obtener el nº de serie del HD y probé sin éxito
Execute("VOL C: > VOL.TXT",,.T.,SW_HIDE)
y
WinExec("VOL C: > VOL.TXT")
Al final decidí probar lo mismo con un .bat y funcionó. Como no me hace mucha gracia dejar un .bat suelto en el directorio del programa, lo cree desde dentro de una función que aquí os dejo:
FUNCTION VolSerial()
local serial := ""
MemoWrit( "XX.BAT", "@ECHO OFF"+CRLF+"VOL C: > VOL.TXT" )
Execute("xx.bat",,.t.,SW_HIDE)
serial := AllTrim(MemoRead( ".vol.txt" ))
serial := Right(serial,11)
ERASE( "vol.txt" )
ERASE( "xx.bat" )
RETURN serial
Supongo que ya habrá por ahí muchas soluciones para este mismo asunto, pero ahí está la mía.
Saludos
Jose Alfonso
Andaba dándole vuelta a ver como podía obtener el nº de serie del HD y probé sin éxito
Execute("VOL C: > VOL.TXT",,.T.,SW_HIDE)
y
WinExec("VOL C: > VOL.TXT")
Al final decidí probar lo mismo con un .bat y funcionó. Como no me hace mucha gracia dejar un .bat suelto en el directorio del programa, lo cree desde dentro de una función que aquí os dejo:
FUNCTION VolSerial()
local serial := ""
MemoWrit( "XX.BAT", "@ECHO OFF"+CRLF+"VOL C: > VOL.TXT" )
Execute("xx.bat",,.t.,SW_HIDE)
serial := AllTrim(MemoRead( ".vol.txt" ))
serial := Right(serial,11)
ERASE( "vol.txt" )
ERASE( "xx.bat" )
RETURN serial
Supongo que ya habrá por ahí muchas soluciones para este mismo asunto, pero ahí está la mía.
Saludos
Jose Alfonso