|
DJ_DiX35
|
|
Копирование файлов на удаленный адрес15.04.2013, 08:52. Показов 9585. Ответов 3
Метки нет (Все метки)
Искал данный вопрос по форуму, но так и не нашел ответа.
Задача: С компьютера [A], на котором запущена программа, при нажатии на кнопку скопировать все файлы, находящиеся (к примеру) в папке C:\Upload на аналогичную папку (при необходимости - создать) компьютера [B], находящегося по адресу (к примеру) \\192.168.192.16 Ранее для этого писал батник использующий нет юз для подключения сетевого адреса как диска и копирования файлов командой икскопи, но хочется привести все к человеческому виду и в оболочке WinForms. Сразу говорю что раньше с сетью в C# не работал вообще. А с файлами - только в плане создания|чтения|записи текстовых файлов и все) Буду премного благодарен за любую посильную помощь. П.С. И еще - есть ли какая-либо возможность организовать прогрессбар для того чтобы видеть насколько скопировался файл(ы)? |
|
| 15.04.2013, 08:52 | |
|
Ответы с готовыми решениями:
3
Простейший удаленный менеджер (дистанционное удаление, копирование и переименование файлов) Копирование файлов на удаленный сервер по ssh Получить удаленный ip адрес клиента |
|
179 / 48 / 6
Регистрация: 23.06.2011
Сообщений: 248
|
||||||
| 15.04.2013, 14:05 | ||||||
|
Работа с файлами на удаленной машине ничем не отличается от работы с локальными, только в адресе файла пишешь путь сетевой.
Для подключения сетевой шары есть небольшой код, состоящий из API вызовов. Тут голову ломать не надо, просто подключаешь его и юзаешь 2 метода в конце: MapShare и DeleteShare. Довольно распространенная штука в сети, но сейчас искать некогда. Код не мой, в свое время нашел на codeproject. Есть еще готовые решения в пару строчек, но мне это больше нравится - можно прикрутить то, что хочешь.
Добавлено через 12 минут Еще пара моментов: от net use ты никуда не денешься, т.е. метод подключения в итоге этот же будет использоваться. То есть, если после установки соединения в консоли ввести net use - то ты увидишь свое подключение.Соответственно, если у тебя на момент запуска программы уже установлено соединение, то использование MapShare вообще не нужно, работаешь с удаленными файлами так же, как и с локальными, только другой путь пишешь. Но если при установленном соединении еще раз подключиться - ничего страшного не будет. Если после работы программы необходимо разорвать связь - юзай DeleteShare, иначе пользователь, под которым программа выполнялась, сможет без ввода логина-пароля подключиться к этой шаре. И еще, если мне не изменяет память, этот же метод исползуется при подключении service controller на удаленной машине для управления службами (естественно, логин должны иметь права администратора). Конечно, там еще код есть, но и этот тоже нужен.
1
|
||||||
|
DJ_DiX35
|
|
| 15.04.2013, 15:32 | |
|
smth, спасибо, буду пытаться разобраться)
Благодаря тебе хотя бы знаю в каком направлении двигатся)) И да, у нас тут все компы с паролями, так что наличие параметров юзер и пассворд даже в плюс) Если вдруг у кого еще какие варианты решения моего вопроса есть - пишем, не стесняемся. Я на 100% уверен что и другим людям данная информация пригодится. И вопрос по поводу прогрессбара копирования остается на повестке. ^_^ Добавлено через 1 час 1 минуту Нашел где ты в свое время это находил: http://www.codeproject.com/Art... ve-using-C Но даже это не помогло мне полностью разобраться. какую именно команду нужно вызывать по нажатию на кнопку подключения? WNetAddConnection2? И если да то что там за параметры "NETRESOURCE lpNetResource" и "int dwFlags"? П.С. Хреново, когда плохо разбираешься в чужом коде.. =\ |
|
|
179 / 48 / 6
Регистрация: 23.06.2011
Сообщений: 248
|
||
| 15.04.2013, 16:58 | ||
|
Перечитай еще раз пост )
Во вложении проект, в котором эта штука используется, он как раз копирует файлы из одного места в другое. Он умеет копировать из локальной папки в сетевую и все. Но большего от него и не требовалось.
0
|
||
| 15.04.2013, 16:58 | |
|
Помогаю со студенческими работами здесь
4
Вычислить адрес верхушки стека, адрес следующей команды, адрес переменной, адрес которой содержится в BX
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|