Timer + API 控制吧,直接的办法没有。
应该是难以实现的。
建议采取自定义的方式实现,比如弹出一个窗口,里面有一个进度条显示剩余时间,一个按钮执行操作,一个Timer控制进度条,走完即关闭继续执行原来的操作。
这样有很好的用户体验。
看我写的这篇吧
http://www.cnblogs.com/eaglet/archive/2009/07/24/1529920.html
当你使用了 messageBox的时候 其实是 把该线程句柄 给了这个控件。所以你下面的代码走不了。
而如果用子线程来搞定 这个MessageBox Show方法生成的小窗体 却没有引用。 所以直接是不可能做到的。
除非说你能 在某个子线程中 找到这个窗体的引用,那就好办了。
楼上的答案没有细看 ,不过如果是真的应该可以解决你的问题