title: Setting dynamicly a property of an object containing datetime
body: <p>I have a bunch of different methods for creating, calling and setting properties of different objects using Delphi's RTTI. But now I have come to an error where setting a <code>TDateTime</code> triggers an error like: "Cannot convert variant into double". Google doesn't help when searching for this error. </p>
  
  <p>So far, I'm defining an object of any type, for example: </p>
  
  <pre><code>TExample = class
  private
    FDateField : TDateTime;
  published
    property DateField : TDateTime read FDateField write FDateField;
  end;
  </code></pre>
  
  <p>I'm then putting this object in a <code>TObjectList</code>, and then looping some internal logic that's not really relevant to the problem. But when I come to the <code>DateField</code> property, it triggers the error. I'm trying to set it like this:        </p>
  
  <pre><code>objPropValue := '12/02/2018 12:25:00';
  objPropName := 'DateField';
  if IsPublishedProp(parameterObject, objPropName) then
  begin
    SetPropValue(parameterObject, objPropName, objPropValue); &lt;- doesn't work on DateField
  end;
  </code></pre>
  
  <p>This is only a hardcoded example, the <code>objPropValue</code> and <code>Name</code> are set in a loop and can be of any other type. I tried different formatting as well, but I can't seem to find the correct way to do this.</p>