close terminal window

10 ビュー (過去 30 日間)
Steven
Steven 2011 年 11 月 7 日
編集済み: Martijn van Sluis 2018 年 2 月 15 日
Hi,
I make a program wich open the terminal window(C:\WINDOWS\system32\cmd.exe) at each time it's fired. I use it in a loop, so I got many useless terminal windows.
My question is : how to close a terminal window from matlab.
Greetings, Steven
  7 件のコメント
Titus Edelhofer
Titus Edelhofer 2011 年 11 月 7 日
Hi Steven,
O.K., I see. How do you call the other program (system? Using "!"?)
Titus
Steven
Steven 2011 年 11 月 7 日
I know it uses java socket, but I can't tell you really more for now, but go ahead with some ideas using system, I'm interested.

サインインしてコメントする。

採用された回答

Steven
Steven 2011 年 11 月 7 日
I got it, I thought matlab could do it by itself, but instead I modify the batch file of the program.

その他の回答 (3 件)

Fangjun Jiang
Fangjun Jiang 2011 年 11 月 7 日
Assume you run your MATLAB code as system('MyProgram.exe') and it brought up that ugly black window but never exits, you can do this:
system('MyProgram.exe < Exit.txt'), where Exit.txt is a text file you created ahead of time. The text file contains one line, which is 'exit' without both the single quotes.
  2 件のコメント
Steven
Steven 2011 年 11 月 7 日
It doesn't work, I got the following :
Microsoft Windows XP [version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\DA2191\Bureau\complexe_calib_MLEp\old>Plusÿ?
ans =
0
It like if I must add something to confirm (y/n) ?
Fangjun Jiang
Fangjun Jiang 2011 年 11 月 7 日
So, you are using system(), right? Maybe I should emphasize that the text file should contain the text "exit" and then a carriage return. As if you are doing it manually. In one of the open command window, if you type exit and then return, it will close the window, right?

サインインしてコメントする。


Steven
Steven 2011 年 11 月 7 日
Yes, if I type exit in the terminal, it close the windows.
  7 件のコメント
Fangjun Jiang
Fangjun Jiang 2011 年 11 月 7 日
I don't understand. You still have not answered the question how your program brought up the Cmd window. See this post yourself.
http://www.mathworks.com/matlabcentral/answers/19793-using-system-to-run-an-executable-outside-of-matlab
Fangjun Jiang
Fangjun Jiang 2011 年 12 月 20 日
It should be the less than sign "<", not the greater than sign ">"!!!

サインインしてコメントする。


Martijn van Sluis
Martijn van Sluis 2018 年 2 月 15 日
編集済み: Martijn van Sluis 2018 年 2 月 15 日
Perhaps not so elegant, but if you incorporate the following it works just fine:
keyInject('C:\Windows\system32\cmd.exe','exit','C:\Windows\system32\cmd.exe');
keyInject('C:\Windows\system32\cmd.exe','\r','C:\Windows\system32\cmd.exe');

カテゴリ

Help Center および File ExchangeInteractive Control and Callbacks についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by