Как использовать системный планировщик заданий в собственной программы?
У notepad запускается еще один экземпляр, который пинает (да-да, либо через сокет (что переносимо), либо через оконные сообщения) работающий экземпляр, потом закрывается.
Вам придется делать то же самое.
Первое, что пришло в голову:
1. Планировщик запускает программу с параметрами
2. Та проверяет есть ли уже запущенная копия программы и если есть - передаёт ей параметры любым удобным/кросплатформенным способом и завершает работу. Сами параметры уже обрабатывает запущенная ранее копия программы