Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - rigorvzla

#191
.NET (C#, VB.NET, ASP) / Re: 7-ZIp
26 Noviembre 2017, 20:45 PM
muchas gracias a ambos por las respuestas y en efecto la respuesta esta aqui en los primeros post busque por otro lado algo q pudiera entender mejor y no por que no se entienda, esta bien explicado para alguien que sepa del tema a nivel alto, yo busque algo de manera mas facil para mi razonar (porfavor no quiero crear polemica de verdad), voy a ponerme manos  la obra en la implementacion, o adaptacion de este codigo al proyecto , y el afan de que sea asi es que la orden sera hablada por microfono "descomprimir o comprimir eso" y bueno pierde el sentido si se usa el click en el menu contextual , gracias nuevamente , y como dijo elektro, volvi al principio para leer e informarme mas del tema para que  todas sus explicaciones no me parescan simbolos egipcios.
#192
.NET (C#, VB.NET, ASP) / Re: 7-ZIp
23 Noviembre 2017, 23:39 PM
  :) entendido gracias por la respuesta , lo tendre en cuenta, yseguire con mi investigacion  ;)
#193
.NET (C#, VB.NET, ASP) / Re: 7-ZIp
23 Noviembre 2017, 17:35 PM
@NEBIRE @OKIK muchas gracias por estas respuesta en efecto @elektro si me ha ayudado y nunca lo eh negado al igual que uds cosa q vuelvo agradecer, no coloque sombrear en el buscado coloque "capturar, ruta de click , o raton" asi no en ese orden solo supuse con con uds el sombrear se sobreentenderia que era seleccionar, pero es de aprender a usar mejor la argumentacion de palabras .

volviendo al tema encontre un ejemplo en internet muy bueno mas no se ahora como adaptarlo a mi codigo y se los dejare a ver quien puede adaptarlo, la explicacion estaria bien pero siempre aprendo al observar ya que desconozco el lenguaje profesional .

//case "comprimir eso":
               //    //    string filename;

               //    //    ArrayList selected = new ArrayList();

               //    //    foreach (SHDocVw.InternetExplorer window in new SHDocVw.ShellWindows())
               //    //    {
               //    //        filename = System.IO.Path.GetFileNameWithoutExtension(window.FullName).ToLower();
               //    //        if (filename.ToLowerInvariant() == "explorer")
               //    //        {
               //    //            Shell32.FolderItems items = ((Shell32.IShellFolderViewDual2)window.Document).SelectedItems();
               //    //            foreach (Shell32.FolderItem item in items)
               //    //            {
               //    //                Process.Start(item.Path);
                   
               //    string sourceName = " ";
               //    string targetName = @"\Temp\Example.7z";
               //    ProcessStartInfo p = new ProcessStartInfo();
               //    p.FileName = "7za.exe";
               //    p.Arguments = "a -t7z \"" + targetName + "\" \"" +
               //        sourceName + "\" -mx=9";
               //    p.WindowStyle = ProcessWindowStyle.Hidden; Process x = Process.Start(p);
               //    x.WaitForExit();

               //    //            }

               //    //        }

               //    //    }
               //    break;


asi lo coloque en mi proyecto OJO sin mencionar pero no seee como ahora hacer o que poner  o donde colocar , mi accion
  //    string sourceName = " ";
               //    string targetName = @"\Temp\Example.7z";
               //    ProcessStartInfo p = new ProcessStartInfo();
               //    p.FileName = "7za.exe";
               //    p.Arguments = "a -t7z \"" + targetName + "\" \"" +
               //        sourceName + "\" -mx=9";

en ese codigo , un amigo me explico su funcion , utilidad de ese codigo mas no como o donde adaptar a mi codigo.

entonces tengo la herramienta mas no se como usarla jaja

basicamente ese codigo captura la ruta completa del archivo sin extension osea (directorio) luego al yo dar la orden ejecuta la linea de comandos y comprime el directorio.

tengo la misma accion para descomprimir

y aparte mi amigo me dio tambien otro  codigo donde se basa en lo mismo para capturar rutas con extensión

aqui lo ven

      [DllImport("user32.dll")]
       private static extern IntPtr GetForegroundWindow();
       private void VerificarSeleccion()
       {
           string filename;
           string sourceName = ""; //declarar source arriba del foreach
           ArrayList selected = new ArrayList();
           IntPtr handle = GetForegroundWindow();
           foreach (SHDocVw.InternetExplorer window in new SHDocVw.ShellWindows())
           {

               if (window.HWND == (int)handle)
               {

                   filename = System.IO.Path.GetFileNameWithoutExtension(window.FullName).ToLower();
                   if (filename.ToLowerInvariant() == "explorer")
                   {
                       FolderItems items = ((IShellFolderViewDual2)window.Document).SelectedItems();
                       foreach (FolderItem item in items)
                       {
                           //selected.Add(item.Path);
                           sourceName = item.Path; //asigna valor al source

                       }
                   }
               }
               
           }


           //y aqui llamar al source
           Process.Start(new ProcessStartInfo(sourceName));
       }
   }
}


