The command-line switches for Time Estimate and Time Spent (-te and -ts) reset the field value to Hours as they set the value. I believe that's a bug.
There is no provision for setting the units from a switch. For completeness, not my immediate need, I'm hoping units can be added to that as well - something like this which combines elements from a couple code modules:
if (cmdInfo.GetOption(SWITCH_TASKTIMEEST, sValue)) { TCHAR nUnits = GetTimeUnits(sValue, 0); if (nUnits) dTimeEstUnits = nUnits; else { // if not, leave units at current setting } dTimeEst = _ttof(sValue); }