title: Inno Setup Call AfterInstall for each external File
body: <p>I am really struggling with this one.  I have an entry in the files section of an Inno Setup (5.5.9) configuration file, that is something like the following:</p>
  
  <pre class="lang-pascal prettyprint-override"><code>[Code]
  procedure showMsgBoxOfFile;
  begin
    MsgBox(ExpandConstant(CurrentFilename), mbInformation, MB_OK);
  end;
  </code></pre>
  
  <pre class="lang-none prettyprint-override"><code>[Files]
  Source: {src}\Some\Path\myFile*Pattern.ext; DestDir: {app}; Flags: external; \
      AfterInstall: showMsgBoxOfFile;
  </code></pre>
  
  <p>When I run the installer generated by running the above script, I get a single message box with the <code>{app}</code> directory, even though four files are copied.  This seems to be in direct contradiction of the <a href="http://www.jrsoftware.org/ishelp/index.php?topic=scriptinstall" rel="nofollow noreferrer">Inno Setup documentation on BeforeInstall/AfterInstall</a>, which states:</p>
  
  <blockquote>
    <p>A BeforeInstall or AfterInstall function for a [Files] section entry using a wildcard is called once per file matching the wildcard. Use CurrentFileName to check for which file the function is called.</p>
  </blockquote>
  
  <p>Further, another question on <a href="https://stackoverflow.com/questions/20248324/inno-setup-afterinstall-function-called-for-each-file">Stack Overflow</a> is from a user who wanted to do the exact opposite (get only one notification when multiple files were changed).  The accepted answer to that question indicates that:</p>
  
  <blockquote>
    <p>there is no way to call [AfterInstall] once after all the files are installed</p>
  </blockquote>
  
  <p>I noticed that if I remove the "external" flag from my file copy, I DO get one message box per file.  Is there a way to get a one notification per copied file when the "external" flag is specified?  Does anyone know if there is a plan to document this difference in the Inno Setup help files?</p>