To my knowledge the only way to do this (I have seen it done for pre-10 language settings and a citrix implementation) is to make a custom exe, that changes the registry first then launches ArcMap second and resets the registry value. This is more or less what I am doing now, users want to launch arcmap from another application so I have the opportunity to change the registry key before I do.