Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Como cambiar valores en la ventana "General" propiedades del sistema (https://www.clubdelphi.com/foros/showthread.php?t=38132)

JuanErasmo 04-12-2006 17:54:54

Como cambiar valores en la ventana "General" propiedades del sistema
 
HOla amigos...
es algo enredada la pregunta pero quiero saber si puedo cambiar o acceder a la informacion por ejemplo Equipo .
Ram , etc. ...que cuando abra esta ventana , pueda ver los valores que yo le ponga al sistema....asi no los tenga...
Gracias!

luisgutierrezb 04-12-2006 18:56:47

pues que yo sepa, esos valores los lee del registro, pero tambien tengo entendido que sobreescribe esos valores cada vez que arranca el windows

JuanErasmo 04-12-2006 19:01:18

Gracias pOr responderme.
Sabes en que ruta estan ubicados???
Gracias. especialmente nombre del equipo, procesador, ram-....etc??
Gracias otra vez

Ñuño Martínez 04-12-2006 19:46:35

Aunque te lo digamos, probablemente no sirva de nada. Apuesto a que están protegidos de forma que no se puedan cambiar. Al menos, si yo fuera el diseñador de Windows, no permitiría que nadie los cambiara.

Y, ya que estamos, ¿para qué los quieres cambiar? No estarás programando un virus, ¿hein? (¬.¬)

JuanErasmo 04-12-2006 20:25:30

No, no es un virus.
 
no, no es un virus , para nada.
Soy un curioso de la programacion, no soy un Hacker maligno...solo es por curiosidad.
Gracias, si alguien sabe donde es no lo utilizare para mal.

seoane 04-12-2006 23:02:28

Vamos a ver, aquí te van algunas claves que te pueden resultar interesantes:

Código:

HKLM\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOwner
HKLM\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization
HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProductId
HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\0\ProcessorNameString
HKLM\HARDWARE\DESCRIPTION\System\Identifier

El resto de información (Memoria, Versión, etc) lo obtiene con las correspondientes funciones de la API.

JuanErasmo 04-12-2006 23:17:21

tienes algun ejemplo de manejo del API que maneje esto??
 
Hola seaone.
Tienes algun ejemplo de este manejo?
cambiarle por ejemplo el nombre del equipo(solo en los Label) , o la velocidad del procesador (solamente en los Label)
Gracias.

seoane 05-12-2006 00:15:28

:confused: ¿Que quieres hacer exactamente? Si lo que quieres es obtener los datos para utilizarlos en tu aplicación, puedes leer esas entradas del registro y/o utilizar las funciones de la API correspondientes, si es eso dilo y te paso las apis que tienes que utilizar. Si por el contrario quieres cambiar los valores que allí aparecen, puedes cambiar los valores del registro, pero las que se obtienen directamente con la API son mas difícil de modificar.

Podríamos inyectarnos dentro del proceso y modificar lo que consideremos oportuno, pero eso seria un trabajo inmenso solo para jugar, así que ahora seria un buen momento para que explicaras un motivo legitimo por el que alguien querría hacer eso.

JuanErasmo 05-12-2006 17:02:39

hola.
Lo que necesito es que cada vez que aparezca la ventana propiedades del sistema . pestaña General , con mi aplicacion con un boton, pueda cambiar los valores que aparecen en NOmbre del Equipo, procesador y Ram.
Ya se usar el WinExplorer, y desde ahi lo puedo cambiar....pero en Builder no es tan sencillo...
Gracias!

Namaris 22-12-2006 19:46:06

Hola,

Yo llevo buscando lo mismo desde hace 4 dias y durante estos 4 dias no he echo otra cosa cn el pc que buscar por google y por ahi la manera de cambiar estos parametros...

¿Ami no lo unico que me interesa es cambiar el parametro de la RAM, dnd dice 1,00GB me gustaria ponerle 2,00GB?

Alguien me dice como hacerlo desde el registro?? Pk solo he conseguido cambiar lo del microprocesador que me no me interesaba mucho, ¿Lo de la RAM como va? :(


P.D: Por cierto, soy recien registrao y este es mi 1º post en eeste foro, asi que un enorme saludo a todos :D

seoane 22-12-2006 21:32:49

Hola Namaris, antes de nada bienvenido al foro :)

Volviendo a tu pregunta, ese dato no lo obtiene del registro, por lo que no conseguiremos nada por ese camino. Lo consigue utilizando funciones de la API así que es difícil que puedas cambiar ese valor.

Podríamos intentar cambiar el texto que aparece en esa ventana en particular, pero cualquier otro programa podría revelar el valor real de la memoria. No entiendo para que te podría resultar eso de utilidad :confused:

Namaris 23-12-2006 01:10:04

Gracias por la bienvenida seoane ;)