este si no se como usarlo ni adaptarlo

este otro es el de directorio solo

private void VerificarSeleccion()
       {
           string filename;
           string sourceName = ""; //declarar source arriba del foreach
           ArrayList selected = new ArrayList();
           IntPtr handle = GetForegroundWindow();
           foreach (SHDocVw.InternetExplorer window in new SHDocVw.ShellWindows())
           {

               if (window.HWND == (int)handle)
               {

                   filename = System.IO.Path.GetFileNameWithoutExtension(window.FullName).ToLower();
                   if (filename.ToLowerInvariant() == "explorer")
                   {
                       sourceName = ((IShellFolderViewDual2)window.Document).FocusedItem.Path; // para directorios

                       //FolderItems items = ((IShellFolderViewDual2)window.Document).SelectedItems(); // para archivos
                       //foreach (FolderItem item in items)
                       //{
                       //    //selected.Add(item.Path);
                       //    sourceName = item.Path; //asigna valor al source

                       //}
                   }
               }
               
           }


           //y aqui llamar al source
           Process.Start(new ProcessStartInfo(sourceName));
       }
   }
}


se que ahi esta la respuesta a mi requerimiento pero no se como aplicarlo usarlo , no se q es eso de declarar y se lo eh hecho mas no se en que momento ya que no entiendo, disculpen mi brutalidad de verdad...

y aqui otro codigo que encontre mas simple y a simple vista mia resulta de la misma manera

//case "comprimir":

                //    string file_name = string.Empty;

                //    OpenFileDialog openFileDialog1 = new OpenFileDialog();

                //    if (openFileDialog1.ShowDialog() == DialogResult.OK)
                //    {
                //        string dir = @openFileDialog1.FileName();
                //      string destino = Path.GetFileName(dir);


                //    }
                //    string sourceName = " ";
                //    string targetName = @"\Temp\Example.7z";
                //    ProcessStartInfo p = new ProcessStartInfo();
                //    p.FileName = "7za.exe";
                //    p.Arguments = "a -t7z \"" + targetName + "\" \"" +
                //        sourceName + "\" -mx=9";
                //    p.WindowStyle = ProcessWindowStyle.Hidden; Process x = Process.Start(p);
                //    x.WaitForExit();
#194
Comparto mi solucion a este caso, era algo simple pero en razones de planteamiento y poco conocimiento de herramientas fue una odisea

Este codigo es el mio y como logre mi objetivo

                //    Clipboard.Clear();
                //    CONTROL + C
                //    string porta = Clipboard.GetText();
                //    habla.SpeakAsync(porta);
                //   


este otro fue de un ususario que me auxilio con el mismo asunto y basicamente en contexto de uso, hacen lo mismo (leer texto seleccionado)


                    CONTROL + C
                    pBuilder.ClearContent();
                    pBuilder.AppendText(Clipboard.GetText());
                    habla.SpeakAsync(pBuilder);                   
                   


