在进程上使用 waitFor 命令时遇到问题。我的代码是这样的
//preconditions
try{
// lock the work station
Process p= Runtime.getRuntime().exec("C:\\Windows\\System32\\rundll32.exe user32.dll,LockWorkStation");
int exitval=p.waitFor();
// If the authentication is successful
if(exitval==0)
{
//statements to insert into database
}
}
catch(IOException e)
{
e.printStackTrace();
}
catch (InterruptedException e) {
e.printStackTrace();
}
该过程很好地锁定了屏幕,但它在用户真正能够使用退出值“0”进行身份验证之前退出,并且程序正在将语句插入我的数据库中。我希望该过程等到用户成功通过身份验证,然后将我的数据插入数据库。我已经用谷歌搜索了很多没有任何成功。我应该使用不同的过程来锁定屏幕吗?