title: Powershell - SaveAs function when file already exists
body: <p>I'm trying to run some code that looks for all .doc &amp; .docx files in a directory &amp; sub-directories and then converts each one to PDF format. </p>
  
  <p>The code below works only if there are no instances of the pdf in these directories i.e. it only works first time. Every subsequent time it fails with:</p>
  
  <blockquote>
    <p>Exception calling "SaveAs" with "2" argument(s): "Command failed"
    At C:\convert\convertword.ps1:12 char:13
    +  $doc.saveas &lt;&lt;&lt;&lt; ($path, $wdFormatPDF)
        + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
        + FullyQualifiedErrorId : ComMethodTargetInvocation</p>
  </blockquote>
  
  <p>When I delete the previously created PDFs and re-run the PS it works fine. Therefore I can only assume there is a switch or parameter that I'm missing from my <code>SaveAs</code> function which somehow forces the overwrite?</p>
  
  <pre><code>$wdFormatPDF = 17
  $word = New-Object -ComObject word.application
  $word.visible = $false
  $folderpath = "c:\convert\*"
  $fileTypes = "*.docx","*doc"
  Get-ChildItem -path $folderpath -recurse -include $fileTypes |
  foreach-object `
  {
  $path =  ($_.fullname).substring(0,($_.FullName).lastindexOf("."))
  "Converting $path to pdf ..."
  $doc = $word.documents.open($_.fullname)
  $doc.saveas($path, $wdFormatPDF) 
  $doc.close()
  }
  $word.Quit()
  </code></pre>