누구든지 파일을 다운로드하지 않고 (웹 페이지를 열지 않고) Visual Basic 6.0의 디렉토리에 저장하는 방법을 알고 있습니까?파일 다운로드 - VB6
답변
코드를 사용하여 (인터넷 전송 제어 없음) 수행하려는 경우 VBNet.mvps.org에는 URLDownloadToFile API 호출을 사용하는 실제 사용법이 좋은 기사가 있습니다. 문서에서
:URLDownloadToFile API는 (부문 Win3, WinNT3.x 제외) 윈도우 운영 체제의 모든 버전에 사용할 수 있습니다. 원격 파일 이름과 로컬 파일 경로 및 이름 인 을 전달하면 지정된 비트의 파일을 다운로드하여 대상 이름으로 저장합니다. 이 기능은 모든 파일 형식 와 함께 작동 - 일반 텍스트, 이미지, HTML, MPG, WAV 및 zip 파일 등 파일의 루틴 또는 우려 수정하지 않고 다운로드되는 을하거나 명백한 크기 제한이 또는 한정.
Private Declare Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" _
(ByVal pCaller As Long, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long) As Long
Private Const ERROR_SUCCESS As Long = 0
Private Const BINDF_GETNEWESTVERSION As Long = &H10
Private Const INTERNET_FLAG_RELOAD As Long = &H80000000
Public Function DownloadFile(sSourceUrl As String, _
sLocalFile As String) As Boolean
//'Download the file. BINDF_GETNEWESTVERSION forces
//'the API to download from the specified source.
//'Passing 0& as dwReserved causes the locally-cached
//'copy to be downloaded, if available. If the API
//'returns ERROR_SUCCESS (0), DownloadFile returns True.
DownloadFile = URLDownloadToFile(0&, _
sSourceUrl, _
sLocalFile, _
BINDF_GETNEWESTVERSION, _
0&) = ERROR_SUCCESS
End Function
참고 - 윈도우 7에서 테스트, 그것은 단지 캐시 된 버전을 반환, 그래서 내가 먼저 지우려면 문서에 언급 된 추가 기능을 사용했다 (그리고 그 일을).
Private Declare Function DeleteUrlCacheEntry Lib "Wininet.dll" _
Alias "DeleteUrlCacheEntryA" _
(ByVal lpszUrlName As String) As Long
그런 다음 캐시를 지우려면 먼저 위의 기능을 대상 URL로 호출하십시오.
** API 호출 **이 필요하지 않습니다. ** 인터넷 전송 제어 **가 필요하지 않습니다. 네이티브 VB6 코드를 사용하면 쉽게 할 수 있습니다. http://visualstudiomagazine.com/articles/2008/03/27/simple-asynchronous-downloads.aspx – MarkJ
+1,이 API 호출을 소개해 주셔서 대단히 감사드립니다. –
나는 당신은 인터넷 전송 컨트롤을 사용하여 샘플에 대한 http://www.vb-helper.com/howto_get_file_from_web.html를 볼 필요가 Internet Transfer Control
을 사용하는 것이 좋습니다 것입니다. 자격 증명을 지정해야하는 경우 http://support.microsoft.com/kb/173264도 확인하십시오.
동기식이기 때문에 인터넷 전송 제어를 좋아하지 않습니다. 다운로드를 시작하면 파일을 다운로드하거나 오류가 발생할 때까지 응용 프로그램이 응답하지 않습니다. 비동기 메서드를 작성하려면 WININET DLL을 사용하는 좋은 예가 많이 있습니다. 사소하지는 않지만 매우 능숙합니다. Here는 stackoverflow의 예제입니다.
** ** VB6에서 비동기 다운로드를 수행하는 것은 간단하며 API 호출이 필요하지 않습니다. 내 대답보기 http://stackoverflow.com/questions/1976152/download-file-vb6/1979417#1979417 – MarkJ
API 호출이 필요하지 않으므로 인터넷 전송 컨트롤이 필요하지 않습니다. 네이티브 VB6 코드를 사용하면 쉽게 할 수 있습니다. 샘플 코드가있는 article by Karl Peterson이 우수합니다.
이 시도 :
이예 :
My.Computer.Network.DownloadFile _
("http://www.cohowinery.com/downloads/WineList.txt", _
"C:\Documents and Settings\All Users\Documents\WineList.txt")
이것은 VB.NET처럼 보입니다. 질문은 VB6에 관한 것입니다. –
이
Sub DownloadFile(url, path)
Dim objReq
Dim objStream
Set objReq = CreateObject("MSXML2.XMLHTTP")
objReq.Open "GET", url, False
objReq.send
If objReq.Status = 200 Then
Set objStream = CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = 1
objStream.Write objReq.ResponseBody
objStream.Position = 0
objStream.SaveToFile path, 2
objStream.Close
Set objStream = Nothing
End If
Set objReq = Nothing
End Sub
을 시도
My.Computer.Network.DownloadFile (*File to download*, *What to save it as*)
당신은 그것을로 저장하기 위해 무엇을 에서 파일 이름을 부여해야
자세한 내용을 참조하십시오 http://smartreferences.blogspot.in
이 답변에 대한 이유는 알 수 없습니다. 그것은 inet 통제없이 진짜로 작동하는 유일한 응답이다. 도와 주셔서 감사합니다. –
- 1. Winsock 다운로드 파일 - vb6
- 2. 파일 검색 - VB6
- 3. VB6 실행 가능 파일
- 4. 파일 다운로드
- 5. 파일 다운로드
- 6. Windows 7에서 VB6 파일 액세스
- 7. 등록 무료 COM : VB6 VB6 DLL을 참조하는 실행 파일
- 8. VBA에서 진행률 측정기가 포함 된 파일 다운로드
- 9. PHP로 파일 다운로드 - 한 번에 하나씩 다운로드!
- 10. 실제 파일 다운로드 또는 파일 다운로드 비율을 어떻게 기록합니까?
- 11. Silverlight 2 - 파일 다운로드 - IE Blocks 파일 다운로드
- 12. 파일 다운로드 및 설정 다운로드 한 파일 이름
- 13. 파일 다운로드 시간 로그
- 14. localhost : 8888/파일 다운로드
- 15. Watin 파일 다운로드 문제
- 16. PHP 파일 다운로드 헤더
- 17. django에서 csv 파일 다운로드
- 18. jquery로 파일 다운로드
- 19. rails link_to_function 파일 다운로드
- 20. 사이트에서 파일 다운로드
- 21. HttpClient로 대용량 파일 다운로드
- 22. AJAX를 사용하여 파일 다운로드
- 23. asp.net의 파일 다운로드 도움말
- 24. Grails 파일 다운로드
- 25. FTPS - 파일 다운로드 알림
- 26. 오이 파일 다운로드 확인
- 27. Silverlight 클라이언트에서 파일 다운로드
- 28. Groovy 파일 다운로드
- 29. 로그인 반대편에서 파일 다운로드
- 30. mozswing 파일 다운로드 가능
** 단지 4 표를 포함하여 81 개 질문 ** ** –
게시물에 서명을 포함 할 필요가 없습니다. 사용자 카드가 자동으로 추가됩니다. 자세한 내용은 [FAQ] (http://stackoverflow.com/faq#signatures)를 참조하십시오. – Artemix