Your script is not "permanently running" - it runs until an error occurs or no filename is returned. What you need instead is a permanent loop - here's a simple example:
 Code:
$Path = 'C:\logfolder\'
$FileSpec = $Path + '*.log'

While 1 ; loop forever
 ; look for files
 $File = Dir($FileSpec)
 ; do stuff if we have files
 If $File
  ; loop here for all the files
  While Not @ERROR
   Move $Path + $File 'D:\LogArchive\'
   $File = Dir()
  Loop ; end of file process loop - error thrown when no more files
 EndIf

 ; Now wait a little while before checking again to reduce overhead
 Sleep 15 ; 15 to 120 seconds, depending on frequency & quantity of new files

Loop ; end of Loop Forever

The article in the "script vault" that illustrates exactly how to look for files, and run Kix as a service. I use this method and have many Kix based services running constantly.

Glenn

PS - this is an untested example to illustrate the difference between looping forever in the outer loop and looping while files are present in the inner loop.
_________________________
Actually I am a Rocket Scientist! \:D