Hi Stephanie,
From looking at your code, it seems like you are using Alarm&Event Query, which queries active alarms in the database, whereas the Acknowledge Alarms acknowledges alarms that are still in the shared variable engine, which in a case of improper shutdown, those alarms are no longer in the shared variable engine, but still in the database.
I think what Robert meant was to use destructive archieving to delete unwanted alarms from your database. You can use Alarm & Event Archive.vi, and create a control for the filter for the conditions of alarms you want to delete out of the database, and then make sure archived data is deleted and archive the data into a dummy archive.
Yi Y.
Applications Engineer
National Instruments
http://www.ni.com/support