Копирование по сети в Linux
Модератор: Модераторы
Копирование по сети в Linux
Подскажите пожалуйста! Как под Lubuntu 15.04 скопировать файл по сети из общей папки на компьютере под Windows?
Спасибо!
Спасибо!
Уточни тебе надо компонент подсказать для лазаруса или ссылку на samba отправить?)) Честно несовсем понятно, вдруг темой ошибся)
За монтирование каталогов отвечает ОСь. Поэтому нужно послать команду монтирования системе.
bogdan какая конкретная задача у тебя?
bogdan какая конкретная задача у тебя?
ну через функцию CopeFile можно как-то скопировать?
Так ты и не сказал какая у тебя конкретная задача. Значит и не получишь правильный ответ.
Можно.
bogdan писал(а):ну через функцию CopeFile можно как-то скопировать?
Можно.
а как, можно пример в студию? )))
у меня почету-то CopyFile не срабатывает, а на локальной папке все отрабатывает на ура
Код: Выделить всё
lcDirFrom := '//192.168.1.91/VesyFurshet_Import/';
CopyFile(lcDirFrom + '102061.png', 'images/102061.png'); И как тебя называть после этого поста, наверно Вася. Читай мой первый ответ в этой теме, пока тебя не осенит. Ответов по этой теме от меня не жди.
меня интересует способ именно без монтирования диска, с таким же успехом задачу можно реализовать формированием скрипта и вызовом его из программы.
Если это невозможно можно так и сказать, а не Васять здесь
Если это невозможно можно так и сказать, а не Васять здесь
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
bogdan, а если диск предварительно не подмонтирован, то как ты сможешь на него что-то скопировать?
А через имя сетевого файла класса smb://Server_Name/ShareName/FileName не прокатит без монтирования разве не прокатит?
P.S.: С авторизованным доступом там малость сложнее будет строчка, но пока нет на чем попробовать...
P.S.: С авторизованным доступом там малость сложнее будет строчка, но пока нет на чем попробовать...
PapaNT писал(а):А через имя сетевого файла класса smb://Server_Name/ShareName/FileName не прокатит без монтирования разве не прокатит?
P.S.: С авторизованным доступом там малость сложнее будет строчка, но пока нет на чем попробовать...
Прокатит, но только при использовании gvfs, который это скушает позволит вам прочитать каталог или файл. Ну это универсальное решение (таким образом можно вообще все что угодно читать из сетевых шар и т.п., но готового решения я не видел).
Вообще, как правильно сказали выше, проще самому смонтировать (через тот же fuse и просто рассчитать путь до файлов в файловой системе, к примеру тут на Ubuntu 14.04 /run/user/1000/gvfs/ или ~/.gvfs/)
Код: Выделить всё
SysUtils.ExecuteProcess('/usr/bin/gvfs-mount', UTF8ToSys('"smb://ems4/temp6/"'), []);
SysUtils.ExecuteProcess('/usr/bin/gvfs-copy', UTF8ToSys('"smb://ems4/temp6/2015-10-02 09-38-08 Скриншот экрана.png" "2015-10-02 09-38-08 Скриншот экрана.png"'), []);или для CURL >= 7.40
Код: Выделить всё
SysUtils.ExecuteProcess('/usr/bin/curl', UTF8ToSys('"smb://ems4/temp6/2015-10-02 09-38-08 Скриншот экрана.png" -o "2015-10-02 09-38-08 Скриншот экрана.png"'), []);
Добавлено спустя 1 минуту 21 секунду:
http://wiki.freepascal.org/Executing_External_Programs
v-t-l прав. Но так или иначе в системе должны стоять клиентские компоненты самба и тебе надо будет запускать сторонние программы.
