title: Daylight Saving Time change with an absolute date
body: <p>I'm trying to implement correct DST adjustment handling in my alarm clock app. So I'm reading description for <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms724253%28v=vs.85%29.aspx" rel="nofollow noreferrer">DYNAMIC_TIME_ZONE_INFORMATION</a> that I use to retrieve the current DST adjustment information via the <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/bb540851%28v=vs.85%29.aspx" rel="nofollow noreferrer">GetTimeZoneInformationForYear</a> API, and it says the following:</p>
  <blockquote>
  <p><strong>DaylightDate</strong>:</p>
  <p>A <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms724950%28v=vs.85%29.aspx" rel="nofollow noreferrer">SYSTEMTIME</a> structure that contains a date and local
  time when the transition from standard time to daylight saving time
  occurs on this operating system. If the time zone does not support
  daylight saving time or if the caller needs to disable daylight saving
  time, the <strong>wMonth</strong> member in the SYSTEMTIME structure must be zero. If
  this date is specified, the StandardDate member in this structure must
  also be specified. Otherwise, the system assumes the time zone data is
  invalid and no changes will be applied. To select the correct day in
  the month, set the <strong>wYear</strong> member to zero, the <strong>wHour</strong> and <strong>wMinute</strong> members
  to the transition time, the <strong>wDayOfWeek</strong> member to the appropriate
  weekday, and the <strong>wDay</strong> member to indicate the occurrence of the day of
  the week within the month (1 to 5, where 5 indicates the final
  occurrence during the month if that day of the week does not occur 5
  times).</p>
  <p>If the <strong>wYear</strong> member is not zero, the transition date is
  absolute; it will only occur one time. Otherwise, it is a relative
  date that occurs yearly.</p>
  </blockquote>
  <p>I'm also checking the <a href="http://en.wikipedia.org/wiki/Daylight_saving_time_around_the_world_%28disambiguation%29" rel="nofollow noreferrer">current DST adjustments</a> observed all over the world, and if the relative DST adjustments seem pretty straightforward, I'm not exactly clear how the following adjustments could be conveyed via <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms724253%28v=vs.85%29.aspx" rel="nofollow noreferrer">DYNAMIC_TIME_ZONE_INFORMATION</a> -- with just an absolute month and a day.</p>
  <p>For instance:</p>
  <pre><code>Egypt
  -----
  DST Start: May 15
  DST End: Last Friday September
  </code></pre>
  <p>or this one:</p>
  <pre><code>Iran
  ----
  DST Start: March 21–22
  DST End: September 21–22
  </code></pre>
  <p>Does anyone know how to do this?</p>