I need to build a windows server side application that will be responsible for receiving large files and process them (the process action will take around 3 hours).
Can someone tell me what’s the best approach in a case like this (windows service probably) and in that case, how to tell the service that a new file is available for processing?
ps: the process action cannot be parallel processing
edit: After looking to some answers, I’ll try to rephrase the problem. The upload part is already working. My problem is I have to run an algorithm over the file after the upload. This algorithm takes aroud 3 hours to process a single file. I want to ensure that the files to process are stored somewhere (in memory, on a db, it really doesn’t matter where) and it will only analyze the next one when the previous one finish.
I ended up with a console application that when it’s idle (not processing any file) decides which file should process next and launches it.
The application is configured to start up when the machine is booted.