In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

registro de windows

Foro de Xailer profesional en español
Responder
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

registro de windows

Mensaje por Francisco Sanchez »

Vamos a ver habia en fwh unas funciones para obtener valores del registro de
windows. Valores como usuario, etc.... ademas de datos de la maquina en
cuestion. Pero xailer esta dotado de estas mismas funciones?, o xharbour
contempla algo al respecto?. En caso negativo, alguna sugerencia?
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL
jlalin
Mensajes: 926
Registrado: Sab Dic 25, 2010 11:10 pm

registro de windows

Mensaje por jlalin »

Francisco,
usa la clase TRegistry. Encontrarás la documentación en la carpeta DOC
Saludos,
José Lalí­n
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

registro de windows

Mensaje por Francisco Sanchez »

muchas gracias, el caso es que revise la carpeta doc a ver si encontraba
algo pero por mas que la revise no lo encontre. Jejejeje muchas horas ya
delante del pc...
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

registro de windows

Mensaje por Francisco Sanchez »

He puesto lo siguiente :
LOCAL cRegistro
If cRegistro := TRegistry():OpenKey( HKEY_CURRENT_USER, 0,
KEY_ALL_ACCESS )
msginfo( cRegistro )
Endif
pero me dice que hkey_current_user no existe al compilar y key_all_access
tampoco, busque en los ch de xailer estas constantes pero no las encontre
cuales son sus valores, tengo que poner arriba un define con estas
constantes ?
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

registro de windows

Mensaje por Francisco Sanchez »

ya lo encontre winreg.api, ya solo me falta el key_all_access que no lo
encuentro todavia.
Un saludo
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

registro de windows

Mensaje por Francisco Sanchez »

Bueno podriais ponerme un ejemplo de como hacerlo correctamente para que
luego cuando termine de consultar valores no se me quede nada por ahi
colgado consumiendo memoria y demas?
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9468
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

registro de windows

Mensaje por ignacio »

Francisco,
De la ayuda:
TRegistry:Root
Indica la clave del registro sobre la que actuará.
Ámbito
Asignable
Tipo
Numérico
Valor inicial
HKEY_CURRENT_USER
Valores posibles
HKEY_CURRENT_USER, HKEY_LOCALMACHINE, HKEY_CLASSES_ROOT,
HKEY_USERS, HKEY_PERFORMANCE_DATA, HKEY_CURRENT_CONFIG y HKEY_DYN_DATA
Las definiciones de los valores posible se encuentran en el fihero
WinReg.api en el directorio Include. Para más información consulte la
documentación del API de Windows en en http:msdn.microsoft.com acerca del
manejo del Registro.
"Francisco Sanchez" <francisco@softwaretotal.biz> escribió en el mensaje
news:[email=42982a20@ozsrvnegro.ozlan.local...]42982a20@ozsrvnegro.ozlan.local...[/email]
> He puesto lo siguiente :
>
> LOCAL cRegistro
>
> If cRegistro := TRegistry():OpenKey( HKEY_CURRENT_USER, 0,
> KEY_ALL_ACCESS )
> msginfo( cRegistro )
> Endif
>
> pero me dice que hkey_current_user no existe al compilar y key_all_access
> tampoco, busque en los ch de xailer estas constantes pero no las encontre
> cuales son sus valores, tengo que poner arriba un define con estas
> constantes ?
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL
>
>


Attached files
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9468
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

registro de windows

Mensaje por ignacio »

En el foro Beta se puso este ejemplo no hace mucho:
FUNCTION SetNetworkClientScheme()
With Object TRegistry():New()
:Root := HKEY_LOCAL_MACHINE
if :OpenKey( " SystemCurrentControlSetServicesLanmanWorkStationParamete rs " ) == 0
if :GetNumeric( "EnableOpLocksForceClose" ) == 1
:CloseKey()
return nil
endif
:SetNumeric( "UseOpportunisticLocking", 0 ) // por defecto no existe la clave
:SetNumeric( "EnableOpLocks", 0 ) // por defecto no existe la clave
:SetNumeric( "EnableOpLocksForceClose", 1 ) // por defecto no existe la clave
:SetNumeric( "UtilizeNtCaching", 0 ) // por defecto no existe la clave
:SetNumeric( "UseLockReadUnlock", 0 ) // por defecto no existe la clave
:CloseKey()
endif
if :OpenKey( "SystemCurrentControlSetServicesMRXSmbParameters" ) == 0 // XP
:SetNumeric( "OpLocksDisabled", 1 ) // por defecto no existe la clave
:CloseKey()
elseif :OpenKey( "SystemCurrentControlSetServicesVxDVREDIR" ) == 0 // Win9x
:SetNumeric( "DiscardCacheOnOpen", 1 ) // por defecto ni idea
:CloseKey()
endif
End With
RETURN nil
Un saludo,
"Francisco Sanchez" <francisco@softwaretotal.biz> escribió en el mensaje news:42983ebc$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Bueno podriais ponerme un ejemplo de como hacerlo correctamente para que
> luego cuando termine de consultar valores no se me quede nada por ahi
> colgado consumiendo memoria y demas?
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL
>
>
--
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Francisco Sanchez
Mensajes: 532
Registrado: Mié Feb 09, 2005 6:20 pm

registro de windows

Mensaje por Francisco Sanchez »

Muchas gracias lo probare en seguida.
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL
"Ignacio Ortiz de Zúñiga" <InvalidAccount@ozs.com> escribió en el mensaje news:4298525c$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
En el foro Beta se puso este ejemplo no hace mucho:
FUNCTION SetNetworkClientScheme()
With Object TRegistry():New()
:Root := HKEY_LOCAL_MACHINE
if :OpenKey( " SystemCurrentControlSetServicesLanmanWorkStationParamete rs " ) == 0
if :GetNumeric( "EnableOpLocksForceClose" ) == 1
:CloseKey()
return nil
endif
:SetNumeric( "UseOpportunisticLocking", 0 ) // por defecto no existe la clave
:SetNumeric( "EnableOpLocks", 0 ) // por defecto no existe la clave
:SetNumeric( "EnableOpLocksForceClose", 1 ) // por defecto no existe la clave
:SetNumeric( "UtilizeNtCaching", 0 ) // por defecto no existe la clave
:SetNumeric( "UseLockReadUnlock", 0 ) // por defecto no existe la clave
:CloseKey()
endif
if :OpenKey( "SystemCurrentControlSetServicesMRXSmbParameters" ) == 0 // XP
:SetNumeric( "OpLocksDisabled", 1 ) // por defecto no existe la clave
:CloseKey()
elseif :OpenKey( "SystemCurrentControlSetServicesVxDVREDIR" ) == 0 // Win9x
:SetNumeric( "DiscardCacheOnOpen", 1 ) // por defecto ni idea
:CloseKey()
endif
End With
RETURN nil
Un saludo,
"Francisco Sanchez" <francisco@softwaretotal.biz> escribió en el mensaje news:42983ebc$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Bueno podriais ponerme un ejemplo de como hacerlo correctamente para que
> luego cuando termine de consultar valores no se me quede nada por ahi
> colgado consumiendo memoria y demas?
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL
>
>
--
Responder