Try this slight change:
 Code:
  Dim $_						; general purpose var
  Dim $_File						; working file name
  Dim $_Src						; source path to files

  $_Src = 'C:\cryptoin\'				; where the client files are written


  ; look for files
  $_File = Dir($_Src + '*.txt')			; read the first dir entry
  While Not @ERROR
    $gpg = '%COMSPEC% /c gpg -o c:\crypto_ftp_out\' + $_File + ' --encrypt ae7ca727 ' + $_Src + $_File
  $gpg ? ; DEBUG LINE
    shell $gpg
    Del $_Src + $_File				; then delete the source file
    $_File = Dir()					; read the next dir entry & repeat until done
  Loop							; continue until done

  Exit 0
There's no reason to set $_File to $CRYPTO (redundant) and you should not put the var inside the string. Also, no need to RedirectOutput because it seems that your gpg command string is writing to the destination folder.

I'd also check the result of the Shell command and only delete the file if the command was successful. I'd move the original file to a FAILED folder if the command did not succeed.

Glenn

_________________________
Actually I am a Rocket Scientist! \:D