elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Temas
Páginas: 1 2 3 4 [5] 6 7 8
41  Programación / .NET (C#, VB.NET, ASP) / Envio de archivo sin nombre Telegram C# en: 27 Junio 2018, 03:36 am
Buenas noches amigos, aqui les traigo un problema que no le encuentro solucion aun, tengo un codigo para poder enviar archivos de diferentes formatos a una cuenta de telegram, todo esta bien , el problema es que llegan los archivos PERO sin nombre, me explico segui "todo" como debe ser. y al enviarlo en caso de un documento, envia el archivo con el nombre "Document" y sin extension de paso.

Espero puedan ayudarme con la solucion a esto y poder enviar el archivo con su nombre y extension y asi llegue al otro lado. anexo el codigo funcional expetuando eso.

Código:
Telegram.Bot.Types.InputFiles.InputTelegramFile f = new Telegram.Bot.Types.InputFiles.InputTelegramFile(System.IO.File.Open(ofd.FileName, FileMode.Open));
                               
                                if (Path.GetExtension(ofd.FileName) == ".doc" || Path.GetExtension(ofd.FileName) == ".docx" || Path.GetExtension(ofd.FileName) == ".rtf" || Path.GetExtension(ofd.FileName) == ".pdf")
                                {
                                    Biblioteca.Herramientas.TelegramTool.Bot.SendDocumentAsync(Settings.Default.idTelegram, f.Content, f.FileName = ofd.SafeFileName);
                                }
                                else if (Path.GetExtension(ofd.FileName) == ".jpg" || Path.GetExtension(ofd.FileName) == ".jpge" || Path.GetExtension(ofd.FileName) == ".png" || Path.GetExtension(ofd.FileName) == ".bmp")
                                {
                                    Biblioteca.Herramientas.TelegramTool.Bot.SendPhotoAsync(Settings.Default.idTelegram, f.Content, f.FileName = ofd.SafeFileName);
                                }
                                else if (Path.GetExtension(ofd.FileName) == ".mp3" || Path.GetExtension(ofd.FileName) == ".mp2" || Path.GetExtension(ofd.FileName) == ".wav")
                                {
                                    Biblioteca.Herramientas.TelegramTool.Bot.SendAudioAsync(Settings.Default.idTelegram, f.Content, f.FileName = ofd.SafeFileName);
                                }
                                else if (Path.GetExtension(ofd.FileName) == ".mp4" || Path.GetExtension(ofd.FileName) == ".3gp" || Path.GetExtension(ofd.FileName) == ".avi" || Path.GetExtension(ofd.FileName) == ".mkv")
                                {
                                    Biblioteca.Herramientas.TelegramTool.Bot.SendVideoAsync(Settings.Default.idTelegram, f.Content);
                                }                 

Esta en un simple boton, gracias de antemano , espero sua tencion y ayuda.
Anexo, la informacion que encontre en internet esta desactualizada respecto al que descargue (al parecer la ultima version), pueden fijarse en los planteamientos diferentes que hay y el mio.
42  Programación / .NET (C#, VB.NET, ASP) / Enviar accion a proceso especifico wpf en: 13 Junio 2018, 02:48 am
Hola , a todos, esta noche les traigo un problema que no puedo resolver, eh conseguido un codigo para lo que necesito pero en otro leguanje que no es wpf, el lenguaje es VB aunque no estoy seguro y me da el error siguiente el cual no puedo resolver.

"No se puede convertir un objeto de tipo string al tipo diagnostic.process"

y aqui el codigo
Código:
  Process p = (Process) listBox1.SelectedItem;
                    if (p != null)
                    {
                        IntPtr h = p.MainWindowHandle;
                        SetForegroundWindow(h);
                        simuladorTeclas.Keyboard.KeyPress(VirtualKeyCode.VK_A);
                    }
Esto consiste en seleccionar de un listbox un proceso y a ese proceso enviar la accion, que en este caso seria precionar la tecla "a"

Me podrian ayudar con el codigo que no allo como hacer para que me funcione y es creo , lo ultimo para que sirva, de antemano gracias.

Anexo, que el codigo de donde me estoy guiando funciona perfectamente

Código:
  Process p = (Process) listBox1.SelectedItem;
                    if (p != null)
                    {
                        IntPtr h = p.MainWindowHandle;
                        SetForegroundWindow(h);
                        simuladorTeclas.Keyboard.KeyPress(VirtualKeyCode.VK_A);
                    }
ejecutando esto desde un boton que es lo original
43  Programación / .NET (C#, VB.NET, ASP) / Ocultar Proyecto de ALT+TAB en: 8 Junio 2018, 03:46 am
Buenas noches amigos, hoy les traigo una consulta con la cual no eh dado respuesta por ningun lado y espero ustedes puedan ayudarme, mi proyecto al iniciar abre dos "ventanas" puedo manipular una , y la otra es una"alerta" para el usuario, el problema empieza que cuando apreto (alt+tab) , en ese menu (no se como se llama) se muestra todo lo que esta activo , incluyendo la "ventana de alerta" mi pregunt es.

Existe alguna manera para ocultar una ventana especifica del proyecto al apretar (alt+tab) ? y si es asi, como seria la forma.

Muchas Gracias .!
44  Programación / .NET (C#, VB.NET, ASP) / SevenZipExtractor (Password) en: 29 Mayo 2018, 01:40 am
Hola amigos, hoy les traigo una inquietud y consulta , actualmente uso la libreria SevenZip para comprimir y descomprimir archivos, eh realizado trabajos interesantes con ella y me han quedado bien (comprimir / descomprimir), ahora tengo una inquietud y es, que al descomprimir archivos con contraseña me da un error, lo que necesito es saber , como puedo validar un archivo que, en caso de tener contraseña lo compare con un textbox y en caso de no tener contraseña seguir su proceso normal como ya lo hace.

mi codigo actual esta asi

Código
  1. public void metodoExtraccion()
  2.        {
  3.            AvisoDescargas des = new AvisoDescargas();
  4.            des.listaDescargas.Visibility = System.Windows.Visibility.Visible;
  5.            des.lblDescargaTitulo.Content = "EXTRAYENDO ARCHIVOS";
  6.            des.Show();
  7.  
  8.            Microsoft.Win32.OpenFileDialog ofd = new Microsoft.Win32.OpenFileDialog
  9.            {
  10.                Title = "Archivos a Descomprimir",
  11.                Filter = "Extraer (7z RAR Zip ISO|*.7z; *.rar; *.zip; *.iso",
  12.                Multiselect = true
  13.            };
  14.            if ((ofd.ShowDialog() == true))
  15.            {
  16.                StreamWriter sw = new StreamWriter("listfile.lst");
  17.                foreach (string n in ofd.FileNames)
  18.                {
  19.                    sw.WriteLine(n);
  20.                }
  21.                sw.Close();
  22.  
  23.                string zipName = ofd.FileName;
  24.  
  25.                System.Threading.Tasks.Task.Run(() => {
  26.                    using (var tmp = new SevenZipExtractor(
  27.  
  28.                    File.OpenRead(zipName)))
  29.                    {
  30.  
  31.                        tmp.FileExtractionStarted += (s, e) =>
  32.                        {
  33.                            Dispatcher.Invoke(() => des.listaDescargas.Items.Add((String.Format("Extrayendo... [{0}%] {1}", e.PercentDone, e.FileInfo.FileName))));
  34.  
  35.                        };
  36.                        tmp.ExtractionFinished += (s, e) => { Dispatcher.Invoke(() => des.listaDescargas.Items.Add("Proceso Finalizado")); };
  37.                        try
  38.                        {
  39.                            Directory.CreateDirectory(ofd.SafeFileName);
  40.                            string nombre = Path.GetFileNameWithoutExtension(ofd.SafeFileName);
  41.                            string salida = Path.Combine(Settings.Default.directorioExtraidos, nombre);
  42.                            tmp.ExtractArchive(salida);
  43.                            MainWindow.habla.SpeakAsync("Extraccion Finalizada");
  44.                            Directory.Delete(ofd.SafeFileName, true);
  45.                        }
  46.                        catch (Exception)
  47.                        {
  48.                            des.lblPorcentaje.Content = "Necesita Contraseña";
  49.                            MainWindow.habla.Speak("No se puede extraer, archivo dañado o con contraseña");
  50.                        }
  51.  
  52.                    }
  53.                });
  54.            };
  55.        }

El codigo es totalmente funcional, espero puedan ayudarme con un ejemplo con validacion de contraseña y de ahi partir a adaptarlo a mi codigo , gracias de antemano.
45  Programación / Programación General / ffmpeg Consult a(1) en: 15 Abril 2018, 07:30 am
Buenas noches amigos, estoy con una consulta y espero puedan ayudarme como en ocasiones anteriores, que mas que eso han sido respuestas con un gran valir educativo.

El asunto es el siguiente, usando el programa ffmpeg eh hecho muchas cosas y en este caso el poder capturar el sonido del microfono y la pantalla del escritorio en un video.
Este codigo es totalmente funcional, el unico detalle es que el video va a una velocidad muy rapida no acorde a la voz del microfono asi que no se reproduce como debe ser se corta antes de  tiempo, eh buscado mucho y no eh encontrado nada relacionado a eso, espero alguien pueda ayudarme.

Código:
    string input = "salida";
            string audio = Settings.Default.micDefault;
            string destFile = Path.Combine(Settings.Default.directorioVideo, Path.GetFileNameWithoutExtension(input) + ".mp4");
            string args = string.Format(@"-y -rtbufsize 200M -f gdigrab -thread_queue_size 1024 -probesize 10M -r 30 -draw_mouse 1 -i desktop -f dshow -channel_layout stereo -thread_queue_size 1024 -i audio=""{0}"" -c:v libx264 -r 30 -preset ultrafast -tune zerolatency -crf 25 -pix_fmt yuv420p -c:a aac -strict -2 -ac 2 -b:a 128k  ""{1}", audio, destFile);

            System.Threading.Tasks.Task.Run(() =>
            {
                System.Diagnostics.Process Conversor = new System.Diagnostics.Process();
                Conversor.StartInfo.FileName = "ffmpeg";
                Conversor.StartInfo.Arguments = args;
                Conversor.Start();
                Conversor.WaitForExit();
                Conversor.Close();
            });

Nota: Como un extra , si alguien sabe como bajar el peso del archivo seria fantastico ya que con solo 2 segundos ya son 2 Mb aproximadamente... (muy alto).

Nota 2 : La  Settings.Default.micDefault; es donde se guarda un microfono (nombre exactamente)

Settings.Default.directorioVideo; Ruta de salida odnde se guarda el archivo.

Muchas Gracias
46  Programación / .NET (C#, VB.NET, ASP) / ffmpeg archivos con espacio en: 8 Abril 2018, 17:18 pm
Hola muchachos, tengo un pequeño problema y es que en c# no logro colocar en la linea de argumentos las dobles comillas " " para archivos con espacio, me explico mejor.

esta es la linea para convertir archivos : "ffmpeg -i entrada.mp4 salida.mp3"

Pero cuando intento esto "ffmpeg -i entrada dos.mp4 salida.mp3" me genera un error el cual para corregirlo debo colocar, "ffmpeg -i "entrada dos.mp4" salida.mp3" y me convierte el archivo todo esto desde una ventana de "Dos".

El problema es que en C# , wpf no encuentro para hacer esta linea "ffmpeg -i "entrada dos.mp4" salida.mp3"

el codigo esta en un boton(openfiledialog)

Código:
                string entrada = "\"" + ofd.FileName + "\"";

                    System.Diagnostics.Process Conversor = new System.Diagnostics.Process();
                    Conversor.StartInfo.FileName = "ffmpeg";
                    Conversor.StartInfo.Arguments = $"-i {entrada} -b:a 320k {@"C:\"}";
                    Conversor.Start();
                    Conversor.WaitForExit();           
                    Conversor.Close();

es funcional para archivos sin espacio, espero puedan ayudarme
47  Programación / .NET (C#, VB.NET, ASP) / SevenZip Acceso Denegado en: 29 Marzo 2018, 05:21 am
Buenas noches amigos, eh estado trabajando con la libreria SevenZip y me ah resultado tremenda, cree mi proyecto para probar el codigo aparte y me funciono de maravilla pero a la hora de aplicarlo a mi codigo base me da un error que no le encuentro razon de ser y me gustaria otras opiniones.

Este es el codigo de mi proyecto independiente.
Código
  1. public void sevenZipCompresorD()
  2.        {
  3.            System.Threading.Tasks.Task.Run(() =>
  4.            {
  5.                System.Windows.Forms.FolderBrowserDialog ofd = new System.Windows.Forms.FolderBrowserDialog();
  6.                ofd.Description = "Seleccione la carpeta a comprimir";
  7.                ofd.RootFolder = Environment.SpecialFolder.Desktop;
  8.  
  9.                Dispatcher.Invoke(() =>
  10.                {
  11.  
  12.                    if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  13.                    {
  14.                        string folderToZip = ofd.SelectedPath;
  15.  
  16.                        System.Threading.Tasks.Task.Run(() =>
  17.                        {
  18.                            var tmp = new SevenZipCompressor();
  19.                            tmp.ArchiveFormat = OutArchiveFormat.SevenZip;
  20.                            tmp.CompressionMethod = CompressionMethod.Lzma;
  21.                            tmp.CompressionLevel = CompressionLevel.Ultra;
  22.                                tmp.FileCompressionStarted += (s, e) =>
  23.                                {
  24.                                    Dispatcher.Invoke(() => lblPorcentage.Content = (String.Format("Comprimiendo... [{0}%] {1}",
  25.                                        e.PercentDone, e.FileName)));
  26.                                };
  27.                            tmp.CompressionFinished += (s, e) => { Dispatcher.Invoke(() => lblPorcentage.Content = ("Finished!")); };
  28.                            tmp.CompressDirectory(folderToZip, @"test.7z");
  29.                        });
  30.                    }
  31.                });
  32.            });
  33.        }
  34.  
  35.        private void SevenZipCompresorA()
  36.        {
  37.            System.Threading.Tasks.Task.Run(() =>
  38.            {
  39.                Microsoft.Win32.OpenFileDialog ofd = new Microsoft.Win32.OpenFileDialog();
  40.            ofd.Title = "Archivos a Comprimir";
  41.            ofd.Filter = "Archivos a Comprimir|*.*";
  42.            ofd.Multiselect = true;
  43.            if ((ofd.ShowDialog() == true))
  44.            {
  45.                //StreamWriter sw = new StreamWriter("listfile.lst");
  46.                //foreach (string n in ofd.FileNames)
  47.                //{
  48.                //    sw.WriteLine(n);
  49.                //}
  50.                //sw.Close();
  51.  
  52.                System.Threading.Tasks.Task.Run(() =>
  53.                {
  54.                    var tmp = new SevenZipCompressor();
  55.                    tmp.ArchiveFormat = OutArchiveFormat.SevenZip;
  56.                    tmp.CompressionMethod = CompressionMethod.Lzma;
  57.                    tmp.CompressionLevel = CompressionLevel.Ultra;
  58.                    tmp.FileCompressionStarted += (s, e) =>
  59.                    {
  60.                        Dispatcher.Invoke(() => lblPorcentage.Content = (String.Format("Comprimiendo... [{0}%] {1}",
  61.                            e.PercentDone, e.FileName)));
  62.                    };
  63.                    tmp.CompressionFinished += (s, e) => { Dispatcher.Invoke(() => lblPorcentage.Content = ("Finished!")); };
  64.                    tmp.CompressFiles(@"test.7z", ofd.FileName);
  65.                });
  66.  
  67.            }
  68.            });
  69.        }
  70.  

Aclaro ambos funcionan de manera exitosa y pueden probarlo.

este es el codigo de mi proyecto base.
Código
  1. public void metodoDirectorio()
  2.        {
  3.  
  4.            SpeechSynthesizer habla = new SpeechSynthesizer();
  5.            AvisoVisual aviso = new AvisoVisual();
  6.            aviso.Top = 1;
  7.            aviso.Left = 600;
  8.            aviso.Visibility = Visibility.Visible;
  9.  
  10.            System.Threading.Tasks.Task.Run(() =>
  11.            {
  12.                System.Windows.Forms.FolderBrowserDialog ofd = new System.Windows.Forms.FolderBrowserDialog();
  13.                ofd.Description = "Seleccione la carpeta a comprimir";
  14.                ofd.RootFolder = Environment.SpecialFolder.Desktop;
  15.  
  16.                Dispatcher.Invoke(() =>
  17.                {
  18.                    if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  19.                    {
  20.                        string folderToZip = ofd.SelectedPath;
  21.  
  22.                        System.Threading.Tasks.Task.Run(() =>
  23.                        {
  24.                            var tmp = new SevenZipCompressor();
  25.                            tmp.ArchiveFormat = OutArchiveFormat.SevenZip;
  26.                            tmp.CompressionMethod = CompressionMethod.Lzma;
  27.                            tmp.CompressionLevel = CompressionLevel.Ultra;
  28.                            tmp.FileCompressionStarted += (s, e) =>
  29.                            {
  30.                                Dispatcher.Invoke(() => aviso.Content = (String.Format("Comprimiendo... [{0}%] {1}",
  31.                                    e.PercentDone, e.FileName)));
  32.                            };
  33.                            tmp.CompressionFinished += (s, e) => Dispatcher.Invoke(() => aviso.Close());
  34.                            tmp.CompressDirectory(folderToZip, File.Create(Settings.Default.directorioComprimidos));
  35.                        });
  36.                    }
  37.                    else
  38.                    {
  39.                        aviso.Close();
  40.                    }
  41.                });
  42.            });            
  43.        }
  44.        public void metodoArchivo()
  45.        {
  46.            AvisoVisual aviso = new AvisoVisual();
  47.            aviso.Top = 1;
  48.            aviso.Left = 600;
  49.            aviso.Visibility = Visibility.Visible;
  50.  
  51.            System.Threading.Tasks.Task.Run(() =>
  52.            {
  53.                Microsoft.Win32.OpenFileDialog ofd = new Microsoft.Win32.OpenFileDialog();
  54.                ofd.Title = "Archivos a Comprimir";
  55.                ofd.Filter = "Archivos a Comprimir|*.*";
  56.                ofd.Multiselect = true;
  57.                if ((ofd.ShowDialog() == true))
  58.                {
  59.                    System.Threading.Tasks.Task.Run(() =>
  60.                    {
  61.                        var tmp = new SevenZipCompressor();
  62.                        tmp.ArchiveFormat = OutArchiveFormat.SevenZip;
  63.                        tmp.CompressionMethod = CompressionMethod.Lzma;
  64.                        tmp.CompressionLevel = CompressionLevel.Ultra;
  65.  
  66.                        tmp.FileCompressionStarted += (s, e) =>
  67.                        {
  68.                            Dispatcher.Invoke(() => aviso.Content = (String.Format("Comprimiendo... [{0}%] {1}",
  69.                                e.PercentDone, e.FileName)));
  70.                        };
  71.                        tmp.CompressionFinished += (s, e) => { Dispatcher.Invoke(() => aviso.Close()); };
  72.                        tmp.CompressFiles(Settings.Default.directorioComprimidos, ofd.FileName);
  73.                    });
  74.                }
  75.                else
  76.                {
  77.                    Dispatcher.Invoke(() => aviso.Close());
  78.                }
  79.            });            
  80.        }
  81.  

como se podran fijar la unica diferencia es el cambio de direccion en la parte de salida del archivo.

El error del codigo 2 es: "acceso denegado a la ruta de acceso 'C:\'.' en realidad a la ruta que le ponga da ese error y no enteindo ni se por que, espero pueda alguien ayudarme.

PD. Despues de buscar solucion ahora me envia el archivo a el lugar que quiera pero sin nombre alguno y eso asigno un nombre.
48  Programación / .NET (C#, VB.NET, ASP) / Mostrar Valor Slider en Label en: 10 Marzo 2018, 03:13 am
Buenas noches amigos, me gustaria que me opinaran en algo simple que no le encuentro solucion.

Eh creado un Slider para a mi aplicacion poder cambiar su opacidad, el valor se guarda en una settings, y no hay problema, pero quice que el valor a medida que uno lo cambia se mostrara en un label y es aqui donde eh fallado no encuentro como.

Lo que inicial mente logre es mostrar en la carga inicial del programa el valor que esta en el momento actual guardado en la setting.

Código:
        private void Window_Activated(object sender, EventArgs e)
        {
            lblOpaValor.Content = Settings.Default.opacidad;           
        }

mas no poder mostrar el valor a medida que uno lo cambie.

Intente asi pero falle entro otras muchas formas y nada.
Código:
        private void sldOpa_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
        {
            double valorOpacidad = e.NewValue;
            lblOpaValor.Content = valorOpacidad.ToString();
        }

Agradeceria sus ayudas , gracias por el tiempo.
49  Programación / .NET (C#, VB.NET, ASP) / Foreach en SpeechRecognizer en: 10 Febrero 2018, 11:52 am
utilizo el SpeechRecognitionEngine
con el la propiedad de "SetInputToDefaultAudioDevice" necesito que me ayuden a realizar una busqueda de los microfonos activos por medio de un foreach
aqui muestro dos metodos con los que me resulta la obtencion de los dispositivos pero ninguno resulta al yo seleccionar el microfono no me lo cambia, algo falta pero no se que es, segun es recargar el SetInputToDefaultAudioDevice luego de un Disposed pero no se como hacerlo.

 
Código:
 private void CargaMicro()
        {
            ManagementObjectSearcher mo = new ManagementObjectSearcher("select * from Win32_SoundDevice");

            foreach (ManagementObject soundDevice in mo.Get())
            {
                //Console.WriteLine(soundDevice.GetPropertyValue("DeviceId"));
                //Console.WriteLine(soundDevice.GetPropertyValue("Manufacturer"));
                mic.Items.Add(soundDevice.GetPropertyValue("Name"));              
            }
            //MMDeviceEnumerator names = new MMDeviceEnumerator();
            //var devices = names.EnumerateAudioEndPoints(DataFlow.Capture, DeviceState.Active);
            //foreach (var device in devices)
            //{
            //    mic.Items.Add(device.FriendlyName);
            //}
        }
ya que por defecto me toma el microfono predeterminado, espero puedan ayudarme, estoy usando estos codigos ambos me dan en el combobox la lista de los dispositivoos de captura de sonido, pero no encuentro la forma que al yo seleccionarlo funcionen

antes de eso cargo este metodo

Código:
 private void ActivarEscucha()
        {
            escucha.SetInputToDefaultAudioDevice();
            escucha.RecognizeAsync(RecognizeMode.Multiple);
            escucha.SpeechRecognized += Escucha_SpeechRecognized;
            escucha.AudioLevelUpdated += Escucha_AudioLevelUpdated;
        }
50  Programación / .NET (C#, VB.NET, ASP) / Problema con PromptBuilder en: 3 Febrero 2018, 23:21 pm
Eh creado este codigo con la finalidad de poder copiar todo lo que hable en un cuadro de texto, pero quiero que se pueda hacer fuera del cuadro de texto.

Aqui el codigo que implemente
Código
  1. using System.Windows;
  2. using System.Speech.Synthesis;
  3. using System.Speech.Recognition;
  4.  
  5. namespace Test
  6. {
  7.    public partial class MainWindow : Window
  8.    {        
  9.        PromptBuilder dictado = new PromptBuilder();
  10.        SpeechSynthesizer habla = new SpeechSynthesizer();
  11.        SpeechRecognitionEngine escucha = new SpeechRecognitionEngine();
  12.        string speech;
  13.        public MainWindow()
  14.        {
  15.            InitializeComponent();
  16.            ActivarEscucha();
  17.        }
  18.  
  19.  
  20.        private void ActivarEscucha()
  21.        {
  22.            escucha.SetInputToDefaultAudioDevice();
  23.            escucha.LoadGrammar(new DictationGrammar());
  24.            escucha.RecognizeAsync(RecognizeMode.Multiple);
  25.            escucha.SpeechRecognized += Escucha_SpeechRecognized;
  26.            habla.SpeakAsync("Esperando Dictado");
  27.        }
  28.  
  29.        private void Escucha_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
  30.        {
  31.            speech = e.Result.Text;
  32.    // dictado.AppendText(speech);        
  33.        textbox.AppendText(speech); <-- si yo coloco esta linea, me escribe lo que hable en el textbox, yo necesito es que lo escriba fuera del textbox
  34.  
  35.        }
  36.    }
  37. }
  38.  

Espero puedan ayudarme a solventar este problema , gracias.
Páginas: 1 2 3 4 [5] 6 7 8
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines