FoxPro/Visual FoxPro - Como identificar el número de serie de un diskette

 
Vista:

Como identificar el número de serie de un diskette

Publicado por Cesar Fuenzalida (52 intervenciones) el 02/06/2001 05:48:53
Hola amigos, necesito saber el numero de serie de un diskette, no del disco duro, SOLO DEL DISKETTE, ojala me puedan ayudar.

Chao
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como identificar el número de serie de un diske

Publicado por Francisco G (6 intervenciones) el 02/06/2001 18:44:54
Hola!

Que tal esta rutina, que UD la puede afinar:
RUN DIR A: > nserie & Ejecutar el comando DOS DIR a un archivo llamado "nserie"
y luego con una serie de instrucciones de manejo de archivos (FOPEN, FCLOSE, etc), buscar después de la cadena "volúmen es", ahí está el número de serie del diskette.
Si desea, tengo esa rutina, para proteger un programa de mi autoría, escríbame a [email protected] y con gusto se la envío explicada,

Atentamente,

Francisco G.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como identificar el número de serie de un diske

Publicado por Francisco G (6 intervenciones) el 02/06/2001 20:11:19
Hola César!

He utilizado esta rutina para proteger un programa de mi autoría, aunque no sirve de mucho, por que por un lado no es sino duplicar el disquette llave o hacerle ingeniería inversa con el ReFox al programa compilado y listo, de todas formas sé que lo que Ud pide en este foro, es ésto, puede mejorarlo, si desea, :)

SET TALK OFF
CLEAR ALL
CLEAR
SET CURSOR OFF
CLEAR TYPEAHEAD
@ 10, 23 SAY 'Inserte el disco ORIGINAL en A:'
READ
@ 10, 27 SAY 'Un momento, por favor.....'
SET CURSOR ON
RUN DIR C: > temp && o la unidad que desee, incluído el HD
maneja = FOPEN('TEMP')
cadena = FREAD(maneja, 200)
= FCLOSE(maneja)
DELETE FILE temp
pos1 = AT('-', cadena)
cad1 = SUBSTR(cadena, pos1-4, 4)
cad2 = SUBSTR(cadena, pos1+1, 4)
clear
@ 10,0 say "Numero de Serie de diskette A: es "
@ 10,35 say cad1 + "-" + cad2
RETURN

Si desea el ReFox, tengo la versión 8.0, que decompila programas hasta la versión 6.0 de VisualFox

Atentamente,

Francisco G
[email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como identificar el número de serie de un diske

Publicado por ROD (184 intervenciones) el 03/06/2001 01:25:35
Aqui tienes otra opcion para lo que quieres.
tu la adecuas a tu necesidad.

LOCAL lnRet, lcString, lpVolName, ;
nVolSize, lpVolNumber, ;
lpMaxComp, lpFlags, ;
lpFSName, nFSSize
lpRoot = "A:\"
lpVolName = SPACE(256)
nVolSize = 256
lpVolNumber = 0
lpMaxComp = 256
lpFlags = 0
lpFSName = SPACE(256)
nFSSize = 256
DECLARE INTEGER GetVolumeInformation ;
IN Win32API AS GetVolInfo ;
STRING @lpRoot, ;
STRING @lpVolName, ;
INTEGER nVolSize, ;
INTEGER @lpVolNumber, ;
INTEGER @lpMaxComp, ;
INTEGER @lpFlags, ;
STRING @lpFSName, ;
INTEGER nFSSize
lnRet=GetVolInfo(@lpRoot, @lpVolName, ;
nVolSize, @lpVolNumber, ;
@lpMaxComp, @lpFlags, ;
@lpFSName, nFSSize)
STORE ALLT(STR(lpVolNumber))TO numser &&numser contines N° de serie

Atte ROD
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar