title: Software installation startup-script via GPO
body: <p>We would like to deploy a few applications to clients via GPO. The install packages are .exe and not .msi, hence we are not able to distribute via the normal "Computer Configuration\Policies\Software Settings\Software Installation" policy.</p>
  
  <p>Hence, we thought about using a startup script under "Computer Configuration\Policies\Windows Settings\Scripts\Startup". However, the software should only install once and not each startup. Hence, we thought that the results should be recorded in a text file, which is then read on startup and if the file exists, then don't install. At the moment our very basic script looks line this:</p>
  
  <pre><code>IF EXIST "c:\vcredist_2010_x86.txt" GOTO END
  IF EXIST "c:\vcredist_2010_x64.txt" GOTO END
  
  :32-bit
  if exist %SystemRoot%\SysWOW64 goto 64-bit
  \\servername\sharename\C++Redist\2010\vcredist_2010_x86.exe /passive /norestart
  echo "Microsoft Visual C++ 2010 Redistributable - x86" &gt; "c:\vcredist_2010_x86.txt"
  goto END
  
  :64-bit
  \\servername\sharename\C++Redist\2010\vcredist_2010_x64.exe /passive /norestart
  echo "Microsoft Visual C++ 2010 Redistributable - x64" &gt; "c:\vcredist_2010_x64.txt"
  
  :END
  </code></pre>
  
  <p>Works just fine, but we would like to refine it a little. Would be nice to have just 1 text file which is written to (i.e. c:\software-dist.txt) and per installation the relevant line (Software Name) be added to this file. On startup, the script should check to see if the line exists, if yes then don't install, if no then install the software.</p>