espero que como a mi les sea de gran utilidad  ;-)
#195
.NET (C#, VB.NET, ASP) / Re: 7-ZIp
22 Noviembre 2017, 02:01 AM
si lei todo con detalle, pero no aplica al planteamiento q hice, ocurre que no encuentro la forma de explicarme, no es simple para mi a (sombrear) ,me refiero a seleccionar, clikar , ... no tengo mas sinonimos , siempre agradeci tu ayuda y la de los demas, no entiendo como no entiendes mi terminologia cutre, simple y sencilla, aun no eh encontrado la solucion en este tema, supongo que lo diras por el tema anterior y si lo deje de lado cosa que hare de inmediato, formule un tema que se le encontro respuesta y no la di , ahi te acepto eso.

procuro dar planteamientos simples pero entendibles para cualquier ususario por  q asi yo tenga un gran conocimiento de equis tema, lo mejor es que todos me entiendan asi sea explicandolo con , peras y manzanas, osea de manerasimple , o usando terminos sencillos sin importar que me deba extender, te agradezco nuevamente por la ayuda que me has brindado.  pero mi poca terminologia o falta de argumentacion de problema ha hecho q no, nos entendamos.

eh optado por usar el comando Mouse.Capture(); (y aclaro no se como usarlo) asumiendo que con el yo pueda capturar la direccion del objeto seleccionado, entiendase por objeto, algun icono como carpetas o archivos cualquiera, una vez esto , ya en el codigo tener una referencia de ese valor, dato  objeto, variante, string, no se como decirlo de manera entendible o no se cual seria la definicion, ok  al tener esto, se llene el espacio en mi codigo y ejecute la accion que debe, cosa que si hace ya. mas no con el archivo que quiero por que aun no captura su direccion, patch, ruta.
un ejemplo visual seria este
case "comprimir eso":
                   string sourceName = "c:\\ARCHIVO A CAPTURAR";(OBTENIDO POR EL CLICK)
                   string targetName = @"\Temp\Example.7z";
                   ProcessStartInfo p = new ProcessStartInfo();
                   p.FileName = "7za.exe";
                   p.Arguments = "a -t7z \"" + targetName + "\" \"" +
                       sourceName + "\" -mx=9";
                   p.WindowStyle = ProcessWindowStyle.Hidden; Process x = Process.Start(p);
                   x.WaitForExit();
                   break;

si aun tienes la curiosidad de saber como resolverlo y decirme que planteamiento crees correcto perfecto, y si no, bueno eres libre de hacer lo que crees correcto. dejo ahi eso para cualquier otra persona que desee ayudar.
#196
.NET (C#, VB.NET, ASP) / Re: 7-ZIp
21 Noviembre 2017, 23:58 PM
sin animos de ofender @elektro , me parecio tedioso leer tooodo ese poco texto que escribiste , pero las primeras lineas me dijeron de ti aspectos que no vienen al caso, te doy gracias por las respuestas y si, al parecer hago un programa de  programacion "avanzada", (cosa que no me va mal hasta el momento). encontre lo que queria  por mis medios  y obvio preguntando a personas que me dan respuestas claras , simples concisas y entendibles para cualquier nivel.

gracias a los que entendieron mi vocablo poco especifico etico profesional y burdo,  lastima no puderon saber responder se agradece tambien.

seguire preguntando si tengo dudas y agradecere de antemano a los que respondan mis inquietudes, supongo que es algo donde todos aprendemos creo que le llaman  "feedback" o " dialogo de ideas". gracias nuevamente su colaboracion para mis inquietudes.
#197
.NET (C#, VB.NET, ASP) / Re: 7-ZIp
21 Noviembre 2017, 17:34 PM

         [code=csharp] string sourceName = "ExampleText.txt";
           string targetName = "Example";
           string pathDestination = "Prueba\\";
           ProcessStartInfo p = new ProcessStartInfo();
           p.FileName = "7za.exe";

           p.Arguments = "a " + pathDestination + targetName + " " + sourceName + " -t7z -mx=9";
           p.WindowStyle = ProcessWindowStyle.Hidden;

           Process x = Process.Start(p);
           x.WaitForExit();


muchas gracias, buscaba la forma de que creara una carpeta y ahi almacenara el archivo comprimido ese punto estubo bueno @elektro muchas gracias por esa gran explicacion, @okika , este planteamiento esta excelente, ahora falta un detalle que es con lo que no doy, yo necesito hacer click en un archivo y sobrearlo, en ese punto cuando corra esos parametros , me tome el click y haga lo q debe hacer string sourceName = "ExampleText.txt"; este parametro no me capta lo que yo tenga el objeto seleccionado en ese momento ya que requiere una direccion predestianda . mi pregunta es como puedo dejar ese valor en blanco y que me tome el objeto que  tenga seleccionado con el click del raton, o que se cree un objeto con el clikck del raton para yo al tener ese valor capturado referenciarlo como archivo a comprimir.[/code]
#198
.NET (C#, VB.NET, ASP) / 7-ZIp
21 Noviembre 2017, 04:21 AM
Hola de nuevo amigos, despues de una batalla ganada en esta gran guerra jeje, me decido a usar (no se si llamarle api) de 7zip ya que quiero poder hacer click en un archivo cualquiera de mi pc y con una orden se comprima. alguien teine alguna idea? dejo un ejemplo que consegui pero no puedo llevar acabo ya que por mas click que hago enel archivo no me lo toma en cuenta al momento de ejecutar la orden.

string sourceName = "ExampleText.txt";
            string targetName = "Example.7z";

            // 1
            // Initialize process information.
            //
            ProcessStartInfo p = new ProcessStartInfo();
            p.FileName = "7za.exe";

            // 2
            // Use 7-zip
            // specify a=archive and -tgzip=gzip
            // and then target file in quotes followed by source file in quotes
            //
            p.Arguments = "a -t7z \"" + targetName + "\" \"" +
                sourceName + "\" -mx=9";
            p.WindowStyle = ProcessWindowStyle.Hidden;

            // 3.
            // Start process and wait for it to exit
            //
            Process x = Process.Start(p);
            x.WaitForExit();


SOlamente toma archivos en una ruta especifica y no una ruta cualquiera.
quice por iniciativa propia copiar en el portapapeles a ver si de ahi me lo tomaba y no. espero puedan ayudarme (aplicando la misma descripcion a descomprimir) y tomo este por que el winrar debe estar instalado en el huesped y el zip no tiene buena tasa de compresion.
#199
BUENO MI GENTE!!! lo eh conseguido y como dice el compañero de arriba, en efecto es cosa de una linea solo que plantearlo es un dolor de cabeza jeje, consegui la solucion por mi mismo despues de tanto probar Muchas gracias a todos los que me ayudaron y de alguna forma una cosa dio con la otra, ese punto 3 fue la clave y el inicio de la pesadilla que me llevo al exito gracias jeje feliz noche! :laugh: ;-)
#200
bueno eso no me ayudo mucho mi ingles no es nada bueno y teniendo en cuenta que soy nuevo en esto tampoco es de mucha ayuda, simplemente me gustaria saber una forma de como , luego de tener en el clipboard un texto, el speech recognizer lo lea, mas nada.