com_ptr
pub fn hresult<T>(obj: T, res: HRESULT) -> Result<T, HResult>
Returns a object when success.
If res is success, returns a object. OtherWise, returns a HResult object.
res