可以用文件判断时差方式,搁一段时间对文件进行读写,将当前时间写入文件,当程序正常关闭的时候,可以删除这个文件,但是如果已经有程序在运行,再次打开的时候就需要和文件的时间比较时间差,如果时间差在指定范围内,则可以认为该程序已经在运行中。不让它启动,如果文件的时间和打开的时间差超过范围,则认为上次因为非法关闭。(断电等)让软件正常启动,至于这个时间差,你自己把握尺度,应该是个可行的办法。