Предполагая, что exe, который вы запускаете, фактически является вашим сервисом, это неправильный способ сделать это.
Диспетчер управления службами Windows (SCM) фактически вызывает EXE-файл вашей службы через определенные точки входа - вам необходимо предоставить логику, чтобы сделать то, что требуется вашей конкретной службе в этих точках входа, включая уведомление SCM об изменениях состояния вашей службы. (ОСТАНОВЛЕН-> РАБОТАЕТ, РАБОТАЕТ-> ОСТАНОВЛЕН и т. Д.).
Прочтите справочную информацию о MSDN, начиная с здесь , чтобы уточнить, что вы должны предоставить. Обратите внимание, что OnStart
относится к реализации Services в управляемом коде, вы не будете делать это в Visual C ++. Возможно, C # будет более простым маршрутом?