Ejecuto una aplicacion con AutoIt
Mediante esta opcion me crear un archivo que me dice el nombre de mi pc hasta hay bien
IniWrite(@ScriptDir & "\ejemplo.ini" , "ejemplo" ,"Computer",@ComputerName)
Me salgria esto
[ejemplo]
Computer=NOMBRE-4567ERED
Lo que quiero saber si yo modifico manualmente algun numero o palabra de hay , Por ejemplo asin Computer=ejemplo-1267ER23
Mediante un MsgBox que me avise a la hora de ejecuta de nuevo esta aplicacion avisandome de la modificacion de nombre de mi computadora
Un saludo y gracias
Como hacer esto
Re: Como hacer esto
Saludos...
Lo que puedes hacer es mediante un segundo programa, o el mismo estár revisando si el nombre ha cambiado.
Esto lo logras, mediante un ciclo, de preferencia debe ser indefinido como el While.
Lees el archivo con IniReadSection()
IniRead ( "filename", "section", "key", "default" )
Esto te devuelve el valor, leido. Una vez leido lo comparas con el nombre anterior, y si NO es igual, que te avise mediante un msg,
No tengo mucho tiempo ahorita, si no te hacía un ejemplo, pero si no lo entiendes de la manera que lo digo, comentalo, y me doy el tiempo para hacer el ejemplo.
Espero te sirva!
Lo que puedes hacer es mediante un segundo programa, o el mismo estár revisando si el nombre ha cambiado.
Esto lo logras, mediante un ciclo, de preferencia debe ser indefinido como el While.
Lees el archivo con IniReadSection()
IniRead ( "filename", "section", "key", "default" )
Esto te devuelve el valor, leido. Una vez leido lo comparas con el nombre anterior, y si NO es igual, que te avise mediante un msg,
No tengo mucho tiempo ahorita, si no te hacía un ejemplo, pero si no lo entiendes de la manera que lo digo, comentalo, y me doy el tiempo para hacer el ejemplo.
Espero te sirva!
- Ximorro
- Profesional del Autoit
- Mensajes: 1500
- Registrado: 10 Jul 2009, 12:35
- Ubicación: Castellón, España
Re: Como hacer esto
Bueno, no hace falta un bucle para estar mirando continuamente, como dices al ejecutarlo lo primero que tienes que hacer es mirar el valor tal como te pone Rupert... mirar primero si el fichero existe no sería mala idea.
Pero ojo que hay algo que no sé si tienes claro... ¡esto no modifica el nombre de tu PC!
Lo que se hace es que miras el nombre del PC y los escribes en un archivo, luego modificas EL ARCHIVO, eso no es modificar el nombre del PC.
Es como si pusieras tu nombre en un TXT y luego lo modificaras, ¡lógicamente eso no cambia tu nombre!
Pero ojo que hay algo que no sé si tienes claro... ¡esto no modifica el nombre de tu PC!
Lo que se hace es que miras el nombre del PC y los escribes en un archivo, luego modificas EL ARCHIVO, eso no es modificar el nombre del PC.
Es como si pusieras tu nombre en un TXT y luego lo modificaras, ¡lógicamente eso no cambia tu nombre!
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Re: Como hacer esto
Muchas gracias por las respuesta
Agradeceria mucho si pusierais un ejemplo,Gracias y un saludo
Agradeceria mucho si pusierais un ejemplo,Gracias y un saludo
Re: Como hacer esto
Gracias por la aclaracion Ximorro, no habia entendido la parte de "Cuando lo ejecute".
Respecto al ejemplo de puedo poner lo siguente:
Hice ese ejemplo, a ver si te sirve. Esperamos que si!
Respecto al ejemplo de puedo poner lo siguente:
Código: Seleccionar todo
$NombreArchivo = @ScriptDir & "\Ejemplo.ini"
If not FileExists($NombreArchivo) Then ;Revisamos si existe el archivo
MsgBox(16,"Error!", "El archivo ini, no existe")
Else ;Si, si existe.
$NombrePC = IniRead(@ScriptDir & "\Ejemplo.ini","Ejemplo","Computer","Error5588") ;leemos el contenido
;Nota, el comando Iniread, nos devolcerá el unltimo parametro "Error5588", si no pudo leer la llave
If $NombrePC = @ComputerName Then
MsgBox(64,"Felicidades!","El nombre leido coincide con el nombre actual de tu PC")
ElseIf $NombrePC = "Error5588" Then
MsgBox(64,"Error5588","Error al leer la llave en el archivo Ini")
Else
MsgBox(16,"Error","El nombre leído no coincide con el nombre actual de tu PC")
EndIf
EndIf
Re: Como hacer esto
Ok muchas gracias ...Un feliz año para todos