In situations where you have thousands of possible downloads and only a small number of them are expected to be purchased or will be purchased only once (e.g. raw print-quality photos), it is overkill to upload all the files in advance to the FoxyCart servers.
Instead of uploading products in advance, it would be great if downloadable products could be dynamically created during a purchase transaction. If the add-to-cart request has enough information to define the download (name, category, code, price, and download location), then the product will be created either when the product is added to the cart or at checkout. All the other functionality that FoxyCart has currently implemented for downloads would remain the same.
Store owners would (obviously) want to prevent unauthorized downloads from inspecting the download parameter. This parameter could either be encrypted or point to a location accessible only to the FoxyCart servers.