FoxPro/Visual FoxPro - TRADUCIR A FOX.

 
Vista:
sin imagen de perfil

TRADUCIR A FOX.

Publicado por DALSOM (612 intervenciones) el 20/05/2005 16:01:16
HOLA A TODOS NUEVAMENTE. LOGRE ESTO, PERO EN VB.NET 2003
EL PROBLEMA ES QUE AHORA NO SE COMO PASARLO A FOX.

ALGUIEN PODRIA TRADUCIRME ESTO A VFP, POR FAVOR :

Imports Microsoft.Win32

Module Module1

Sub Main()

Dim RKey As RegistryKey
Dim RKeyV As String
Dim SubKey As String = ""

RKeyV = "SOFTWARE\\Microsoft\\Office\\11.0\\"
RKey = Registry.LocalMachine.OpenSubKey(RKeyV, False)

If Not RKey Is Nothing Then
For Each SubKey In RKey.GetSubKeyNames()
Dim TmpKey As RegistryKey = RKey.OpenSubKey(SubKey)
If (Not TmpKey Is Nothing) Then
If (Not TmpKey.Name Is Nothing) Then
Console.WriteLine(TmpKey.Name)
End If
End If
Next
RKey.Close()
Else
MsgBox("Esta llave no existe")
End If

Console.ReadLine()

End Sub

End Module

DE ANTEMANO, GRACIAS.
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:TRADUCIR A FOX.

Publicado por Plinio (7841 intervenciones) el 20/05/2005 19:01:59
Estas leyendo el registro de windows?
Chequea esto:
http://www.sopaul.com.ar/cursos/vfoxpro/vfp_api6.htm
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
sin imagen de perfil

FUNCION CORRECTA.

Publicado por DALSOM (612 intervenciones) el 20/05/2005 20:52:45
HOLA A TODOS,
GRACIAS PLINIO. YA HABIA LEIDO ESE ARTICULO ANTERIORMENTE, SOLO QUE ME DEJABA ALGO A MEDIAS. AQUI LES PONGO UNA QUE SI FUNCIONA CORRECTAMENTE.

AMBOS PARAMETROS SON CARACTERES.

NAPP :ES EL NOMBRE DE LA FUNCION EN MAYUSCULAS.

RUTAINICIAL : ES LA RUTA DENTRO DEL ARBOL
HKEY_LOCAL_MACHINE, QUE TIENE EL VALOR NUMERICO DIRECTAMENTE.
ESPERO ESTO LES SIRVA A MUCHOS OTROS, Y EN LA PAGINA QUE PLINIO PUSO, ESTAN LOS VALORES QUE DESEN BUSCAR.


FUNCTION INSTALLED
PARAMETERS napp,rutainicial
DECLARE INTEGER RegOpenKey ;
IN Win32API ;
INTEGER nHKey,;
STRING cSubKey,;
INTEGER @nHandle
DECLARE Integer RegCloseKey ;
IN Win32API ;
INTEGER nHKey
DIMENSION taVals[1,2]
=GetEnumKeys(@taVals,-2147483646,rutainicial)
ret=ASCAN(tavals,napp)
RETURN ret

PROCEDURE EnumKey
LPARAMETERS tnHKey, tcSubKey, tnIndex
LOCAL lcSubKey, lcReturn, lnResult, lcDataBuffer
lnRegHandle=0
lnResult=RegOpenKey(tnHKey,tcSubKey,@lnRegHandle)
IF lnResult#0
*** Not Found
RETURN .NULL.
ENDIF
DECLARE Integer RegEnumKey ;
IN WIN32API ;
INTEGER nHKey, ;
INTEGER nIndex, ;
STRING @cSubkey, ;
INTEGER nSize
lcDataBuffer=SPACE(256)
lnSize=256
lnReturn=RegENumKey(lnRegHandle, tnIndex, @lcDataBuffer, lnSize)
=RegCloseKey(lnRegHandle)
IF lnResult#0
RETURN .NULL.
ENDIF
RETURN TRIM(CHRTRAN(lcDataBuffer,CHR(0),""))
ENDFUNC

FUNCTION GetEnumKeys
LPARAMETERS taKeys, tnHKey, tcSubKey
LOCAL x, lcKey
lcKey="x"
x=0
DO WHILE !EMPTY(lcKey) OR ISNULL(lcKey)
lnType=0
lcKey=EnumKey(tnHKey,tcSubKey,x)
IF ISNULL(lcKey) OR EMPTY(lcKey)
EXIT
ENDIF
x=x+1
DIMENSION taKeys[x]
taKeys[x]=UPPER(lcKey)
ENDDO
RETURN x
ENDFUNC
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