So after some mush needed sleep...I began to rethink my approach...tried some thing new(thanks to every ones help)
you can just pass the arguments directly to the registry using RegSetValueEx(). I didnt even know it was possible to start a console app that needed arguments by including those arguments in the registry data string...I feel like an idiot.

would this be a better solution?