Autor
|
Tema: [AYUDA] Script de resolución...!!! (Leído 6,422 veces)
|
user_foro
Desconectado
Mensajes: 28
|
Hola a todos, necesito de su(s) ayudame en esto porfa: Nota: Ejecutable hecho en AutoPlay Media Studio. -Quiero que al ejecutar mi autoplay corrobore que el PC esté en una resolución de 1360 x 768 y si es así que se inicie mi autoplay. Ahora bien, si el PC (en el que voy a ejecutar mi autoplay) está en otra resolución, debe aparecer un mensaje que diga que este sistema funciona con una resolución de 1360x768 y se cierre la aplicación del autoplay (Salir). P.D.: No soy programador, ni nada por el estilo, solo saco ideas y trato de hacerlas funcionar, pero esto me la ganó. =================================== Aquí un script inventado que no me resulta: Resolution = ("1360, 768") System.GetDisplayInfo(Width, Height);
if Resolution then
Application.Sleep(1000); ==> Esto hace que espere 1 segundo antes de pasar a la siguiente orden Page.Jump("lengueta de mi proyecto y/o pagina de programación o que deje iniciar mi programa");
else
Dialog.Message("Autoplay Media Studio", "Este sistema funciona con una resolución de 1360x768", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1); Application.Exit();
end =================================== De antemano Muchas Gracias...!!! [NOTA DEL MODERADOR]: UTILIZA LAS ETIQUETAS PARA INSERTAR CÓDIGO.
|
|
« Última modificación: 21 Julio 2015, 17:42 pm por user_foro »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.866
|
Desconozco el lenguaje, pero a simple vista tienes varias cosas mal. ➢ Operators➢ Tables (Arrays)➢ System.GetDisplayInfoPrueba así: resolution = {"1360","768"}; displayInfo = System.GetDisplayInfo();
if (displayInfo.Width ~= resolution[0]) or (displayInfo.Height ~= resolution[1]) then Dialog.Message("Autoplay Media Studio", "Solo soporta 1360x768", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1); Application.Exit();
else Application.Sleep(1000); Page.Jump("ADE");
end Saludos
|
|
« Última modificación: 21 Julio 2015, 17:38 pm por Eleкtro »
|
En línea
|
|
|
|
user_foro
Desconectado
Mensajes: 28
|
Gracias Elektro por su ayudar, lo probaré y le cuento...!!!
|
|
« Última modificación: 21 Julio 2015, 18:13 pm por user_foro »
|
En línea
|
|
|
|
user_foro
Desconectado
Mensajes: 28
|
Desconozco el lenguaje, pero a simple vista tienes varias cosas mal. ➢ Operators➢ Tables (Arrays)➢ System.GetDisplayInfoPrueba así: resolution = {"1360","768"}; displayInfo = System.GetDisplayInfo();
if (displayInfo.Width ~= resolution[0]) or (displayInfo.Height ~= resolution[1]) then Dialog.Message("Autoplay Media Studio", "Solo soporta 1360x768", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1); Application.Exit();
else Application.Sleep(1000); Page.Jump("ADE");
end Saludos Elektro, probé su script (MOD) y al hacerlo funcionar con otra resolución me sale el mensaje y me saca del programa, lo que es justo lo que quiero, pero el problema es el siguiente, cuando edito la resolución de su script y la cambio por ejemplo en 1024x600 ( Ejemplo: Resolution = {"1024, 600"}; ) y lo ejecuto en esa misma resolución me sale lo mismo (Mensaje y salir), lo cual debería poder ejecutar mi programa (o enviarme a la primera pagina "ADE" o lengueta de programación de mi proyecto). Ayudeme por favor...!!!
|
|
« Última modificación: 21 Julio 2015, 18:24 pm por user_foro »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.866
|
Como ya mencioné desconozco el lenguaje, Interpreté incorrectamente los operadores " or" y "and". El siguiente código es un poco feo, y con una función que no devuelve nada, pero creo que esto si que te debería funcionar, prueba: resolution = {1360, 768}; displayInfo = System.GetDisplayInfo();
if (displayInfo.Width ~= resolution[0]) then Exit();
elseif (displayInfo.Height ~= resolution[1]) then Exit();
else Application.Sleep(1000); Page.Jump("ADE");
end
function Exit() Dialog.Message("Autoplay Media Studio", "Solo soporta 1360x768", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1); Application.Exit(); end Saludos!
|
|
« Última modificación: 21 Julio 2015, 18:48 pm por Eleкtro »
|
En línea
|
|
|
|
user_foro
Desconectado
Mensajes: 28
|
Como ya mencioné desconozco el lenguaje, pero teorícamente se puede desglosar así: resolution = {1360, 768}; pantalla = System.GetDisplayInfo();
si (pantalla.Ancho es distinto a 1360) o si (pantalla.Alto es distinto a 768) entonces... Salir ... de lo contrario Seguir ... end Si realmente estás usando la misma resolucion que asignaste, entonces no debería dar problemas... pero de todas formas no puedo testearlo. Prueba a usar enteros en lugar de cadenas de texto aquí: (es decir, elimina las comillas dobles, que se me pasó por alto eliminarlas en el primer código que te mostré) Arriba te dejé un enlace con los operadores del lenguaje... no ser programador no te excluye de leerlo y tratar de ponerlo en práctica, ya que quieras o no estás programando. En lugar de un "or" puedes probar a utilizar un "and" para comprobar si ambas condiciones se evaluan cómo True, y si no lo hacen, salir del programa, de hecho ahora que lo vuelvo a leer creo que le dí un significado equivocado al "or", prueba así: Saludos! Ahora estoy entendiendo estos Jeroglíficos (Es entretenido esto), tengo entendido que lo que estoy haciendo esta hecho sobre lenguaje de programación LUA. Seguiré probando, gracias...Cualquier cosa le aviso...!!!
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.866
|
lee la respuesta que edité arriba
saludos
|
|
|
En línea
|
|
|
|
user_foro
Desconectado
Mensajes: 28
|
lee la respuesta que edité arriba
saludos
Elektro utilicé el script mod que citas y no pasa nada queda igual que los demás... Parece que el problema es netamente de como recepcionar la resolución real del pc con un script y con ese dato de la resolución hacer que cierre o abra el programa...!!!
|
|
|
En línea
|
|
|
|
tincopasan
Desconectado
Mensajes: 1.286
No es lo mismo conocer el camino que recorrerlo.
|
podés probar directamente así: result = System.GetDisplayInfo(); if (result ~= nil) then if (result.Width ~= 1024) then
etc. no es necesario que declares los valores en una variable aparte ya que lo haces directamente
|
|
|
En línea
|
|
|
|
user_foro
Desconectado
Mensajes: 28
|
podés probar directamente así: result = System.GetDisplayInfo(); if (result ~= nil) then if (result.Width ~= 1024) then
etc. no es necesario que declares los valores en una variable aparte ya que lo haces directamente Gracias por tu ayuda... Lo modifiqué un poco (Casi nada) y me sirvió...!!! MUCHAS GRACIAS
|
|
|
En línea
|
|
|
|
|
|