Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.92/76: Рейтинг темы: голосов - 76, средняя оценка - 4.92
105 / 33 / 1
Регистрация: 01.10.2010
Сообщений: 310

Передать файл через локальную сеть или интернет

11.02.2011, 19:59. Показов 17115. Ответов 49
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хотел дописать пост в тему про Winsoc и прочие шпалости=), но потом подумал, что 1 вопрос -1 тема. И так, сам вопрос:как можно передать файл, независимо от его типа(картинка, музыка, архив) через сетку(локальная сеть или интернет)? В предыдущей моей теме мы разобрались как делать чат, а вот как именно передать файл я не понимаю и чую, что здесь как-то не всё так просто.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.02.2011, 19:59
Ответы с готовыми решениями:

Как создать виртуальную локальную сеть через интернет
Нужна какая нибудь информация по этому вопросу! Заранее спасибо!

Не получается раздовать интернет через PPPoE сеть 1 в локальную сеть 2
пытался настроить сетевухи по этой http://ru.d-ws.biz/articles/ics-from-windows-7.shtml инструкции вроде всё получилось только нета нет в...

Интернет через локальную сеть
Ситуация такая: 1) есть ADSL интернет через usb модем. Ип адрес динамический 2) есть локальная сеть Надо: пустить интернет...

49
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
12.02.2011, 23:08
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Памирыч Посмотреть сообщение
ADSL Router D-Link DSL 2500U
Вот тут надо прописывать.
Миниатюры
Передать файл через локальную сеть или интернет  
0
Почетный модератор
 Аватар для Памирыч
23253 / 9167 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
12.02.2011, 23:14

Совсем разные вещи, нет?
0
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
12.02.2011, 23:21
Цитата Сообщение от Памирыч Посмотреть сообщение
Вложение 62746
Совсем разные вещи, нет?
А блин не ту страницу нашел, но у тебя все норм настроено.
0
Почетный модератор
 Аватар для Памирыч
