HTTP 웹 서버에 위치한 파일의 크기를 구하는 방법의 열쇠는 바로 HEAD 라는 HTTP 메서드에 있습니다.
HEAD 메서드는 헤더 (Header) 만 주고 받는 메서드로, 파일까지 받아오는 GET / POST 메서드와는 차이가 있습니다.
HttpWebRequest 의 Method 속성을 HEAD 로 지정하게 되면 해당 HTTP Method 를 사용할 수 있고, 그러한 방법을 이용하면 다음과 같이 손쉽게 특정 URL 에 위치한 파일의 크기를 알아올 수 있습니다.

함수 :
Public Function GetDownloadSize(ByVal URL As String) As Long
Dim r As Net.WebRequest = Net.WebRequest.Create(URL)
r.Method = Net.WebRequestMethods.Http.Head
Using rsp = r.GetResponse()
Return rsp.ContentLength
End Using
End Function
사용법 :
MessageBox.Show("업데이트 파일 용량 :" & " " & Math.Round(GetDownloadSize(srcv(1)) / 1024 / 1024, 2) & " " & "MB")
아래의 내용들을 추가로 공부하시면 내용 이해에 도움이 될 수 있습니다.
1. System.Net.HttpRequest (Microsoft MSDN) : http://msdn.microsoft.com/ko-kr/library/system.net.httpwebrequest.aspx
(ASP.NET 에서 지원하는 System.Web.HttpRequest 와는 다른 클래스이므로 혼동하시지 않도록 주의하세요.)
2. HTTP Head Method (HTTP RFC2616 Standard Definition) : http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html
고맙습니다.