Entiendo que te maree el tema de que preguntemos curiosidades tan abstractas que no explican logicamente el fin xDD

El caso esque lo kiero porke instale un modulo de RAM en el pc de mi hermano pekeño y se lo he sacao hace unos dias pk me hace falta durante un mes en otro lao y seriamente me importa que se de cuenta xDD

Asi que con que se vea en propiedades del sistema me basta, el no va a mirar en otro sitio si ve q va lento windows xD, sera cuestion de unos dias pero enserio, quiero saber, pk cn el winexplorer lo cambias pero en cuanto reinicias el cuadro vuelve a lo normal pk como bien dices es un API...el caso es...

¿Tu me puedes echar un cable para trucar el API o decirme como para sacarlo?

Enserio...te lo agradeceria en el alma que el chinigo este me monta un follon como se entere y mis padre me van a echar la bronca xD


Enga un abrazao y Saludos a todo2 :)

seoane 23-12-2006 02:16:19

Vamos a intentar hacer algo elegante, todo sea por que no pelees con tu hermano, que eso esta muy feo :p :D

Podríamos hacer un programa que en un bucle buscara a intervalos regulares la ventana, y cambiara el texto. Esta solución es poco elegante, y además durante una fracción de segundo se podría mostrar el texto real. Además no tengo ganas de ponerme a buscar la ventana.

Así que ya puestos, vamos a matar moscas a cañonazos, que es mas divertido. Utilizando un Hook global, vamos a inyectar un dll en todos los procesos. Cuando nuestra dll detecte que ha sido inyectada en el proceso "rundll32.exe", que es el responsable de mostrar esa ventana, hará un subclassing de todas las ventanas de la clase "Link Window". Y ahora es donde damos el toque final, cada vez que una de estas ventanas reciba un mensaje del tipo WM_SETTEXT reemplazaremos el texto por el que a nosotros nos convenga.

Caramba ahora mismo me siento un hacker :D Y tu te preguntaras como funciona todo esto ... Pues bien en el zip que te mando te envió el código y el ejecutable de la dll (injection.dll) y el código del inyector (Namaris.exe). Descomprimelos en la misma carpeta y ejecuta el programa, ahora prueba a abrir las "Propiedades del sistema" y el valor ya debería de aparecer cambiado.

Ahora unos toques finales. Primero en el código de la dll encontraras una sentencia como la siguiente, comprueba que el valor a buscar y el nuevo son los correctos, y recompila:
Código Delphi [-]
  Str:= StringReplace(Str,'1,00 GB','2,00 GB',[rfReplaceAll,rfIgnoreCase]);

Ahora, como te habrás dado cuenta, el programa se ve :eek: Esto tiene solución vete al código del ejecutable y busca una instrucción como la siguiente, borrala y recompila:
Código Delphi [-]
  {$APPTYPE CONSOLE}

Y ahora solo queda que copies tanto el ejecutable como la dll a una carpeta como la de windows (c:\windows) y configures el equipo para que ejecute el programa cada vez que se inicie. Por ejemplo agregando una entrada a la clave de registro:
Código:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Si todo sale bien, mientras el programa este en ejecución, el valor se cambiara como por arte de magia. :D

PD: Solo espero que no utilices esto para engañar a un incauto y vender un ordenador, como si tuviera mas memoria de la que tiene o algo así. Eso me enfadaría muchísimo :mad:

El enlace (fuera del ClubDelphi) -> http://rapidshare.com/files/8594371/Namaris.zip.html

Namaris 23-12-2006 18:17:38

Hola Seoane ;),

darte gracias seria un insulto, seriamente creo que de debo una gorda :)

