Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как закачать файл на сервер по HTTP? vb6 
:(
    Опции темы
KDenisK
Дата 28.2.2008, 01:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 30.12.2005

Репутация: нет
Всего: нет



Как закачать файл на сервер по HTTP?
PM MAIL   Вверх
bom
Дата 29.2.2008, 01:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.2.2004
Где: Казахстан, Алматы

Репутация: 4
Всего: 6



Код

'Internet productivity tools by Klemens Schmid
'Copyright 2001, Klemens Schmid
'Email:     [email protected]
'Homepage:  www.schmidks.de

'This program uploads a text file to an ASP file on the Internet
'using the IE WebBrowser control.

Option Explicit

Private Sub cmdUpload_Click()
Dim aPostData() As Byte
Dim vPostData As Variant
Dim vUrl As Variant
Dim vHeaders As Variant
Dim strText As String
Dim strContentHeader As String
Dim strBody As String
Dim nFile As Integer

'check extension and assign content type
If LCase(Right$(txtFile.Text, 4)) <> ".txt" Then
   If MsgBox("This program doesn't work for binary files because of a bug in IE (see Q280509)." & vbCrLf & "Do you want to continue?", vbExclamation + vbYesNo) <> vbYes Then
      Exit Sub
   End If
End If
strContentHeader = "Content-Type: text/plain" & vbCrLf
'read the whole file
nFile = FreeFile
Open txtFile.Text For Binary As #nFile
strText = String(LOF(nFile), " ")
Get #nFile, , strText
Close #nFile
'http header
vHeaders = "Content-Type: multipart/form-data, boundary=AaB03x" & vbCrLf
'assemble the body. send one field and one file
strBody = _
   "--AaB03x" & vbCrLf & _
   "Content-Disposition: attachment; name=""FILE1""; filename=""" & txtFile.Text & """" & vbCrLf & _
   strContentHeader & vbCrLf & _
   strText & vbCrLf & _
   "--AaB03x--"
'must convert to byte array
aPostData = StrConv(strBody, vbFromUnicode)
vPostData = aPostData
'post to...
!!! adapt the URL in the following line to where your upload.asp is
vUrl = "http://localhost/upload.asp"
'Do it!
WebBrowser1.Navigate vUrl, 0, "", vPostData, vHeaders
End Sub

Код


<!--
upload.asp script saves the received file to the directory
/upload under the Web's root. It makes use of a COM
component aspSmartUpload from www.aspsmart.com.
-->

<HTML> <BODY>  

<H1>File Upload via HTTP</H1> 
<HR>  

<% 

'Variables 
Dim mySmartUpload    
Dim intCount          

'Object creation 
Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")  

'Upload 
mySmartUpload.Upload  

'Save the files with their original names in a virtual path of the web server 
intCount = mySmartUpload.Save("/upload")    

'sample with a physical path     
'intCount = mySmartUpload.Save("c:\inetpub\wwwroot\upload")  

'Display the number of files uploaded 
Response.Write(intCount & " file(s) uploaded.") 
%> 

</BODY> </HTML> 

PM MAIL   Вверх
iff
Дата 5.3.2008, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 949
Регистрация: 23.3.2007

Репутация: -1
Всего: 16



Всё просто!
1. Подключаем Internet Transfer.
2. В свойстве RemeteHost указываем имя сервера, на пример www.narod.ru, в свойстве Protocol 4-icHTTP, в свойстве Password указываем пароль, на пример 1234, а в свойстве UserName имя юзера, на пример tralala, если ваш сайт имеет адрес http://www.tralala.narod.ru. Если ваша программа будет менять эти параметры в процессе своей работы, то лучше установить их программно.
3. С помощью такого кода можно отослать файл C:\fail.exe на http://www.tralala.narod.ru/papka/drugoj_fail.exe:
Код

Inet1.Execute Inet1.URL, "put c:\fail.exe /papka/drugoj_fail.exe" 'Передаём
Do While Inet1.StillExecuting 'Ждём, пока передаст
DoEvents
Loop


Это сообщение отредактировал(а) iff - 7.3.2008, 18:34


--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
bom
Дата 6.3.2008, 03:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.2.2004
Где: Казахстан, Алматы

Репутация: 4
Всего: 6



PM MAIL   Вверх
Akina
Дата 6.3.2008, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(KDenisK @  28.2.2008,  02:30 Найти цитируемый пост)
Как закачать файл на сервер по HTTP? 

Если на стороне сервера есть скрипт, который примет файл - то просто энкодишь файл и отправляешь его в составе адреса. Хочешь, GET-ом, хочешь, PUT-ом. А если нет - то никак. Протокол HTTP в принципе не имеет такой возможности - передача файла - без поддержки на стороне сервера.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
iff
Дата 7.3.2008, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 949
Регистрация: 23.3.2007

Репутация: -1
Всего: 16



Строанно, мой код не работает.
Не знаю зачем по HTTP отсылать, когда можно FTP.


--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.1269 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.