Seu problema que independente de qual seja o form que ele estiver ele sair neh, eu faria assim:
1º - Em todo form eu colocaria tipo um label invisivel, no form keydow sempre que o usuario digitasse algo esse label receberia a hora atual.
2º - No form principal eu colocaria um timer, que a cada X minutos verificaria atravez do screen.activeform.label se o horario gravado nele é menor que a hora atual em 30 minutos ou mais, sendo, ele encerra sua aplicação.
Um abraço.