Y como no olvido los favores....ahora te hago una invitacion formal para que cobres tu deuda, mi msn te lo mando por msj privado ;).

Y ahora volviendo al tema, entiendo lo que has puesto y dicho acerca de los ultimos retoques pero el problema que tng ahora mismo es el siguiente:

-No puedo editar el .dll pk no dispongo de ningun editor aparte del bloc de notas y ahi abriendolo me aparcen miles de caracteres raros xD

entre linea y caracter linea he conseguido leer un apartado (512 MB; 1,00 GB; 2,00 GB) y la duda mia es: ¿Lo que hace el ejecutable es mostrarte el doble, por ejemplo si tienes 512MB pues 1GB y si tienes 1 GB, 2GB??? :confused:

Pk si es asi perfecto y no tng que tocar nada porque dnd lo probe es en mi pc que tengo 1 GB pero en el de mi hermano son 512 MB actualmente que hay que doblar antes de que venga. xDD

-Que me aconsejas para poder editarlo ya que el bloc de notas me dice que no??



P.D:Aproveche ahora que no estaba mi hermano para probar el programa en su PC y veo que ahi sigue en sus 504 MB (aunque el modulo es de 512MB), no va volver hasta 2 horas, ¿que hago? xDD
------------------------------x----------------------------

Un enorme abrazo y saludo campeón :cool:

seoane 23-12-2006 18:48:46

:eek: Caramba, como estamos en un club de delphi, supuse que contabas con el delphi instalado en tu ordenador. Estas en lo cierto, si tienes 512 MB, te poner 1,00 Gb y si tienes un 1,00 Gb te pone 2,00 Gb. Por esa parte no tendrías que modificar nada entonces. El problema lo tendrías para volver oculta la aplicación Namaris.exe. Te mando por correo una versión ya compilada, porque no veo necesidad de utilizar espacio del Club para eso.

De todas formas, no se si estas interesado en la programación, pero ahora es un buen momento para iniciarse en Delphi. Ya que te puedes descargar TurboDelphi completamente gratis de internet.

http://www.turboexplorer.com/

seoane 23-12-2006 18:57:24

Vaya, parece que tengo problemas para enviártelo a tu correo. Pues aquí te dejo un enlace en RapidShare, para que lo descargues. Tienes una versión del ejecutable que no se muestra, y un dll que cambia 504 MB por 1,00 GB. Espero que te sirva

http://rapidshare.com/files/8672820/Namaris2.zip.html

Namaris 23-12-2006 19:00:53

Hombre interesado estoy desde hace casi un año xDD

Pero como dicen que es tan complicada y hay que estudiar mucho y yo no tengo ni la mas minima idea las pocas veces que lo he intentado he acabado rindiendome ante las primeras dificultades :(


Lo de no tener el delphi es porque el encontre el post y foro atraves de google porque iba buscando una solucion a mi caso.

Y respecto a lo del link que me has dejago es de turboexpress que es para bajarme el editor gratis de delphi?? poruqe taba intentando bajar y como hay que registrasse es todo aleman y aparte la web va bastante lenta en respuesta :confused:


Y ya rula eso en el de mi hermano gracias al ultimo que me has pasado :D, muuuchas gracias

Héctor Randolph 23-12-2006 20:46:30

Hola!

Solamente intervengo para comentar que me ha sorprendido la actuación de Domingo Seoane en este hilo :eek: :eek:. Me he permitido calificar este tema con cinco estrellas porque me parece muy bueno el truco, independientemente del uso que alguien pueda hacer de él.

Moraleja: "No hay que confiarnos de la memoria que reporta Windows"

La pregunta es ¿puedo confiar en lo que reporta el BIOS al arrancar? :D

Namaris 23-12-2006 23:34:09

Sr. Hector Randolph, en este mundo de informatica lo que he aprendido es..."Nada es perfecto" y todo es manipulable :D

Y sí, "seoane ha estado magnifico :)

Saludos.

rcarrillom 25-12-2006 01:31:22

Cita:

Empezado por Héctor Randolph
Hola!
Moraleja: "No hay que confiarnos de la memoria que reporta Windows"

Que no sería más correcto "No hay que confiarnos de [...] Windows"? :D


La franja horaria es GMT +2. Ahora son las 02:58:04.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi