Enero 16, 2018, 09:42:03 pm

Autor Tema: [CMD-VBS] ¿Como hacer este code sin hacer un archivo bat temporal?  (Leído 1603 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado klaine

  • Yo vivo en CPH
  • ***
  • Mensajes: 433
    • Ver Perfil
Buenas dado el siguiente code paso argumentos a un vbs, básicamente escribo en un .bat temporal los argumentos que quiero pasar al vbs y lo ejecuto, he tratado de usar ...exec("cmd /c cscript /nologo args") pero no me resulta y tengo que escribir un bat, como lo podría hacer en vez de hacer esto?  ??? aqui les dejo mi code:

Código: (java) You are not allowed to view links. Register or Login

    public void cscript(String[] args,String vbs){

        String temp="";

        if(new File(System.getProperty("user.home") + "\\desktop").isDirectory()){

      temp=System.getProperty("user.home") + "\\desktop\\temp.bat";

        }else if(new File(System.getProperty("user.home") + "\\escritorio").isDirectory()){

            temp=System.getProperty("user.home") + "\\escritorio\\temp.bat";

        }else{

            temp=JOptionPane.showInputDialog("Dame el path de tu escritorio");

        }

      String args2="";

      for(String val:args){

          args2+=" " + "\"" + val +"\"";

      }

      String com="\"";

      String[] bat={"@echo off", "cscript /nologo " + com + vbs + com + args2};

      this.writer(bat, temp, true, true);

      try{

          Runtime.getRuntime().exec("cmd /c " + temp);

      }catch(IOException ex){

      }



    }



Y para escribir uso: (metodo writer)

Código: (java) You are not allowed to view links. Register or Login

void writer(String[] args, String file, boolean rewrite, boolean delete_on_exit){

    Writer w=new Writer(file, delete_on_exit);

    if(rewrite){

        w.touch();

    }

    for(String val:args){

        w.write(val);

    }

    w.close();

    }



Y la clase writer:

Código: (java) You are not allowed to view links. Register or Login

class Writer {

    java.io.BufferedWriter bw;

    String file="";

    Writer(String foo, boolean delete){

        this.file=foo;

        try{

            File f = new File(this.file);

            if(delete){

            f.deleteOnExit();

            }

            bw=new BufferedWriter(new FileWriter(f));

        }catch(IOException ex){

        }
    }

    public void write(String line){

        try{

        bw.append(line);

        bw.newLine();

        }catch (IOException ex) {

            ex.printStackTrace();

        }

        }



    public void touch(){

        /**
         ** Vacia el archivo con el cual se construyo este objeto
         ** o lo crea si no existe
         **/

        File f = new File(this.file);

        f.delete();

        try{

            f.createNewFile();

        }catch(IOException c){

        }

    }

    public void touch(String f){

        /***
         * Vacia el archivo dado
         * Si el String recibido no es un
         * archivo valido se mostrara un mensaje de error
         *
         * NOTA: Las rutas de archivos se separan con "\",
         * "\" es un caracter especial para java, para no tener problemas con esto,
         * se usa "\\" para denotar dicho caracter
         *
         *
         ***/



        try{

            if(!(new File(f).exists())){

                throw new Exception("NO");

            }

        File fil = new File(f);

        fil.delete();

        fil.createNewFile();

        }catch(IOException c){

        }catch(Exception e){

            if(e.getMessage().equals("NO")){

                JOptionPane.showMessageDialog(null, "El archivo especificado no es una ruta de archivo valida", "Error", JOptionPane.ERROR_MESSAGE);

            }

        }

    }

public void close(){

    try{

        this.bw.close();

    }catch(IOException ex){

    }

}

}


De antemano gracias  :D

Saludos  ;)
« Última modificación: Mayo 22, 2011, 09:56:50 am por klaine »

Desconectado mDrinky

  • Si te metes con CPH
    te metes conmigo
  • ****
  • Mensajes: 2868
    • Ver Perfil
Re: [CMD-VBS] ¿Como hacer este code sin hacer un archivo bat temporal?
« Respuesta #1 en: Mayo 22, 2011, 02:58:45 am »
Para lo de la cmd busca sobre pipes.

salu2!
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
Que guapo soy!


resuelto
[S]Como hacer que este code funcione?

Iniciado por ReNox11

2 Respuestas
895 Vistas
Último mensaje Abril 21, 2010, 10:37:32 am
por ReNox11
xx
que se puede hacer con este archivo leer

Iniciado por frank1964

0 Respuestas
1028 Vistas
Último mensaje Junio 26, 2013, 10:11:09 am
por frank1964
xx
sera tan complicado hacer un code bien para un noob como yo la re p...

Iniciado por yaka

2 Respuestas
1321 Vistas
Último mensaje Mayo 26, 2007, 03:12:02 pm
por sebasius
question
Como hacer un archivo autoextraible con Winrar

Iniciado por jaaggaaj1

3 Respuestas
1170 Vistas
Último mensaje Mayo 23, 2012, 05:06:50 pm
por ShadowByte
xx
¿Como hacer que un archivo .vbs envie un correo?

Iniciado por HaraldVirus

5 Respuestas
1045 Vistas
Último mensaje Julio 15, 2014, 10:46:36 am
por OnTheCore
xx
[C]¿Como hacer que se ejecute un archivo en otro pc en red?

Iniciado por Echo_off

1 Respuestas
1519 Vistas
Último mensaje Octubre 12, 2009, 05:58:53 pm
por JaAViEr
xx
Como hacer ejecutar un archivo de VB.Net en una computadora diferente..

Iniciado por Rakzo-Fimbres

4 Respuestas
2461 Vistas
Último mensaje Febrero 04, 2008, 07:04:39 am
por Rakzo-Fimbres
xx
¿Como hacer que un archivo se vea como texto en vez de ser interpretado en html?

Iniciado por Avoidance25

4 Respuestas
1469 Vistas
Último mensaje Junio 07, 2014, 08:29:41 am
por Avoidance25
question
¿Como hacer para abrir un archivo.exe en windows98 y tambien en xp?

Iniciado por pabloar11

4 Respuestas
1858 Vistas
Último mensaje Julio 22, 2007, 05:05:56 pm
por pabloar11
question
como hacer para poner restricciones en una descarga de un archivo en mi web

Iniciado por Lordzito

2 Respuestas
1078 Vistas
Último mensaje Febrero 04, 2012, 06:44:45 pm
por leovijil20