I use URLDownloadToFile to download a file in Delphi. In the url there is not the real name of the file. Is it possible to specify just the path of the file, keeping the default name that i.e. Explorer show?
1
There are 1 answers
Related Questions in DELPHI
- How can I read the header of request to webserver
- Receiving Notifications for Individual Task Completion OmniThreadLibrary Parallel.ForEach
- Delphi - How to get result of function from QuickReport without viewing a report?
- Out of memory while adding documents to a Firebird BLOB field with Delphi
- How to MakeScreenshot fullpage on Delphi
- How to program a COM object with an IEnumerator, IEnumerable interface inside
- How to Dynamically Add Controls to Delphi Form
- How to write a string in Stringrid with DelimitedText in FMX Delphi 11
- TGrid/TStringGrid multi cell selection / multi editing in delphi firemonkey (12)
- How to localize "Today" in the Delphi TMonthCalendar?
- How can I call a SOAP webserver method in Vue.js?
- Efficiently Handling Large Number of API Calls with Delphi 10.4 and OmniThreadLibrary
- Delphi can not compile the unit create by its "XML Data Binding Wizard"
- Save Form Properties in File and then restore those Properties after reopening
- Is it possible to open a blob without saving it to file
Related Questions in URLMON
- how to use urlmon.h DownloadProgressCallback in C language, not c++
- Download a sharepoint file using urlmon.DLL download file
- "urlmon.h" doesn't exist. Cannot find any solutions other than some posts from 2004
- Urlmon header in visual studio code?
- EXCEL VBA (URLDownloadToFile) Not working Due to Site not allowing IE11
- Excel VBA URLDownloadToFile Does Not Retrieve Full File (Sharepoint API)
- Call to UrlMkGetSessionOption for URLMON_OPTION_USERAGENT always returns E_OUTOFMEMORY
- syntax error: 'constant' for a windows sdk file
- FindMimeFromData function giving incorrect result in some machine
- How to fix "Run-Time Check Failure #0" error when trying to download a file with urlmon.dll?
- Webquery is persisting/caching http auth failures albeit URL changes
- URLDownloadToFile fails with 0x800c0008 (INET_E_DOWNLOAD_FAILURE) depending on length of URL
- Using urlmon API Function to download data from Quandl.com to access database, using VBA
- Download to current directory
- Application pool crashes with URLMoniker urlmon.dll during MIME type checking
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
You are in a catch-22 situation. You need to give
URLDownloadToFile()a filename, but you have to request the URL first to discover if it has its own filename.You have two choices:
Send a separate
HEADrequest to the URL first and check theContent-Dispositionresponse header, if present. You can useHttpSendRequest()andHttpQueryInfo()for that, or any other HTTP library. You can then format a filename as needed, and then download the URL to that filename.Use a temp filename for the download, then check the
Content-Dispositionresponse header, if present, and rename the file if needed. To get the response headers fromURLDownloadToFile()you have to write a class that implements theIBindStatusCallbackandIHttpNegotiateCOM interfaces, then pass an instance of that class to thelpfnCBparameter. The response headers will be passed to yourIHttpNegotiate.OnResponse()implementation.