Puedes manejar el Registro de Windows y ahi crear la Clave de tu programa que contendra los registros que quieras incluyendo el numero de ejecuciones. Si el numero se rebasa puedes hacer que se termine la aplicacion, que no tenga X funcion o que lo borre usando otro archivo como un script o un bat.
Otra manera es manejando las fechas en lugar de el numero de ejecucione, que es de hecho lo que buscas ya que si usas esto:
Crea un arhivo de texto y guarda "1". Cada vez que abras el programa comprobará si es menor que 30. Si es mayor el programa se cerrará. Cada día que pase le sumas 1.
y ejecutan 5 veces en un dia tu programa, no dura los 30 dias que pides. En el foro hay muchos post del Registro de Windows en Visual Basic, usando el Windows Script Host Object Model.