DOS Window in Java Container

If anybody knows how, I'd appreciate any suggestions on how to present an Interactive DOS window in a JAVA SWING container.

The escape code approach would only work on DOS windows that are processing ANSI escape sequences. This is something people used to enable all the time back in the pre-Windows days, since it was the only way to do things like clearing screens, setting colours, drawing menus out of text characters, etc. Ansi.sys still exists, at least on Win98 (not sure about NT, 2000, etc.). If you troll through the Microsoft web site or hunt down old books on DOS, you'll be able to find out how to set it up and use it.

Similar Messages

  • Clearing the DOS Window in Java

    hi
    I want to clear the dos screen using java.
    I saw 2 solutions on the net(given below) , but both did not work. Can someone advise how I can go about doing this ? I'm
    working on Windows2000.
    Thanks in advance.
    Seema
    1. char esc = 27; // ESC code
    String clear = esc + "[2J" // note case
    System.out.print(clear); // Dos screen should be cleared
    2. Runtime.getRuntime().exec( "cmd.exe /c cls" ) ;

    The escape code approach would only work on DOS windows that are processing ANSI escape sequences. This is something people used to enable all the time back in the pre-Windows days, since it was the only way to do things like clearing screens, setting colours, drawing menus out of text characters, etc. Ansi.sys still exists, at least on Win98 (not sure about NT, 2000, etc.). If you troll through the Microsoft web site or hunt down old books on DOS, you'll be able to find out how to set it up and use it.

  • Getting rid of Dos Window during "java" call

    Hi All
    I am trying to execute a batch file in windows which internally calls a "java" class file. while executing the class file the batch file launches a dos window in the backgroud..can anyone please tell me how to get rid of that dos window
    Thanks in Advance.
    Regards
    Kiran.R

    Instead of using java command in your batch file, change it to use javaw instead.
    V.V.

  • Clearing MS-DOS window in Java?

    I was reading a previously posted topic ,
    http://forum.java.sun.com/thread.jsp?forum=54&thread=98626
    and tried writing the line:
    System.out.print("\033[2J");
    It didn't work, all it did was print out a arrow with [2J beside it?
    Could anyone tell me what I am doing wrong?
    Thanks,
    CC_Flyer

    Yeah, you probably don't have ansi.sys in the right spot.

  • Invoke command in new dos window

    is there any way that i can invoke a command in a new dos window from java application?
    such as
    runtime.exec("dir");
    it will open another dos window, and run dir in it.
    thanks

    it will open another dos window, and run dir in it.This works for me (win 2000):
    Runtime.getRuntime().exec("cmd /c start dir");

  • Opening a dos window

    how can i open a dos window from java and putting a code in it to run?
    thnaks in advance
    peleg

    Hi,
    No. You can't do it in a platform independent way. But you can open a shell on linux/unix, so you have to first detect OS, and then execute the correct method.
    /Kaj

  • Executing a dos command from java in windows nt

    i need to execute the
    " net send"
    command from the command line in windows nt, from within my java program... is there any way that i can execute cmommands in the dos command shell? or rather, does anybody know a way i can send a message ( in windows ) from java, from one computer to another over the lan?? I cannot have a java programming running on all the other computers, so i cannot make my program serve, it must just send the messges using a lan command....
    (the net send command just sends a message in the form of a pop up box on the receiver's screeen)
    thanks a bunch guys!!!
    Thanks a bunch guys!!!!

    you can do that with exec() in Runtime.
    Runtime rt = Runtime.getRuntime();
    Process proc = rt.exec(command here);but before you do that you need to read this:
    http://www.javaworld.com/jw-12-2000/jw-1229-traps.html
    hth
    partha

  • Running java fro DOS windows

    Hi, can somebody tell me how to run java files from the DOS window, in windows??? thanks

    joej wrote:
    ok, thanx, i did and i found i should write this javac javafile.java, but when i did i got this error "javac is not recognized as an internal or external command, operable program or batch file, what does that mean or what could it be causing it?In the dos-shell, when you type "javac" or any other commands, the shell searches it's available path for the command. In this case, "javac" was not included as part of the path that the does shell searches and therefore it returned that error.
    Go to google and search for how to add javac to source path.

  • Hide MS-DOS window when running java

    I'd like to know i can hide the MS-DOS window when i am running my program.
    I try this in file.bat, but it doesn't work.
    file.bat:
    javaw myProgram
    exit
    any ideas?
    thank you.

    Well, your method works for me.
    You can trycall javaw YourProgram
    exitas well, but I doubt if it will make any difference.
    Kind regards,
      Levi

  • Problem while running dos command from java program

    Dear friends,
    I need to terminate a running jar file from my java program which is running in the windows os.
    For that i have an dos command to find process id of java program and kill by using tskill command.
    Command to find process id is,
    wmic /output:ProcessList.txt process where "name='java.exe'" get commandline,processid
    This command gives the ProcessList.txt file and it contains the processid. I have to read this file to find the processid.
    when i execute this command in dos prompt, it gives the processid in the ProcessList.txt file. But when i execute the same command in java program it keeps running mode only.
    Code to run this command is,
    public class KillProcess {
         public static void main(String args[]) {
              KillProcess kProcess = new KillProcess();
              kProcess.getRunningProcess();
              kProcess = new KillProcess();
              kProcess.readProcessFile();
         public void getRunningProcess() {
              String cmd = "wmic /output:ProcessList.txt process where \"name='java.exe'\" get commandline,processid";
              try {
                   Runtime run = Runtime.getRuntime();
                   Process process = run.exec(cmd);
                   int i = process.waitFor();
                   String s = null;
                   if(i==0) {
                        BufferedReader stdInput = new BufferedReader(new
                               InputStreamReader(process.getInputStream()));
                        while ((s = stdInput.readLine()) != null) {
                         System.out.println("--> "+s);
                   } else {
                        BufferedReader stdError = new BufferedReader(new
                               InputStreamReader(process.getErrorStream()));
                        while ((s = stdError.readLine()) != null) {
                         System.out.println("====> "+ s);
                   System.out.println("Running process End....");
              } catch(Exception e) {
                   e.printStackTrace();
         public String readProcessFile() {
              System.out.println("Read Process File...");
              File file = null;
              FileInputStream fis = null;
              BufferedReader br = null;
              String pixieLoc = "";
              try {
                   file = new File("ProcessList.txt");
                   if (file.exists() && file.length() > 0) {
                        fis = new FileInputStream(file);
                        br = new BufferedReader(new InputStreamReader(fis, "UTF-16"));
                        String line;
                        while((line = br.readLine()) != null)  {
                             System.out.println(line);
                   } else {
                        System.out.println("No such file");
              } catch (Exception e) {
                   e.printStackTrace();
              return pixieLoc;
    }     when i remove the process.waitFor(), then while reading the ProcessList.txt file, it says "No such file".
    if i give process.waitFor(), then it's in running mode and program is not completed.
    Colud anyone please tell me how to handle this situation?
    or Is there anyother way to kill the one running process in windows from java program?
    Thanks in advance,
    Sathish

    Hi masijade,
    The modified code is,
    class StreamGobbler extends Thread
        InputStream is;
        String type;
        StreamGobbler(InputStream is, String type)
            this.is = is;
            this.type = type;
        public void run()
            try
                InputStreamReader isr = new InputStreamReader(is, "UTF-16");
                BufferedReader br = new BufferedReader(isr);
                String line=null;
                while ( (line = br.readLine()) != null)
                    System.out.println(type + ">" + line);
                } catch (IOException ioe)
                    ioe.printStackTrace(); 
    public class GoodWindowsExec
        public static void main(String args[])
            try
                String osName = System.getProperty("os.name" );
                String[] cmd = new String[3];
                 if( osName.equals( "Windows 95" ) )
                    cmd[0] = "command.com" ;
                    cmd[1] = "/C" ;
                    cmd[2] = "wmic process where \"name='java.exe'\" get commandline,processid";
                } else {
                    cmd[0] = "cmd.exe" ;
                    cmd[1] = "/C" ;
                    cmd[2] = "wmic process where \"name='java.exe'\" get commandline,processid";
                Runtime rt = Runtime.getRuntime();
                System.out.println("Execing " + cmd[0] + " " + cmd[1]
                                   + " " + cmd[2]);
                Process proc = rt.exec(cmd);
                System.out.println("Executing.......");
                // any error message?
                StreamGobbler errorGobbler = new
                    StreamGobbler(proc.getErrorStream(), "ERROR");           
                          // any output?
              StreamGobbler outputGobbler = new
                    StreamGobbler(proc.getInputStream(), "OUTPUT");
                          // kick them off
                errorGobbler.start();
                outputGobbler.start();
                // any error???
                int exitVal = proc.waitFor();
                System.out.println("ExitValue: " + exitVal);       
            } catch (Throwable t)
                t.printStackTrace();
    }when i execute the above code, i got output as,
    Execing cmd.exe /C wmic process where "name='java.exe'" get commandline,processid
    and keeps in running mode only.
    If i execute the same command in dos prompt,
    CommandLine
    ProcessId
    java -classpath ./../lib/StartApp.jar;./../lib; com.abc.middle.startapp.StartAPP  2468
    If i modify the command as,
    cmd.exe /C wmic process where "name='java.exe'" get commandline,processid  > 123.txt
    and keeps in running mode only.
    If i open the file when program in running mode, no contents in that file.
    If i terminte the program and if i open the file, then i find the processid in that file.
    Can you help me to solve this issue?

  • DOS Window appearing

    Hi ! I was wondering if it is possible, either by settings or through code, to make the DOS window invisible or minimized when a Java application is run. I prefer if this could be done programmatically.
    Thanks for any help on this.

    the most common way, short of an executable jar file, is to create a batch file to run the java application using the javaw command.
    example:
    Say your main class file is called Foo.class.
    You batch file is call Foo.bat, and contains the fallowing line:
    javaw Foo
    now double click on the batch file and your java application runs without the command prompt.
    *note: javaw has the same command line options/arguments as normal 'java' does.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • How can I read ALL the compilation errors in a DOS window?

    On compilation using a DOS window, if the number of errors exceeds the window size, some of the errors disappear off the top of the window and I cannot read them.
    Is there an effective solution to somehow use scrolling of the DOS window or transfer the compilation errors to a file?

    Hey buddy,
    When I first started programming with Java, I wondered the same thing. I have the very best solution for you. This one is waaay easy!!!!
    There is a text editor which will not only color code your text for you, but you can easily configure it to give you the compiler /DOS output for Java. Just go to this website and download the program. Enjoy!
    http://www.textpad.com/

  • Adding a window to a container: Error

    Hello there,
    Im facing a problem with my program.My program is about a Car Rental System and I am using GUI for the interface. From the main(CarRental) program,when user click one of the menu, there is another interface will appear for user to enter details.The problem is,my main (CarRental)program is running,click the first menu,then another interface open,but wen user enter details n click buttons , it is not even working. Below is my program:
    //This is main menu program
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.sql.*;
    import javax.swing.JFrame;
    public class CarRental extends JFrame implements ActionListener{
         JFrame f;
         JLabel l1,l2,l3,choice;
         JPanel p1,p2,p3,p4,p5,p6,p7,p8,p9;
         JButton btnA,btnB,btnC,btnD,btnE,btnF;
         Connection conn;
         Statement stmt;
         ResultSet rs;
         public CarRental(){
              p1=new JPanel();p2=new JPanel();p3=new JPanel();
              p4=new JPanel();p5=new JPanel();p6=new JPanel();
              p7=new JPanel();p8=new JPanel();p9=new JPanel();
              f=new JFrame("New Rental Record");
              l1=new JLabel("........::: Car Rental System :::.........");
              l2=new JLabel("*******************************************************");
              choice=new JLabel("Please select your option:");
              btnA=new JButton("[1] New Rental Record");
              btnB=new JButton("[2] Update Rental Record");
              btnC=new JButton("[3] Search Rental Record");
              btnD=new JButton("[4] Delete Rental Record");
              btnE=new JButton("[5] Display Rental record");
              btnF=new JButton("[6] Exit");
              l3=new JLabel("*******************************************************");
              f.setLayout(new GridLayout(10,1));
              f.pack();
              f.setVisible(true);
              f.setSize(350,500);
              f.setBackground(Color.white);
              p1.add(l1);f.add(p1);
              p2.add(l2);f.add(p2);
              p3.add(choice);f.add(p3);
              p4.add(btnA);f.add(p4);
              p5.add(btnB);f.add(p5);
              p6.add(btnC);f.add(p6);
              p7.add(btnD);f.add(p7);
              p8.add(btnE);f.add(p8);
              p9.add(btnF);f.add(p9);
              btnA.addActionListener(this);
              btnB.addActionListener(this);
              btnC.addActionListener(this);
              btnD.addActionListener(this);
              btnE.addActionListener(this);
              btnF.addActionListener(this);
         f.addWindowListener(new WindowAdapter(){
                   public void windowClosing(WindowEvent e)
                        {System.exit(0);}});
              public void actionPerformed(ActionEvent e){
                        if(e.getSource()== btnA)
                        {     NewRecord nr=new NewRecord();}
                         else if(e.getSource()== btnB)
                        {     updateRecord ur=new updateRecord();}
                        else if(e.getSource()== btnC)
                        {     searchRecord sr=new searchRecord(); }
                        else if(e.getSource()== btnD)
                        {     deleteRecord dr=new deleteRecord(); }
                        else if(e.getSource()== btnE){
                             try{
                                  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                             catch(ClassNotFoundException e3) {
                                  JOptionPane.showMessageDialog(null,"ERROR:"+e3.getMessage());
                             try{
                                  conn=DriverManager.getConnection("Jdbc:Odbc:Car Rental", "", "");
                                  stmt=conn.createStatement();
                                  rs=stmt.executeQuery("Select * from Customer where CustID");
    String s=("CustID:   CustName:    CustAdd:          CustPhone:       No.of days rent:     Rate per rental: \n");
    while(rs.next())
    s=s+rs.getString(1)+"             "+rs.getString(2)+"              "+rs.getString(3)+"              "+rs.getString(4)+"                    "+rs.getString(5)+"                     "+rs.getString(6)+"\n";
                                       JOptionPane.showMessageDialog(null,s);}
    catch(SQLException e4){e4.printStackTrace();}}//end of F
    //to exit the program                    
    else if(e.getSource()== btnF){
    JOptionPane.showMessageDialog(null,"Thank you");System.exit(0);}
    else
    JOptionPane.showMessageDialog(null,"Invalid Option!");System.exit(0);
                   }//end of if statement
    public static void main(String args[]){
              CarRental cr= new CarRental();}//end of main
    }//end of main menu
    //New Rental program when user selects it
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.sql.*;
    public class NewRecord extends JFrame implements ActionListener{
         JFrame f;
         Container c;
         FlowLayout layout;
         JLabel l1,l2,custId,custName,custAdd,custPhone,dayRent,rateRent;
    JTextField tid,tname,tphone,tday,trate;
                                  JTextArea tadd;
                                  JButton save,clear,exit;
                                  Connection conn;
                                  Statement stmt;
                                  ResultSet rs;
                                  JPanel p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11;
                             public NewRecord(){
                                //super("New Record");
                                  layout = new FlowLayout();
                                  c=getContentPane();
                                  c.setLayout(layout);
                                  p1=new JPanel();p2=new JPanel();p3=new JPanel();
                                  p4=new JPanel();p5=new JPanel();p6=new JPanel();
                                  p7=new JPanel();p8=new JPanel();p9=new JPanel();
                                  p10=new JPanel();p11=new JPanel();
                                  f=new JFrame();     
                                  l1=new JLabel("........::: New Rental Record :::.........");
                                  l2=new JLabel("*******************************************************");
                                  custId =new JLabel("Customer ID:");
                                  custName=new JLabel("Customer name:");
                                  custAdd=new JLabel("Customer address:");
                                  custPhone=new JLabel("Customer phone:");
                                  dayRent=new JLabel("Days of rental:");
                                  rateRent=new JLabel("Rate per rental:");
                                  tid= new JTextField(10);
                                  tname=new JTextField(10);
                                  tphone=new JTextField(10);
                                  tadd=new JTextArea(4,30);
                                  tday=new JTextField(5);
                                  trate=new JTextField(10);
                                  save=new JButton("SAVE");
                                  clear=new JButton("CLEAR");
                                  exit=new JButton("EXIT");
                                  f.setLayout(new GridLayout(11,1));
                                  f.setBackground(Color.white);
                                  f.setVisible(true);
                                  f.setSize(600,600);
                                  p1.add(l1);f.add(p1);
                                  p2.add(l2);f.add(p2);
                                  p3.add(custId);p3.add(tid);f.add(p3);     
                                  p4.add(custName);p4.add(tname);f.add(p4);
                                  p5.add(custAdd);p5.add(tadd);f.add(p5);
                                  p6.add(custPhone);p6.add(tphone);f.add(p6);                         
                                  p7.add(dayRent);p7.add(tday);f.add(p7);
                                  p8.add(rateRent);p8.add(trate);f.add(p8);
                                  p9.add(save);f.add(p9);
                                  p10.add(clear);f.add(p10);
                                  p11.add(exit);f.add(p11);
                             /*     f.add(l1);
                                  f.add(l2);
                                  f.add(custId);
                                  f.add(tid);
                                  f.add(custName);
                                  f.add(tname);
                                  f.add(custAdd);
                                  f.add(tadd);
                                  f.add(custPhone);
                                  f.add(tphone);
                                  f.add(dayRent);
                                  f.add(tday);
                                  f.add(rateRent);
                                  f.add(trate);
                                  f.add(save);
                                  f.add(clear);
                                  f.add(exit);*/
                                  c.add(f);
                                  save.addActionListener(this);
                                  clear.addActionListener(this);
                                  exit.addActionListener(this);
                                  f.addWindowListener(new WindowAdapter(){
                                  public void windowClosing(WindowEvent e)
                                       {System.exit(0);}});
                             public void actionPerformed(ActionEvent e){
                                  if(e.getSource()== exit)
                                       {System.exit(0);}
                                  if(e.getSource()== clear){
                                       tid.setText("");
                                       tname.setText("");
                                       tadd.setText("");
                                       tphone.setText("");
                                       tday.setText("");
                                       trate.setText("");}
                                  if(e.getSource()== save){
                                       try{
                                            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                                       catch(ClassNotFoundException e1) {
                                            JOptionPane.showMessageDialog(null,"ERROR:"+e1.getMessage());
                                       try{
                                            conn=DriverManager.getConnection("Jdbc:Odbc:Car Rental", "", "");
                                            stmt=conn.createStatement();
                                            rs=stmt.executeQuery("Select * from Customer");
                                            while(rs.next()){
                                            tid.setText(rs.getString(1));
                                            tname.setText(rs.getString(2));
                                            tadd.setText(rs.getString(3));
                                            tphone.setText(rs.getString(4));
                                            tday.setText(rs.getString(5));
                                            trate.setText(rs.getString(6));}
                                            String s=("CustID:   CustName:    CustAdd:          CustPhone:       No.of days rent:     Rate per rental: \n");
                                            while(rs.next())
                                            s=s+rs.getString(1)+"             "+rs.getString(2)+"              "+rs.getString(3)+"              "+rs.getString(4)+"                    "+rs.getString(5)+"                     "+rs.getString(6)+"\n";
                                                 JOptionPane.showMessageDialog(null,s);
                                       catch(SQLException e2){
                                                 e2.printStackTrace();
                             public static void main(String args[]){
                                       NewRecord nr=new NewRecord();
                                  //     nr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                                       }//end of newRecord class
                                  }//ends of New rental program
    I tried to use extending to JPanel or JApplet but still the same. Any help??

    Hi,
    In the NewRecord java file, use change the
    f = new JFrame();               
    c = f.getContentPane();, after that all panel add into the container
    p1.add(l1);c.add(p1);                    
    p2.add(l2);c.add(p2);
    p3.add(custId);p3.add(tid);c.add(p3);     
    p4.add(custName);p4.add(tname);c.add(p4);
    p5.add(custAdd);p5.add(tadd);c.add(p5);
    p6.add(custPhone);p6.add(tphone);c.add(p6);          
    p7.add(dayRent);p7.add(tday);c.add(p7);
    p8.add(rateRent);p8.add(trate);c.add(p8);
    p9.add(save);c.add(p9);
    p10.add(clear);c.add(p10);
    p11.add(exit);c.add(p11);and finally remove this line below
    //c.add(f);Try to avoid add frame into the container, or else you will receive adding a window to a container error.
    Rgrds,
    Sen
    Message was edited by:
    arjensen

  • How would I print information to a DOS window?

    Ok so I can get the DOS window running by using this code:
          try{
                       Runtime rt = Runtime.getRuntime();
                       Process child = rt.exec("cmd.exe /c start cmd.exe");
                       child.waitFor();
                   }catch(IOException io){}
                   catch(InterruptedException e) {}but I want to print the information from this code:
    StringBuffer objectString = new StringBuffer("");
    ////some code here//////
    objectString = new StringBuffer(("Customer:\t\t" + customerName + "\n"
                               + "Departure Date:\t" + departureDate + "\n"
                               + "Return Date:\t" + _returnDate));
    ////some code here/////
    objectString.append("\nAirline:\t\t" + airlineBG.getSelection().getActionCommand());
    objectString.append("\nDestination:\t" + destinationBG.getSelection().getActionCommand());
    /////more code. yay//////
    objectString.append("\nPrice:\t\t" + price);
    objectString.append("\nTicket Bought. Have a safe flight!");
    System.out.print(objectString.toString());//print string bufferso how would I print objectString to the DOS window?
    Note: opening the DOS window is in the constructor for the JFrame I am using while printing the StringBuffer is in the actionPerformed implementation.

    masijade. wrote:
    deadmanwalkin wrote:
    no, the program im supposed to be making asks to print ticket information to a DOS window.
    I might have interpreted it wrong and it could be just start from a DOS window using the java File commandWell, study your assignment text. If it does not explicitly state that you must programmatically open a new "DOS window", then simply print your output using System.out.println().Unless he's running Windows 95 still he can't even open a DOS window as there's no more DOS ;)

  • Starting command line exec without dos window...

    I'm trying to start a console window application under my java swing application with the Runtime.exec(cmd) function.
    A dos window appear during the execution of the application. How to remove the screen echo ?
    Thanks
    SEB

    Hi ollie lord and thank you for your suggestion.
    I tried to use a *.bat file instead but the result was the same. I tried to use the word "start" in the command but nothing more.
    My .bat file is simple:
    start myprogram or myprogram
    ...where myprogram.exe is a win32 console application from Visual C++.
    Is there any option in function Main() in C++ to remove the dos console ?
    I head about the JNI tech. Is it a solution ?
    Thanks
    SEB

Maybe you are looking for

  • Cant share photos by email

    hello my name is emily and i need HELP iwent to the share button to email a photo and a box appeared telling me to enter my sever that way i could email photos, so i entered what i thought was right which was http, well it wasnt right, it would not e

  • I'm trying to get Adobe Bridge CC on my MacBook Pro.

    I've done the download and install step but when I go to open it, a pop up appears that states, "Adobe Bridge CC cannot be opened because of a problem." My computer is up to date, and my Adobe is up to date so I don't understand what the problem is.

  • How can I add password protection to a Pages document on the iPad?

    Is there any way to add password protection to a Pages document on the iPad? 

  • Ipod freeze

    my ipod pauses during playback. i'm not hitting the click wheel. it does it locked or unlocked. it just goes right to pause, i hit play, five seconds later, to pause again. what is the deal and how do i fix it.

  • Error while system copy export

    Dear all, While system copy in export  part we are getting following error.  Sorry for not able to paste in proper format. OS :-HPUX 11.23 Database :- oracle 10g Execution of the command "/opt/java1.4/bin/java -classpath /tmp/sapinst_exe.27996.126355