23253 / 9167 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
12.02.2011, 23:27
Имя сервера имеет значение, я так полагаю? А если я собрался на простой комп слать, что ж я буду указывать?
Вот еще код покажу, может, в нем что-то не то:
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim Client As New UNOLibs.Net.ClientClass
        Dim F(0) As String
        Dim ofd As New OpenFileDialog
        If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then
            F(0) = ofd.FileName
            Client.SendFiles("94.51.240.173", "2233", F)
            MsgBox("Ready!", MsgBoxStyle.Information)
        End If
 
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim Server, Server2 As UNOLibs.Net.ServerClass
        'Server = New UNOLibs.Net.ServerClass(2233, True, "E:\")
        Server2 = New UNOLibs.Net.ServerClass(2233, True, "E:\")
    End Sub
0
105 / 33 / 1
Регистрация: 01.10.2010
Сообщений: 310
27.02.2011, 18:27  [ТС]
Простите, что ещё раз поднял тему, но у меня возник ряд вопросов. С отправкой файлов легко разобрался(спс ещё раз Maden). Вешаем на кнопку сенд файл и всё.
Visual Basic
1
2
3
4
5
6
7
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
        Button6.Enabled = False
        Label9.Text = "отправка"
        clnt.SendFiles(ComboBox1.Text, 65533, OpenFileDialog1.FileNames)
        Label9.Text = "отправка завершена"
        Button6.Enabled = True
        Button7.Enabled = F
А вот с приёмом...
Вот код, чуть модернизированный, но в основном made in
_Лёша_.
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Private Sub DoListen()
 
        Dim bytes() As Byte = New [Byte](1024) {}
        Dim listener As New Socket(AddressFamily.InterNetwork, _
        SocketType.Stream, ProtocolType.Tcp)
        Dim remoteEP As New IPEndPoint(ipAddress, 2233)
        listener.Bind(remoteEP)
        listener.Listen(10)
        While True
            Dim handler As Socket = listener.Accept()
            data = Nothing
            While True
                bytes = New Byte(1024) {}
                Dim bytesRec As Integer = handler.Receive(bytes)
                data += Encoding.UTF8.GetString(bytes, 0, bytesRec)
                If data.IndexOf("*") > -1 Then
                    Exit While
                End If
            End While
 
            If TextBox2.InvokeRequired Then
                TextBox2.BeginInvoke(New Threading.ThreadStart(AddressOf DoSomeActions))
            Else
                DoSomeActions()
            End If
            handler.Shutdown(SocketShutdown.Both)
            handler.Close()
        End While
    End Sub
Как я понял именно сюда надо вставлять
VB.NET
1
Server = New UNOLibs.Net.ServerClass(2233, True, "E:\")
А вот куда, в какое место, я в вопросе. Методом тыка перепробовал почти все места кода, но везде прилетает ошибка. Заранее спасибо
0
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
27.02.2011, 19:04
О_о Зачем?

Добавлено через 8 минут
Вот тут ты все найдешь AxWinsock,TcpClient и прочие шплости
0
105 / 33 / 1
Регистрация: 01.10.2010
Сообщений: 310
27.02.2011, 21:18  [ТС]
Моя тупость+невнимательность порождает very big problems. Сожалею, но я ничего не нашёл=( Можно посмотреть копию этого поста-ответа?
0
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
27.02.2011, 21:24
Цитата Сообщение от Provaider Посмотреть сообщение
Моя тупость+невнимательность порождает very big problems. Сожалею, но я ничего не нашёл=( Можно посмотреть копию этого поста-ответа?
эта тема не относится к передаче файлов, в этой и той теме мы рассматривали только обмен сообщениями.
0
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
27.02.2011, 22:22
Не смотрел все приведенные коды, но я не очень понимаю, зачем какие-то библиотеки использовать. Алгоритм передачи файлов довольно прост - сначала открываем файл через объект FileStream. У этого объекта есть метод Read, который считывает все содержимое файла в массив байтов, а затем этот массив байтов передаем через сокеты по нужному адресу. Сокет-приемник через такой же объект FileStream записывает полученные байты в новый созданный уже у себя файл.
0
105 / 33 / 1
Регистрация: 01.10.2010
Сообщений: 310
06.03.2011, 21:46  [ТС]
Опять поднял тему. А как во время передачи файла отображать:общий вес файла, сколько передано. И отображать всё это в прогресс баре?
0
_
2364 / 1243 / 78
Регистрация: 28.10.2009
Сообщений: 4,331
07.03.2011, 12:45
Как я полагаю, это делается примерно так - сначала посылается сообщение с маркером, по которому сервер распознает, что был послан запрос о имени файла и в ответ посылает клиенту длину файла
А по передачи - смотря как ее реализовать - в принципе при получении сообщения оно оказывается в массиве байтов, благодаря этому можно отследить количество полученных данных.
А связать с прогрессбаром - просто при передаче байтов, равных (общее количество байтов/100) выполнять метод PerformStep() при свойстве Step=1
2
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
11.04.2011, 19:39
Вот простейший пример (кусок от моей проги), если еще актульно. Может кому пригодиться. По инету не рекомендую использовать, по локалке работает на ура. Максимальный объем передаваемого файла 45 мб, больше тоже не рекомендую.
Вложения
Тип файла: zip StrKlient.zip (35.8 Кб, 151 просмотров)
1
105 / 33 / 1
Регистрация: 01.10.2010
Сообщений: 310
11.04.2011, 20:51  [ТС]
_Лёша_, в локалке не проверял, но в инете файлы кидает, но не принимает на другом конце. Если запускать exe шник, то ничего вообще не вылазит, а если из вб нета, то пишет "Текущий поток должен быть задан как поток однопоточного контейнера (STA), чтобы вызовы OLE стали возможны. Проверьте, что ваша функция Main помечена атрибутом STAThreadAttribute. Данное исключение создается, только если к процессу подключен отладчик." в строчке
VB.NET
1
If SFD.ShowDialog = Windows.Forms.DialogResult.OK Then
Но всё равно спасибо большое.
0
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
11.04.2011, 21:08
Про исключение, он требут, чтобы сейффайлдиалог находился в основном потоке формы, а не в бэкграунде, куда я его загнал, не обращай внимание, важен сам код. Там сначала передается расширение файла, а затем сам файл, ты можешь уже построить это дело как тебе вздумается, это просто пример. По инет когда доходят файлы, когда нет (нужно чтобы были открыты порты 27015 и 27012 вроде), попробуй сам себе на внешний ip файл кинуть, если ничего не получится - шарь порты.
1
105 / 33 / 1
Регистрация: 01.10.2010
Сообщений: 310
11.04.2011, 21:18  [ТС]
с исключением разобрался. просто запускаю файл из Debbug . Но вот с самой передачей файла... Короче когда отправляю файл себе на ip, то просто ничего не происходит. Вообще ничего.Завтра на работе возьму 2 компа, попробую через локалку. Но с инетом тоже стоит разобраться
p.s у меня windows 7, так что брандбраузер не беспокоит, а порты на модеме я открыл
0
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
11.04.2011, 21:38
на 7 и у меня была проблема сегодня, там сейффайл диалог отказывается работать тупо, почему - хз. А сам код передачи рабочий 100%, контролы уж сам сделай. НУ если уж совсем не понимаешь, напиши разжую.
0
105 / 33 / 1
Регистрация: 01.10.2010
Сообщений: 310
11.04.2011, 21:40  [ТС]
Напиши плиз, если не сложно, буду очень благодарен. В любом случае-программист, написавший код понимает его лучше, чем даже компьютер, который его выполняет. А уж куда мне, смертному, до Компьютера=((()))
0
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
12.04.2011, 14:49
Цитата Сообщение от Provaider Посмотреть сообщение
Напиши плиз, если не сложно, буду очень благодарен. В любом случае-программист, написавший код понимает его лучше, чем даже компьютер, который его выполняет. А уж куда мне, смертному, до Компьютера=((()))
Все пояснения внутри.
Вложения
Тип файла: zip StrKlient.zip (38.7 Кб, 79 просмотров)
1
105 / 33 / 1
Регистрация: 01.10.2010
Сообщений: 310
12.04.2011, 19:33  [ТС]
Подправил чуть-чуть. Всё прекрасно работает. Спасибо большое. Вот исправленный вариант(ремарки не трогал). У меня заработало, если отправлять файл сам себе на внешний ip. Потом проверю через инет и локалку
Вложения
Тип файла: rar sendfile.rar (136.6 Кб, 206 просмотров)
0
 Аватар для _Лёша_
388 / 377 / 22
Регистрация: 08.02.2011
Сообщений: 1,078
12.04.2011, 20:42
Цитата Сообщение от Provaider Посмотреть сообщение
Подправил чуть-чуть. Всё прекрасно работает. Спасибо большое. Вот исправленный вариант(ремарки не трогал). У меня заработало, если отправлять файл сам себе на внешний ip. Потом проверю через инет и локалку
Такую прогу испортил! то же был шедевр, а название то какое!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.04.2011, 20:42

Интернет через локальную сеть
Здравствуйте. Есть настольный компьютер с ОС Windows 7 сетевая карта VIA Rhine II Compatible Fast Ethernet адаптер подключен к...

Доступ в интернет через локальную сеть
Доброго времени суток! Перечитал у вас на форуме кучу тем по этому поводу, но всеравно возникают трудности. Делаю все по мануалам, шаг за...

Интернет через локальную сеть и раздача по WI-FI
Доброго времени суток, нужна помощь! Есть локальная есть, через нее раздают интернет, кто не знаю. Есть роутер АСУС Есть ноут с...

Мобильный интернет через локальную сеть
Доброго вечера суток, очень долго пытаюсь подключить себе интернет на ноутбук, через локалку, но не могу. Хотел поинтересоваться, можно...

Интернет на двоих через локальную сеть
Привет Народ! Помогите в таком деле. Я с другом подключены к городской локальной сети. У него безлимитный интернет через эту сеть. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru