Ben bezig met een programma en het aansturen van cmd.exe werkt nu uitstekend door middel van de InputStreamReader en bijbehorende klassen/methoden zoals de getErrorStream() en getInputStream(). In ieder geval dat werkt perfect. Doet wat het moet doen namelijk cmd.exe aansturen. Ik stuur er dan gewoon commands naartoe zoals je ook doet in de normale cmd.exe. Bv dir. Nu ik een commando stuur wat een extern process gaat runnen zoals x264.exe om video te encoderen. Zodra ik mijn java applicatie sluit loopt het process door omdat het gestart is. In de normale cmd.exe kan ik dan Ctrl+C doen om het huidig process binnen cmd.exe te killen/te stoppen. Maar vanuit java kan ik geen Ctrl+C sturen naar cmd.exe??? In ieder geval ik krijg het niet voor elkaar cq zou niet weten hoe het probleem te tackelen. Via google heb ik volgend stuk code gevonden maar weet niet precies wat het doet en weet niet echt hoe ik dat moet implementeren:
Runtime.getRuntime().addShutdownHook(new Thread()
{
public void run()
{
cleanUp();
}
};
Dit lijkt me niet echt het gewenste resultaat te geven. De bedoeling is dus dat als ik de applicatie sluit de draaiende processen binnen cmd te killen. Cmd zelf word al gesloten uiteraard. Maar omdat het extern process door blijft draaien is dat dus niet zo handig. Tevens maak ik er een knopje bij om het draaiende process te killen. Wie kan me verder helpen?
Runtime.getRuntime().addShutdownHook(new Thread()
{
public void run()
{
cleanUp();
}
};
Dit lijkt me niet echt het gewenste resultaat te geven. De bedoeling is dus dat als ik de applicatie sluit de draaiende processen binnen cmd te killen. Cmd zelf word al gesloten uiteraard. Maar omdat het extern process door blijft draaien is dat dus niet zo handig. Tevens maak ik er een knopje bij om het draaiende process te killen. Wie kan me verder helpen?
Ruisende versterker: schakel je subwoofer in.