title: NSIS $TEMP Has Different Value
body: <p>I have been noticed <strong>$TEMP</strong> param has different value when you:</p>
  
  <ul>
  <li>run the installer.exe manually (by double clicking)</li>
  <li>run from Application with Admin rights.</li>
  </ul>
  
  <p>Running manually will result $TEMP = <strong>C:/Users/username/AppData/Local/Temp</strong></p>
  
  <p>Running from App with Admin rights = <strong>C:/Windows/Temp</strong></p>
  
  <p><strong>CONDITION:</strong></p>
  
  <p>I have an installer that requires <em>system reboot</em> to finish the process.</p>
  
  <p>To achieve that, I make a copy of installer in the $TEMP, and put the path in <em>RunOnce</em></p>
  
  <p><strong>PROBLEM:</strong></p>
  
  <p>The function works fine (after reboot, the program is updated with new version).</p>
  
  <p>However, at the end of installation process, I am unable to delete the copy of installer because the $TEMP = <strong>C:/Users/username/AppData/Local/Temp</strong> when running the installer by <em>RunOnce</em>.</p>
  
  <p>In fact, the copy of installer is located in <strong>C:/Windows/Temp</strong></p>
  
  <p><strong>QUESTION:</strong></p>
  
  <p>Is it possible to force the $TEMP to always be = <strong>C:/Windows/Temp</strong> ?</p>
  
  <p>Is there any better solution to workaround the case of installation with system reboot?</p>